REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET
POPULAIRE
MINISTERE DE LA FORMATION ET DE L'ENSEIGNEMENT
PROFESSIONNELLE INSTITUE NATIONAL SPECIALISE DE LA FORMATION PROFESSIONNELLE EX
: ITEEM DE BEAULIAEU
MEMOIRE DE FIN D'ETUDE
POUR L'OBTENTION D'UN DIPLOME
DE TECHNICIEN SUPERIEUR EN INFORMATIQUE
Option: Réseaux et
Systèmes Informatique
Réalisé par : BOUMAZA
Mustapha
Promotrice: Melle
MECHERNENE Karima Encadreur: Mr BOUNAAMA
2015 / 2016
J'ai été honoré d'avoir effectué
ce stage au sein du INSFP ITEEM Beau lieu et du AIR ALGERIE.
Je tiens à remercier mon encadreur de stages, Mr BOU
NAAMA DJILALI qui m'a accompagné durant mon stage pratique.
Je remercie particulièrement Mlle MECHERNENE Karima et
Mr TAOUI AMINE, qui ont bien voulu me transmettre pendant mon stage pratique
leur compétence et leur savoir-faire.
Enfin, je tiens à exprimer ma reconnaissance à
tout le personnel de ces deux institutions, pour m'avoir accueilli durant ma
formation.
Merci au bon dieu le tout puissant de nous avoir
donné le courage de terminer ce modeste travail que je dédie en
exprimant ma gratitude et mon amour à mes chers parents pour leurs
soutient moral et matériel.
Que dieu leurs donne une longue vie et un parfait
état de santé.
A mes chers frères et soeurs.
A mon très cher ami et frère Abdeslam
Hocine. A mes collègues de la DTDS
A mes oncles, mes tantes mes cousins, mes cousines. A mes
collègues de la section « réseaux et systèmes
informatique ».
A tous ceux qui m'aiment, me connaissent de
près et de loin.
Sommaire
Introduction générale 1
CHAPITRE I :Présentation de l'organisme
d'accueil
Introduction 4
1. Présentation de la compagnie Air Algérie 4
2. Historique de la compagnie Air Algérie 5
3. L'organigramme général de la compagnie Air
Algérie 6
4. Les Activités de la compagnie Air Algérie 7
5. Les objectifs de la compagnie Air Algérie 7
6. Présentation de la direction du système
d'information(DSI) 8
7. Organigramme De la Direction de system de l'information 9
Conclusion 10
CHAPITRE II : Généralités sur la
VoIP
Introduction 12
1. Brève historique 12
2. Le réseau téléphonique
commuté 13
3. Définitions 14
3.1. Internet protocol ( ip ) 14
3.2. VoIP (Voice over IP) 15
4. Les différents éléments pouvant
composer un réseau 16
4.1. PABX 16
4.2. Le serveur de communications 16
4.3. La passerelle (Gateway) 17
4.4. Le routeur 17
4.5. Un commutateur réseau (switch) 18
4.6. Le Gatekeeper 18
4.7. L'IP-Phone 18
4.8. Softphone 19
5. Principe de transformation de la voix en IP 19
6. Protocoles 21
6.1. RTP (Real-time Transfer Protocol) 21
6.2. RTCP (Real-time Transfer Control Protocol) 22
6.3. ICMP (Internet Control Message Protocol) 22
6.4. UDP (User Datagram Protocol) 22
6.5. Protocol de signalisation 22
6.5.1. H.323 24
6.5.2. SIP (Session Initiation Protocol) 26
6.5.3. IAX (Inter Asterisk eXchange) 29
7. Les Codecs 30
8. Les modes d'accès 32
8.1. La voix sur IP entre deux ordinateurs 32
8.2. La voix sur IP entre un PC et un
téléphone 32
8.3. La voix sur IP entre deux téléphones 33
9. Points forts et limites de la voix sur IP 33
9.1. Les Points forts 33
9.2. Les points faibles de la voix sur IP 34
Conclusion 35
CHAPITRE III : Implémentation d'un serveur
Asterisk
1. Présentation Asterisk 37
1.1. Définition 37
1.2. Rôle 37
1.3. Caractéristiques 38
2. Architecture interne d'Asterisk 38
3. Principales fonctions 39
4. Les APIs (Application Programming Interface) 40
5. Architecture du réseau 41
6. Installation du système 41
7. Configuration d'Asterisk 48
8. Configuration de X-Lite 49
9. Fonctionnalités 52
9.1 Appel 52
9.2 Mise en place des boîtes vocales 54
9.3 Création d'un mot de passe crypté 55
9.4 Surveiller son système en lisant les logs
57
9.5 Archivage 58
9.6 Solution CDR (CALL Detail Record) dans Asterisk 58
Conclusion 60
Conclusion générale 61
Références Glossaire
Liste des figures
Figure I.1 : L'organigramme
général de la compagnie 6
Figure I.2 : Organigramme de la Direction
Systèmes Information (D-S-I) 9
Figure II.1 : Les types des câbles
réseaux 13
Figure II.2 : les faisceaux hertziens 14
Figure II.3 : Modèle OSI (Open
SystemsInterconnection) & du modèle TCP/IP 14
Figure II.4 : Equipements utilisés
pour VoIP 15
Figure II.5 : Standard
Téléphonique IPBX 16
Figure II.6 : serveur de communication 17
Figure II.7 : La passerelle 17
Figure II.8 : routeur cisco 17
Figure II.9 : switch 18
Figure II.10 : Gatekeeper 18
Figure II.11 :IP phone 18
Figure II.12 : softphone 19
Figure II.13 : Processus de la VoixIP 20
Figure II.14 : Protocole RTP dans le
modèle OSI. 22
Figure II.15 : Architecture client 11.323
25
Figure II.16 :L'encapsulation du protocole
SIP en comparaison avec 11.323. 26
Figure II.17 : Procédure
d'établissement de session SIP 28
Figure II.18 : Role de protocole IAX 29
Figure II.19 : Différents codecs dans
le modèle OSI 31
Figure II.20 : Voix sur IP entre deux
ordinateurs 32
Figure II.21: Pc to phone. 33
Figure II.22: Phone to phone 33
Figure III.1 : architecture du réseau
Voip avec un serveur Asterisk 37
Figure III.2: architecture interne d'Asterisk
39
FigureIII.3 : Architecture du réseau
41
Figure III.4 : Fenêtre du softphone
X-lite 50
Figure III.5 : Configuration du compte du
client « 6002 » 51
Figure III.6 : softphone connexion disponible
52
Figure III.7 : Simulation d'un appel 53
Figure III.8 : fichiers de log 57
Figure III.9 : Format du fichier Master.csv
du CDR 59
1
Introduction :
Introduction générale
La voix sur IP (VoIP, Voice over IP) est une technologie de
communication vocale en pleine émergence. Elle fait partie d'un tournant
dans le monde de la communication.
En effet, la convergence du triple play (voix, données
et vidéo) fait partie des enjeux principaux des acteurs de la
télécommunication aujourd'hui
Au lieu de disposer à la fois d'un réseau
informatique et d'un réseau téléphonique commuté
(RTC), l'entreprise peut donc, grâce à la VoIP, tout fusionner sur
un
même réseau. Comme toute innovation
technologique, la VoIP non seulement simplifie l'exploitation des
réseaux mais aussi économise de l'argent à ces clients
Les entreprises dépensent énormément en
communications téléphoniques, or le prix des communications de la
ToIP (Téléphonie sur IP) est dérisoire en comparaison. En
particulier, plus les interlocuteurs sont éloignés, plus la
différence de prix est intéressante. De plus, la
téléphonie sur IP utilise jusqu'à dix fois moins de bande
passante que la téléphonie traditionnelle. Il semblerait que les
entreprises après avoir émis un certain nombre de doutes sur la
qualité de services soient désormais convaincues de la plus
grande maturité technologique des solutions VOIP proposées sur le
marché.
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 l'internet garde sa configuration
actuelle où elle est essentiellement dimensionnée en fonction
d'une qualité de service moyenne pour la transmission des
données. Cependant, cette nouvelle technologie constitue une solution
idéale pour le cas d'interconnexion de PBX d'entreprises. En effet, les
entreprises multi-sites cherchent à économiser des
dépenses énormes dues aux communications intersites. Il serait
donc envisageable de profiter de cette nouvelle technologie émergente
afin d'assurer cette interconnexion.
Dans ce contexte, la compagnie « AIR ALGERIE » a
ressenti dernièrement le besoin de profiter de cette technologie de
VoIP. En effet, leur cahier de charge exige une interconnexion via le protocole
SIP pour tenir compte des spécificités des PBX en question.
Désormais, il est nécessaire d'implémenter un serveur SIP.
Une étude des besoins élaborés montre que le logiciel
libre « Astérisk », est le meilleur à assurer ce
rôle du serveur SIP.
Ce mémoire se compose de trois chapitres :
Le premier chapitre introduit la présentation de
l'organisme d'accueil.
2
Introduction :
Le deuxième chapitre s'intéresse à la
voix sur IP et ces éléments, décrit et explique son
architecture et ces protocoles, ainsi énumère les majeurs points
forts de cette technologie ainsi que ses faiblesses.
Le dernier chapitre, s'intéresse à la mise en
place d'une solution de VoIP pour les entreprises basée sur le serveur
Asterisk et le client softphone X-Lite.
CHAPITRE I
Présentation de l'organisme
d'accueil
4
Chapitre I: Présentation de l'organisme
d'accueil
Introduction :
Après chaque formation théorique, il est
indispensable de la compléter par un stage
pratique au sein d'un organisme, et un mémoire de fin
d'étude résumant les étapes les plus importantes de ce
stage. La première étape de ce rapport consiste à
présenter l'organisme où la formation pratique se
déroulera. A cet effet, ce premier chapitre va comporter les points
suivants :
· Présentation générale de la
compagnie.
· L'historique de la compagnie.
· L'organigramme général de la compagnie.
· Les activités et les objectifs de là
compagnie.
· Présentation de la direction du système
d'information(DSI)
· Organigramme de la Direction Systèmes Information
(D-S-I)
1. Présentation de la compagnie Air
Algérie:
Air Algérie est une société par actions,
par abréviation S.P.A, dont le capital est de 43.000.000.000,00 DA. La
Compagnie dispose aujourd'hui, d'un certain nombre d'atouts forts pour
améliorer sa compétitivité sur le marché face
à la concurrence, assurer sa rentabilité et préserver sa
santé financière. Le processus de développement d'Air
Algérie est en constante évolution. Après avoir
réalisé la nouvelle base de maintenance et modernisé sa
flotte, elle a entamé la modernisation de ses outils de gestion et
systèmes d'information ainsi que la mise aux normes de ses
activités, lui permettant de faire face aux défis du
marché, sans cesse présents. Le groupe Air Algérie
comprendrait notamment des filiales spécialisées dans les
activités suivantes:
· La Compagnie Régionale.
· Le cargo.
· Le Cat ring.
· La Maintenance.
· Handling.
· Tour opérateur
La flotte d'Air Algérie compte 43 appareils d'un
âge moyen passant de 17 ans en 2003 à seulement 7 ans en fin 2010.
La flotte passage est une des flottes les plus jeunes du secteur.
5
Chapitre I: Présentation de l'organisme
d'accueil
2. Historique de la compagnie Air Algérie :
Air Algérie est la compagnie aérienne nationale
algérienne .crée en juin 1953. Elle trouve son origine en 1947,
quand fut constituée la C.G.T. (Compagnie
Générale de Transport) avec un réseau principalement
orienté vers la France.
1962 : Recouvrement de l'indépendance de
l'Algérie.
1963 : L'État prend 51% du capital d'Air
Algérie.
1970 : L'État porte sa participation au
capital d'Air Algérie à 83%.
1973 : L'État décide
d'intégrer à Air Algérie la Société de
Travail Aérien (S.T.A.).
1974 : L'État porte sa participation
à 100% en rachetant les 17% encore détenus par Air
France.
1984 : Les deux entités citées
ci-dessus sont à nouveau fusionnées en une seule entreprise
à laquelle revient la charge de la gestion des aérogares.
1987 : Air Algérie est
déchargée de la gestion aérogares.
1997 : Air Algérie devient une
société par actions avec un capital de 2,5 milliards DA.
1998 : Libéralisation du transport
aérien.
2000 : Le capital d'Air Algérie est
porté à 6 milliards de dinars.
2001 : Le capital d'Air Algérie est
porté à 14 milliards de dinars.
26 Mars 2005 : Le capital d'Air Algérie
est porté à 26 milliards de dinars.
30 Septembre 2005 : Le capital d'Air
Algérie est porté à 29 milliards de dinars.
2006 : Le capital d'Air Algérie est
porté à 37 milliards de dinars.
2007 : Le capital d'Air Algérie est
porté à 43 milliards de dinars.
2009 : Ouverture en février de la
ligne ALG-PEK-ALG; renforcement des fréquences sur les vols
internationaux ; renforcement des navettes ATR entre Alger et les grandes
villes (Annaba, Oran et Constantine); ouverture de nouvelles lignes en ATR dans
le cadre du désenclavement des hauts plateaux et des régions du
sud.
2010 : Renforcement de notre flotte avec
l'acquisition de 4 ATR et 3 BOEING 737 800 et réorganisation de la
compagnie.
2011 : pour suite de rajeunissement de la
flotte avec l'acquisition de quatre Boeing 737-800
Chapitre I: Présentation de l'organisme
d'accueil
3. Organigramme général de la compagnie
Air Algérie:
Direction Générale
Organes en staff (Assistants DG)
Secrétariat Général
Inspection Générale
Division Commerciale
Direction Technique
Direction projet B.M.
Direction Logistique
Direction des Opérations
aériennes
Direction de Transport
Direction catering
Direction Fret
Direction des Ressources Humaines
Direction Financière
Direction juridique
Direction Informatique
Direction planification et contrôle de
gestion
Direction DTA
Figure I.1: L'organigramme général
de la compagnie Air Algérie
Direction des Ouvres sociales
7
Chapitre I: Présentation de l'organisme
d'accueil
4. Les Activités de la compagnie Air
Algérie :
· La Compagnie transporte annuellement prés de
3,54 millions de passagers sur ses lignes régulières, et
près de 20 000 tonnes de fret sont transportés chaque
année par la compagnie.
· Des charters pétroliers avec environ 500 000
passagers par an.
· Des charters Oumra et Hajj qui transportent les
pèlerins vers les lieux saints de l'Islam.
· Un centre ou commissariat hôtelier (catering)
qui permet à Air Algérie de couvrir ses besoins au départ
d'Algérie, ainsi que l'assistance des autres compagnies
· Le réseau international - quarante-cinq villes
des servies dans trente pays en Europe, Moyen-Orient, Maghreb, Afrique et
Amérique (Canada) est adossé à un réseau domestique
reliant 31 villes. Air Algérie a produit près de 5 milliards de
sièges-kilomètres offerts (SKO) et a réalisé 3,3
milliards de passagers-kilomètres transportés (PKT) Le groupe
possède 150 agences réparties en Algérie et à
l'international. La compagnie s'adresse aux longs courriers: Une ligne
Alger-Montréal est en service depuis le 15 juin 2007. À partir de
février 2009, Elle relie Alger à Pékin à bord d'un
Airbus A330-200.
5. Les objectifs de la compagnie Air Algérie :
· Une meilleure gestion de l'entreprise afin de fournir
aux gestionnaires des informations fiables dans les meilleurs délais.
· Une amélioration de la qualité des
services offerts à sa clientèles et ceci en :
+ Gérant le personnel et l'élaboration du
budget.
+ Assurant la formation du personnel.
+ Représentant l'entreprise au sein des marchés.
+ Satisfaire de manière ponctuelle et
régulière de la demande de la clientèle,
améliorer l'image de marque de la compagnie
+ Améliorer la qualité de service notamment en
matière d'en matière de sécurité,
hygiène et confort.
+ Augmenter parts de marchés concurrentiels
internationaux.
8
Chapitre I: Présentation de l'organisme
d'accueil
6. Présentation de la direction du
système d'information(DSI) :
La Direction du système d'information (DSI) a
succédé à la direction de
l'informatique et des télécoms (DIT) en 2012.
Désormais, elle intervient davantage dans la
définition de la politique du système
d'information de l'entreprise.
Ses missions sont :
+ Conseiller la direction de l'université sur la
stratégie en matière de système
d'information, notamment à travers le Comité
stratégique du système d'information
(COSSI), instance principale de gouvernance du système
d'information.
+ Etre moteur dans l'élaboration du schéma
directeur du système d'information (SDSI)
et dans sa révision au fil des années.
+ Assister la direction et les services de l'université
dans la définition de leurs besoins et
dans la conduite des projets (fonction d'assistance à
maîtrise d'ouvrage = AMO).
+ Conduire la mise en oeuvre des applications informatiques
résultant des projets
(fonction de maîtrise d'oeuvre = MOE).
+ Maintenir en condition opérationnelle l'ensemble du
système d'information:
infrastructures, applications, postes de travail.
+ Adapter en permanence son offre de services aux besoins
exprimés par les différentes
catégories d'usagers : étudiants (futurs, actuels,
anciens), enseignants et chercheurs.
+ Mettre tous les moyens en oeuvre pour garantir la
Sécurité du système d'information
(SSI).
A ce titre, la D.S.I. a en charge :
+ Les infrastructures systèmes et réseaux
+ Réseaux : moyens de communication au sein de
l'établissement ainsi que vers les
réseaux régionaux, nationaux et internationaux,
+ Systèmes : serveurs et services associés
placés explicitement sous sa responsabilité.
+ L'expertise sur les systèmes, les réseaux, les
serveurs, les logiciels,
+ L'assistance technique informatique liée aux
activités d'enseignement, de recherche,
de gestion et de documentation de l'université,
+ Le conseil dans l'élaboration de la politique d'achat
des matériels et logiciels,
+ Le développement d'outils ou l'intégration de
briques applicatives dans le respect du
système d'information,
+ La participation à la préparation du contrat
d'établissement en ce qui concerne les
moyens informatiques.
9
Chapitre I: Présentation de l'organisme
d'accueil
7. Organigramme De la Direction de system de
l'information :
Direction système d'information
Département Administrateur et de Gestion
Economique
Sous-Direction
|
|
Sous-Direction
|
|
Sous-Direction
|
|
Sous-Direction
|
d'Etude et de
|
|
Centre de Calcul
|
|
Système Passagers
|
|
Maintenance et
|
Développement
|
|
|
|
|
|
Télécommunication
|
|
|
|
|
|
|
|
Département
|
|
|
|
Système
|
|
mini-micro
|
|
Application de
|
|
D'étude et de
|
Administration
|
|
|
|
Réservation
|
|
Méthode
|
Des Finances
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Département
|
|
|
|
Planification Des
|
|
Maintenance
|
|
Systèmes
|
|
Exploitation et
|
Données
|
|
Système
|
|
Réseaux
|
|
Télécommunicatio
n
|
|
|
|
|
|
|
|
|
Département
|
|
|
|
Système
|
|
Production
|
|
de Données
|
|
|
Technique
|
|
Temps Réel
|
|
|
|
Maintenance
|
Opérât
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Département
|
|
|
|
Informatique
|
|
Production
|
|
Enregistrement
|
|
DEB
|
Répartie
|
|
Batch
|
|
Automatique
|
|
|
|
Figure I.2: Organigramme de la Direction
Systèmes Information (D-S-I) onclusion
10
Chapitre I: Présentation de l'organisme
d'accueil
Conclusion :
Forte de sa longue expérience et résolument
tournée vers la modernité, AIR ALGERIE se veut être une
compagnie aérienne moderne et efficace, jouissant d'une position
concurrentielle solide et donnante dans la stratégie de
développement de la Compagnie, une place primordiale à la
satisfaction de la clientèle.
CHAPITRE II
12
Chapitre II: Généralités
sur la VoIP
Introduction :
La voix sur IP (Internet Protocol) est un sujet vaste et
très riche. Pour commencer il convient de définir les concepts
cachés derrière le terme générique « VoIP
» (Voice Over IP).
La "VoIP" ou littéralement
"voix sur IP" en Français désigne l'ensemble des
technologies permettant de communiquer oralement via un réseau utilisant
le protocole IP. Le terme "VoIP" est en général
utilisé pour décrire des communications "Point à Point".
Pour la diffusion du son sur IP en multipoints, on parlera plutôt du
streaming (comme les radios sur Internet, par exemple).
1. Brève historique
Le besoin pour l'homme de communiquer par la voix sur de
longue distance ne date pas d'aujourd'hui.
En 1667 Robert Hooke, physicien anglais
découvre pour la première fois le principe de transmission d'un
son grâce à son simple fil tendu entre deux cornets.
En 1782 un moine bénédictin,
Dom Gautheya eu l'idée d'exploiter la
propriété acoustique des tubes qui transmettent les sons de l'une
à l'autre de leurs extrémités. Ce système a
été utilisé par la suite mais sur des courtes distances
notamment dans la marine pour transmettre les consignes du poste de pilotage
à la salle des machines, dans les maisons bourgeoises pour appeler les
domestiques ou dans la voiture pour donner l'ordre au chauffeur.
A partir de 1850, de nombreux inventeurs
cherchent comment transporter la voix humaine grâce au fils
électrique.
En 1854, l'inventeur français
Charles Bourseul fut le premier à imaginer un
système de transmission électrique de la parole. L'histoire ne
retiendra qu'un seul nom celui de Graham Bell qui a mis au
point le premier prototype de téléphone. Ce n'est que le 10 mars
1876 que les travaux de Bell et Watson commencèrent
à être concluant par la réussite de cette expérience
mémorable. Ce jour-là, Bell prononça devant un montage mis
en place par Watson et lui dit cette phrase historique : « Monsieur
Watson, venez ici j'ai besoin de vous ! » dans une autre pièce
quelques étage plus bas, Watson entendit distinctement la voix de son
maître sortir du dispositif. C'est à partir de là qu'est
né le téléphone.
Augmentation importante du nombre d'utilisateur, l'expansion
du système téléphonique donne naissance au réseau
téléphonique commuté (RTC). Ce réseau qui atteint
plusieurs pays est actuellement le plus utilisé par les particuliers et
les entreprises. Le RTC assure la
Chapitre II: Généralités
sur la VoIP
connexion automatique momentanée de deux installations
terminales afin de mettre en relation deux usagers au minimum.
2. Le réseau téléphonique
commuté :
Le réseau téléphonique commuté
est le plus ancien en matière de télécommunication. Il est
basé sur une architecture hiérarchisée. Afin de
communiquer à travers le RTC, un numéro personnel est
attribué à chaque client.
Les connexions entre abonnés se font:
- Soit en empruntant les lignes du réseau public RTC,
il s'agit là des communications extérieures ;
- Soit au sein d'une même entreprise, ce sont des
communications internes traités par un autocommutateur privé
(PABX). L'accès au réseau Public se fait alors en composant un
préfixe supplémentaire.
Le commutateur étant le coeur du réseau RTC (en
anglais STN : Switching Telephone Network) se représente à
plusieurs niveaux pour écouler le trafic téléphonique.
Tous d'abord :
· Le commutateur à autonomie d'acheminement (CAA)
ou commutateur local permettant de mettre en relation les clients d'une
même zone géographique.
· Les centres de transit (CT) permettant
d'écouler les communications téléphoniques entre les
commutateurs à autonomie d'acheminement.
· Lorsque la communication est internationale, il s'agit
là d'un centre de transit international (CTI).
Les supports de transmissions pour l'acheminement du signal
entre commutateurs peuvent être faits par :
· Des conducteurs métalliques (paires
torsadées, câbles coaxiaux)
· Par la fibre optique
13
Figure II.1: Les types des câbles
réseaux
· Par les faisceaux hertziens en espaces libre
Chapitre II: Généralités
sur la VoIP
Figure II.2: Les faisceaux hertziens
Dans le système traditionnel, la voix est
encodée de façon analogique puis sur un réseau de
commutation de circuits. La bande passante faible (300HZ-3400HZ) du
réseau téléphonique commuté, et le rapport signal
sur bruit (de l'ordre de 40db) limite ainsi la qualité du signal
analogique transmis et donc le débit du nombre de bits transmis.
Cependant, lorsque deux personnes veulent communiquer toute la bande passante
leur est attribuée tout au long de leur communication. Or pendant une
communication, il y'a toujours des temps morts et pendant ces temps mort, la
bande passante est toujours utilisée. Cette mauvaise gestion de la bande
passante des systèmes analogiques a conduit à se pencher sur la
question d'intégrations de la voix sur le réseau IP.
3. Définitions :
3.1. Internet Protocol ( IP ):
Internet Protocol, généralement
abrégé IP, est un protocole de communication de réseau
informatique, il correspond à un protocole de niveau 3 dans le
modèle OSI et du modèle TCP/IP (Figure II.3)
permettant un service d'adressage unique pour l'ensemble des terminaux
connectés.
14
Figure II.3 : Modèle OSI (Open
Systems Interconnection) & du modèle TCP/IP [1].
15
Chapitre II: Généralités
sur la VoIP
3.2. VoIP (Voice over IP):
La voix sur IP (VoIP) regroupe l'ensemble des techniques
permettant de faire transiter de la voix sur un réseau informatique. La
voix sur IP comprend ainsi les communications de PC à PC. Pour ce type
de communication, chaque utilisateur doit disposer d'un logiciel
approprié. Si la connexion passe par le réseau Internet, on parle
alors de VoIP, la téléphonie par Internet.
Deuxième catégorie de voix sur IP, les communications de PC
à téléphone (PC to Phone). Dans les deux cas, le PC
communicant est appelé Softphone, terme qui insiste sur
l'émulation du PC en téléphone grâce à un
logiciel.
La ToIP s'inscrit dans la troisième
catégorie de communications en voix sur IP, les échanges de
téléphone à téléphone. Les postes sont alors
baptisés IP-Phone pour les distinguer de leurs homologues standards. Un
téléphone IP doit en effet être alimenté par courant
au contraire des téléphones classiques. Il est capable de
numériser la voix pour la transmettre sur des réseaux IP et peut,
à l'inverse, rassembler les paquets entrants pour interpréter la
voix reçue. La téléphonie sur IP circule sur des
réseaux privés LAN (Local Area Network),
VPN (Virtual Private Network) ou publics (Figure
II.4).
Dans la littérature il arrive souvent de tomber sur le
terme « ToIP » qui désigne les mêmes
technologies que la VoIP, ToIP signifie
« Telephony Over IP » ou, plus prosaïquement les techniques
employées pour faire circuler la voix sur un réseau informatique
dont la couche transport est prise en charge par le protocole IP.
Figure II.4 : Equipements
utilisés pour VoIP [2].
16
Chapitre II: Généralités
sur la VoIP
4. Les différents éléments pouvant
composer un réseau
4.1. PABX :
PABX (signifie : Private Automatic
Branch eXchange) sert principalement à relier les postes
téléphoniques d'un établissement (lignes internes) avec le
réseau téléphonique public (lignes externes). Il permet en
plus la mise en oeuvre d'un certain nombre de fonctions, notamment :
1. Relier plus de lignes internes que de lignes externes.
2. Permettre des appels entre postes internes sans passer par le
réseau public.
3. Programmer des droits d'accès au réseau public
pour chaque poste interne.
4. Proposer un ensemble de services
téléphoniques (conférences, transferts d'appel, renvois,
messagerie, appel par nom...).
5. Gérer la ventilation par service de la facture
téléphonique globale (taxation).
6. Apporter des services de couplage
téléphonie-informatique (CTI).
7. Gérer les appels d'urgence dans les structures
d'accueil hospitalières, maisons de retraite, etc.
8. Gérer un portier interphone d'immeuble et commander
une gâchette électrique.
Il s'agit en quelque sorte d'un Switch doté de
fonctionnalités particulières et peut être
considéré comme étant le coeur d'un réseau
privé de téléphonie (Figure I.5). Le
terme "IP-PABX" (ou "IPBX") désigne un PABX (ou PBX)
utilisant la technologie IP pour accéder à son réseau.
Figure II.5 : Standard
Téléphonique IPBX [3].
Chapitre II: Généralités
sur la VoIP
4.2. Le serveur de communications : (exemple : Call Manager
de Cisco)
Ce dernier gère les autorisations d'appels entre les
terminaux IP ou soft phones et les différentes signalisations du
réseau. Il peut posséder des interfaces réseaux
opérateurs (RTC-PSTN ou RNIS), sinon les appels externes passeront par
la passerelle dédiée à cela (Gateway).
Figure II.6 : serveur de
communication
4.3. La passerelle (Gateway) :
Est un élément de routage équipé
de cartes d'interfaces analogiques et/ou numériques pour
s'interconnecter soit avec d'autres PABX (en QSIG, RNIS ou E&M), soit avec
des opérateurs de télécommunications local, national ou
international. Plusieurs passerelles peuvent faire partie d'un seul et
même réseau, ou l'on peut également avoir une passerelle
par réseau local (LAN). La passerelle peut également assurer
l'interface de postes analogiques classiques qui pourront utiliser toutes les
ressources du réseau téléphonique IP (appels internes et
externes, entrants et sortants).
Figure II.7 : La passerelle
(Gateway)
4.4. Le routeur
Un routeur est un élément intermédiaire
dans un réseau informatique assurant le routage des paquets. Son
rôle est de faire transiter des paquets d'une interface réseau
vers une autre, au mieux (sans atténuation du signal ou perte de
données), selon un ensemble de règles. Il y a habituellement
confusion entre routeur et relais1, car dans les réseaux
Ethernet les routeurs opèrent au niveau de la couche 3 du modèle
OSI
17
Figure II.8 : Routeur cisco
Chapitre II: Généralités
sur la VoIP
4.5. Un commutateur réseau (switch) :
Est un appareil qui sert à connecter plusieurs
éléments dans un réseau informatique. un switch ressemble
à un boitier disposant de plusieurs ports Ethernet (entre 4 et plusieurs
dizaines), il peut intégrer la télé alimentation des ports
Ethernet à la norme 802.3af pour l'alimentation des IP-phones ou des
bornes
Figure II.9 : switch
4.6. Le Gatekeeper :
Il effectue les transferts d'adresses (identifiant H323 et @
IP du référencement du terminal) et gère la bande passante
et les droits d'accès. C'est le point de passage obligé pour tous
les équipements de sa zone d'action.
Figure II.10 : Gatekeeper
4.7. L'IP-Phone :
Est un terminal téléphonique fonctionnant sur le
réseau LAN IP à 10/100 avec une norme soit propriétaire,
soit SIP ou H.323. Il peut y avoir plusieurs codecs pour l'audio, et il peut
disposer d'un écran monochrome ou couleur, et d'une ou plusieurs touches
soit programmables, soit préprogrammées. IL est en
général doté d'un hub passif à un seul port pour
pouvoir alimenter le PC
l'utilisateur (l'IP-PHONE se raccorde sur la seule prise
Ethernet mural et le PC se raccorde derrière l'IP-PHONE).
18
Figure II.11 : IP phone
19
Chapitre II: Généralités
sur la VoIP
4.8. Softphone :
Un SoftPhone est un logiciel de téléphonie sur
Internet. Il permet de téléphoner d'ordinateur à
ordinateur ou d'ordinateur à téléphone. Il existe un
très grand nombre de softphones dont l'un des plus
célèbres est X-Lite proposé par X-ten.
Les interfaces de ces softphones sont souvent simples
d'utilisation et très complètes puisque toutes les
fonctionnalités qui existent sur des téléphones classiques
existent aussi sur les softphones.
D'autres fonctions sont parfois associées comme la
messagerie instantanée (IM ou chat), la visiophonie, l'échange de
fichiers (pour partager des photos par exemple...), la conférence
à plusieurs....
Figure II.12 : softphone Xlite
5. Principe de transformation de la voix en IP
La voix sur IP (Voice over IP) caractérise l'encapsulation
d'un signal audio numérique (La voix) au sein du protocole IP. Cette
encapsulation permet de transporter la voix sur tout réseau compatible
TCP/IP. Le transport de la voix sur un réseau IP nécessite au
préalable sa numérisation. Il convient alors de
récapituler les étapes nécessaires à la
numérisation de la voix avant d'entrer dans les détails de la
VoIP.
20
Chapitre II: Généralités
sur la VoIP
Le processus de la numérisation de la voix est
schématisé par la figure suivante :
Figure II.13 : Processus de la
VoixIP
? Acquisition du signal :
La VoIP suppose la transformation d'un signal continu analogique
(la voix) en un signal discret numérique (composé d'une
série de chiffres). La première étape consiste
naturellement à capter la voix à l'aide d'un micro, qu'il
s'agisse de celui d'un téléphone ou d'un micro casque. ?
Numérisation :
Dans le cas où les signaux téléphoniques
à transmettre sont sous forme analogique, ces derniers doivent d'abord
être convertis sous forme numérique suivant le format PCM (Pulse
Code Modulation) à 64 Kbps. Si l'interface téléphonique
est numérique (accès RNIS, par exemple), cette fonction est
omise.
? Compression :
Le signal numérique PCM à 64 Kbps est
compressé selon l'un des formats du codec (Compression /
décompression) puis inséré dans des paquets IP. La
fonction du codec est le plus souvent réalisée par un DSP
(Digital Signal Processor). Selon la bande passante à disposition, le
signal voix peut également être transporté dans son format
original à 64 Kbps.
? Habillage des en-têtes :
Les données « brutes » qui sortent du DSP
doivent encore être enrichies en informations avant d'être
converties en paquets de données à expédier sur le
réseau.
? Emission et transport :
Les paquets sont acheminés depuis le point
d'émission pour atteindre le point de réception sans qu'un chemin
précis soit réservé pour leur transport. Ils vont
transiter sur le réseau
21
Chapitre II: Généralités
sur la VoIP
(réseau local, réseau étendu voire
Internet) en fonction des ressources disponibles et arriver à
destination dans un ordre indéterminé.
? RECEPTION :
Lorsque les paquets arrivent à destination, il est
essentiel de les replacer dans le bon ordre et assez rapidement. Faute de quoi
une dégradation de la voix se fera sentir. Ce point sera
détaillé plus loin.
? Conversion numérique analogique :
La conversion numérique analogique est l'étape
réciproque de l'étape 2, qui permet de transformer les
données reçues sous forme de série discrète en un
signal électrique continu.
? Restitution
Dès lors, la voix peut être retranscrite par le
haut-parleur du casque, du combiné téléphonique ou de
l'ordinateur.
6. Protocoles :
Les fournisseurs ADSL (Asymetric Digital
Subscriber Line) utilisent en règle générale le protocole
MGCP (Media Gateway Control Protocol) qui est un protocole
asymétrique (le serveur contrôle le téléphone de
l'abonné), alors que les logiciels de Voix sur IP utilisent en
général le protocol SIP qui est un protocole symétrique.
11istoriquement le protocole 11.323 ayant été
développé et adopté massivement en premier lieu, il reste
très présent mais sur le déclin. Ainsi on peut identifier
certains acteurs historiques en se lançant dans l'aventure VoIP au moyen
de protocoles plus anciens (11323) et les nouveaux arrivés en utilisant
les derniers protocoles (SIP par exemple).
6.1. RTP (Real-time Transfer Protocol):
Le but du protocole RTP et de fournir un moyen uniforme de
transmettre sur IP des données soumises à des contraintes de
temps réel (audio, vidéo, ...) (Figure II.14).
Le rôle principal de RTP consiste à mettre en oeuvre des
numéros de séquence de paquets IP pour reconstituer les
informations de voix ou vidéo même si le réseau sous-jacent
change l'ordre des paquets.
Plus généralement, le RTP permet :
· D'identifier le type de l'information
transportée,
· D'ajouter des marqueurs temporels et des
numéros de séquence à l'information transportée.
· De contrôler l'arrivée à
destination des paquets.
22
Chapitre II: Généralités
sur la VoIP
Figure II.14 : Protocole RTP dans le
modèle OSI [5].
6.2. RTCP (Real-time Transfert Control Protocol):
Le protocole RTCP est basé sur des transmissions
périodiques de paquets de contrôle par tous les participants dans
la session.
C'est un protocole de contrôle des flux RTP, permettant
de véhiculer des informations basiques sur les participants d'une
session, et sur la qualité de service.
6.3. ICMP (Internet Control Message Protocol) :
Le protocole ICMP (Internet Control Message Protocol) est un
protocole qui permet de gérer les informations relatives aux
erreurs aux machines connectées. Etant donné le peu de
contrôles que le protocole IP réalise, il permet non pas de
corriger ces erreurs mais de faire part de ces erreurs aux protocoles des
couches voisines. Ainsi, le protocole ICMP est utilisé par tous les
routeurs, a fin de signaler une erreur (appelé Delivery
Problem).
6.4. UDP (User Datagram Protocol)
Le rôle de ce protocole est de permettre la
transmission de données de manière très simple entre deux
entités, chacune étant définie par une adresse IP
et un numéro de port. Contrairement au protocole TCP, il
fonctionne sans négociation : il n'existe pas de procédure de
connexion préalable à l'envoi des données. Donc UDP ne
garantit pas la bonne livraison des datagrammes à destination, ni
leur ordre d'arrivée.
6.5. Protocol de signalisation
Le concept de protocole de signalisation va être
utilisé dans les chapitres suivants, voici donc une petite explication
préliminaire : La signalisation désigne la
transmission d'un ensemble de signaux et d'informations de contrôle
échangés entre les intervenants d'une communication. Ces
intervenants peuvent être des entités en bout de liaison
(terminaux) ou des entités
23
Chapitre II: Généralités
sur la VoIP
intermédiaires de contrôle et de gestion de
communications. Leurs échanges permettent l'initiation, la
négociation, l'établissement, le maintien et la fermeture de la
connexion.
Il convient de distinguer deux types de transferts pour
comprendre à quoi correspond la signalisation:
- Le transfert de données brutes.
- Le transfert d'informations de contrôle.
Le transfert de données brutes concerne les
échanges de données binaires d'un poste vers un autre. L'objectif
de ce transfert est de reproduire à l'identique des données en
les faisant transiter par un réseau. Par exemple, deux correspondants
peuvent s'échanger un fichier audio MP3 ou des images
JPEG. De la même façon, si on considère
une conversation téléphonique en cours, les intervenants
produisent des sons qui doivent être recomposés et diffusés
chez leurs correspondants.
Dans tous les cas, seul l'envoi des données à
de l'importance, ce qui relève d'un transport d'informations.
Le transfert d'informations de contrôle concerne les
échanges de type protocolaires exécutant une action
prédéfinie, et donc nécessairement limitée en
possibilités. L'objectif de ce transfert est d'assurer la maitrise et la
gestion du flux.
Dans le cas typique d'une application de
téléphonie, lorsqu'une personne en appelle une autre, elle n'a
initialement pas de "données" à lui transmettre, mais
veut simplement être mise en relation avec son correspondant. Cette mise
en relation nécessite d'abord de localiser l'appelé, puis de
faire sonner son poste afin de lui signaler l'appel. Pour la localisation comme
pour l'avertissement d'appel, on parle de signalisation.
De la même manière, lorsque la sonnerie d'appel
retentit dans le terminal appelé, l'appelant en est immédiatement
informé par une tonalité particulière sur son terminal
téléphonique. Il s'agit là aussi d'une information de
signalisation.
Si un correspondant ne répond pas à un appel,
il est probable que sa messagerie téléphonique va s'enclencher.
Cette redirection d'appel du poste appelé vers sa messagerie est
également une information de signalisation. Elle ne
transporte aucune information de données brute, mais vise à
signaliser à l'appelant que l'appelé n'est pas disponible et que
sa messagerie est opérationnelle.
Ces deux catégories de transfert sont liées :
ce n'est que lorsque l'appelé a répondu à l'appel que
commence le transfert d'information brutes, c'est-à-dire le transport de
la voix, qui doit être fidèlement retransmise d'un correspondant
à l'autre. La signalisation n'est que l'étape
24
Chapitre II: Généralités
sur la VoIP
préalable qui a mis en place la connexion entre les
différents utilisateurs pour permettre la communication.
Dans le modèle OSI, la
signalisation téléphonique correspond à une
fonctionnalité de niveau 7 (applicatif). Elle n'est donc jamais
assurée par des entités réseau de routage pur, comme les
routeurs ou switchs, qui fonctionnent à des couches inférieures.
Des entités dédiées sont exploitées à ces
fins : il s'agit de serveurs au niveau du coeur du réseau et des
terminaux (téléphone, ordinateur ou PDA par exemple) en bordure
de réseau, au niveau de l'utilisateur. Pour être compris et
correctement interprété, de l'ensemble des entités
participant aux mécanismes de signalisation, celle-ci doit respecter une
syntaxe particulière. C'est tout l'objet de la spécification d'un
protocole de signalisation.
6.5.1. H.323
Le protocole H.323 figure parmi les plus
réputés des protocoles de signalisation pour la
téléphonie sur IP. 11.323 n'est en réalité que la
référence du protocole. Son nom complet est Packet-based
Multimedia Communications Systems. Comme son nom l'indique, il peut
être utilisé pour tous les réseaux à commutation de
paquets, en particulier IP. Ce protocole est spécifié pour le
traitement de la signalisation des données multimédia avec de
fortes contraintes temporelles, comme la voix ou la vidéo.
? Famille de protocole H.323
H.323 se dessine en trois grandes parties
(Figure I.6). En effet, pour établir une communication
audio ou vidéo sur IP, le signal doit être encodé en
utilisant des codecs normalisés définis dans la norme 11.323, qui
normalise aussi la signalisation à utiliser pour l'établissement
d'une communication. La voix ou la vidéo est transmise en utilisant le
protocole UDP, associé aux protocoles RTP et RTCP pour le transfert des
données en temps réel.
- Parmi les codecs possibles figurent G.711,
G.723 et G.729 pour les signaux audio, et 11.261 / 11.263 pour les signaux
vidéo.
- La signalisation pour
l'établissement des appels est mise en oeuvre à l'aide de trois
protocoles:
? H.225 RAS (Registration, Admission
and Status) : La signalisation RAS est
utilisée entre les Endpoints (Terminal) et le
Gatekeeper qui les contrôle. Le RAS permet donc au
Gatekeeper de contrôler les Endpoints
présents dans sa zone. Autrement dit la gestion du trafic entre le
client et le serveur de communication.
25
Chapitre II: Généralités
sur la VoIP
? H.225 Call signaling : Cette signalisation
permet d'établir et de libérer des connexions entre
Endpoints 11.323.
? H.245 : Lorsque l'appelé
décroche, le protocole H.245 permet l'établissement de canaux
RTP/RTCP permettant le transfert de données multimédia et le
contrôle de ce transfert.
- Les protocoles utilisés à
temps réel sur IP sont RTP et RTCP. RTP fournit un transport de bout en
bout sur un réseau pour les applications transmettant des données
en temps réel, telles que la voix ou la vidéo, en unicast et en
multicast. RTP ne se préoccupe pas de la réservation de
ressources et ne garantit pas la qualité de service des transferts de
données en temps réel. Le transport des données
bénéficie aussi du protocole de contrôle RTCP qui fournit
un contrôle minimal et des fonctions d'identification
particulièrement utiles dans le cas de réseaux multicast. RTP et
RTCP sont conçus pour être indépendants des réseaux
sous-jacents.
Pour le contrôle et la signalisation : H.225
/ H.245 / RTCP.
Pour la voix : G.711 / G.722 /
G.723/G.726 / G.728 / G.729.
Pour la vidéo : H.261/ H.263 /
H.263+ / H.264.
Pour les données : T.123 / T.124 /
T.125.
Figure II.15: Architecture client
11.323 [6]
26
Chapitre II: Généralités
sur la VoIP
6.5.2. SIP (Session Initiation Protocol)
Ce qui nous intéresse beaucoup, c'est ce protocole de
signalisation de vidéo et voix sur IP, le SIP (Session Initiation
Protocol) est un protocole développé par l'Internet Engineering
Task Force (IETF) permettant la négociation et l'établissement de
sessions VoIP. SIP est un protocole de couche 5 du modèle OSI, dite de
session. Il s'appuie généralement sur une couche de transport
UDP, bien qu'il soit possible d'augmenter sa fiabilité en l'appliquant
sur du TCP. Le port par défaut de SIP est le 5060. SIP ne traite que
l'établissement de session. Il ne transporte pas les données
échangées pendant la communication, ce rôle étant
joué par RTP (Real-time Transport Protocol). On distingue
différents acteurs dans le protocole SIP. (Figure
II.16)
? SDP, abréviation pour
(Session Description Protocol), est un format pour
décrire les paramètres d'initialisation des flux
média. SDP ne fournit pas le média en soi, mais
il négocie plutôt les points de terminaisons du format du
média en multidiffusion. Le Streaming media est le contenu qui peut
être visualisé ou entendu lors de la transmission. SDP est
conçu pour être extensible afin de supporter de nouveaux types de
média et formats. SDP a trouvé des usages avec le RTP et le SIP,
malgré son origine en tant que protocole d'annonce de session
SAP (Session Announcement Protocol)
[7].
Figure II.16 : L'encapsulation du
protocole SIP en comparaison avec H.323.
Dans la négociation et l'établissement de
session on trouve le User Agent, il peut s'agir d'un téléphone
IP, d'un téléphone analogique (RTC) relié à un
boîtier ATA (Analog Telephony
27
Chapitre II: Généralités
sur la VoIP
Adapter) ou encore d'un softphone. C'est l'équipement
manipulé par l'usager. Un élément fondamental est le
Registrar Server, Il établit la correspondance entre une adresse
à long terme (une URI ou un numéro de téléphone) et
une adresse à court terme, typiquement une adresse IP
[12].
Le dernier élément très important d'une
architecture SIP est le serveur proxy. Il relaye les messages des User Agent
à leur destination. Sa raison d'être est que les User Agent ne
peuvent pas toujours joindre directement les autres
périphériques, notamment les User Agent hors de leur
réseau.
Les messages utilisés par SIP sont volontairement
similaires à ceux utilisés par le HTTP. Ils sont codés en
ASCII et utilisent des codes proches de ceux du http (Figure
II.17).
Différents messages sont utilisés par SIP, les
plus importants étant les suivants :
· REGISTER : Le client envoie ce
message à son registrar pour s'enregistrer, c'est-à-dire pour
donner son URI et son adresse IP.
· INVITE : Ce message permet à
un client de demander l'établissement d'une nouvelle session. Il peut
être utilisé également en cours de communication pour
modifier la session.
· ACK : Le message ACK confirme
l'établissement d'une session SIP, suite à un
message INVITE.
· CANCEL : Ce message annule une
demande de session précédemment effectuée avec un
INVITE.
· BYE : termine une session en cours.
Contrairement au message CANCEL, la session
SIP doit être active pour pouvoir envoyer un message
BYE. Même si son comportement peut sembler similaire
à CANCEL, une différence fondamentale existe :
le message BYE représente un succès (la
communication a eu lieu et est désormais terminée) alors
que CANCEL est, du point de vue de l'usager, un échec :
l'appelé n'a pas répondu à temps, l'appelant a donc
raccroché, la session n'a donc pas abouti.
· Des codes de réponse : Des
codes à trois chiffres, similaires à ceux du HTTP, sont
envoyés en réponse à un précédent message.
Le premier chiffre détermine le type de réponse, les deux
suivants donnent une indication plus précise.
- Classe 1xx - Réponse temporaire :
la requête est en cours de traitement.
- Classe 2xx - Succès : l'action
demandée a été reçue, comprise et
acceptée.
28
Chapitre II: Généralités
sur la VoIP
- Classe 3xx - Redirection : une autre action
auprès d'un autre équipement est nécessaire.
- Classe 4xx - Erreur du client : la
requête est mal formée
- Classe 5xx - Erreur du serveur : le serveur
n'a pas réussi à répondre correctement à la
requête.
- Classe 6xx - Autre erreur, problème
global.
Figure II.17 : Procédure
d'établissement de session SIP [9]
? Les avantages SIP :
L'implémentation de la VoIP avec le
protocole de signalisation SIP (Session Initiation Protocol) fournit un service
efficace, rapide et simple d'utilisation. SIP est un protocole rapide et
léger.
Les utilisateurs s'adressent à ces serveurs Proxy pour
s'enregistrer ou demander l'établissement de communications. On peut
s'enregistrer sur le Proxy de son choix
29
Chapitre II: Généralités
sur la VoIP
indépendamment de sa situation géographique.
L'utilisateur n'est plus "attaché" à son autocommutateur. Une
entreprise avec plusieurs centaines d'implantations physiques
différentes n'a besoin que d'un serveur Proxy quelque part sur
l'Internet pour établir "son" réseau de
téléphonique "gratuit" sur internet un peu
à la manière de l'E-mail.
? Les inconvénients SIP :
L'une des conséquences de cette convergence est que le
trafic de voix et ses systèmes associés sont devenus aussi
vulnérables aux menaces de sécurité que n'importe quelle
autre donnée véhiculée par le réseau.
En effet SIP est un protocole
d'échange de messages basé sur HTTP. C'est pourquoi SIP est
très vulnérable face à des attaques de types DoS
(dénis de service), détournement d'appel, trafic de
taxation,... etc.
6.5.3. IAX (Inter Asterisk eXchange)
Protocole de signalisation de voix/ vidéo sur
IP. IAX (Inter Asterisk eXchange),
utilisé par Asterisk (Asterisk est un PABX (Private Automatic Branch
eXchange) et surtout un IPBX (Internet Protocole Branche eXchange)). Ce
protocole fonctionne sur le port 4569 en UDP et transporte à la fois les
données (voix) et la signalisation. L'intérêt principal de
ce protocole est d'être fait pour traverser le NAT (Network Address
Translation un routeur fait la traduction d'adresse réseau) et qu'il est
possible de créer des trunks IAX (appelés également Canaux
(définissant le nombre d'appels simultanés entre un
opérateur IP et un IPBX)), entre les serveurs dans lesquels les
communicationsRTP sont multiplexées ainsi on économise les
surcharges d'entêtes IP (Figure I.9).
Figure II.18 : Rôle du protocol
IAX [10]
30
Chapitre II: Généralités
sur la VoIP
L'avantage principal d'IAX est qu'il permet à
plusieurs appels d'être rassemblés dans un seul ensemble de
paquets IP, transportant des informations concernant plusieurs appels en cours.
Et ça réduit la consommation de bande passante pour un ensemble
d'appels (par l'utilisation du trunking).[8]
7. Les Codecs
Codec est une abréviation pour
Codeur/Décodeur. Un codec est basé sur un algorithme qui permet
la compression des données qu'on lui donne. Il s'agit d'un
procédé permettant de compresser et de décompresser un
signal, de l'audio ou de la vidéo, le plus souvent en temps réel,
permet une réduction de la taille du fichier original. Le codec
numérise et compresse la voix de l'émetteur, ainsi les
données numériques sont encapsulées dans des paquets IP et
acheminées vers le destinataire. A l'arrivés au destinataire, ce
dernier grâce au même codec décompresse et restitue le son.
On distingue des codecs à pertes et codecs sans pertes. Un codec
à pertes distingue les parties moins importantes des informations et les
supprime pour gagner en taille.
Dans la téléphonie sur IP, les
différents codecs retransmettent plus ou moins bien le signal original
(Figure II.17). Pour mesurer la qualité de la voix
restituée, on parle de score MOS (Mean Opinion Score). C'est une note
comprise entre 1 et 5 et attribuée par des auditeurs jugeant de la
qualité de ce qu'ils entendent. Pour la VoIP, plusieurs codecs peuvent
servir. Voici leurs détails :
G.711 : Ce codec est le premier à
avoir été utilisé dans la VoIP. Même s'il existe
maintenant des codecs nettement plus intéressants, celui-ci continue
d'être implémenté dans les équipements à des
fins de compatibilité entre marques d'équipements
différentes.
G.722 : A la différence du G.711, ce
codec transforme le spectre jusqu'à 7kHz ce qui restitue encore mieux la
voix. Les débits que ce codec fournit sont 48,56 ou 64kbit/s. Une de ces
particularités est de pouvoir immédiatement changer de
débit. Ceci est fortement appréciable lorsque la qualité
du support de transmission se dégrade.
G.722.1 : Dérivé du codec
précédent, celui-ci propose des débits encore plus faibles
(32 ou 24kbit/s). Il existe même des versions propriétaires de ce
codec fournissant un débit de 16kbit/s.
G.723.1 : C'est le codec par défaut
lors des communications à faible débit. Deux modes sont
disponibles. Le premier propose un débit de 6,4kbit/s et le
deuxième un débit de 5,3kbit/s [13].
31
Chapitre II: Généralités
sur la VoIP
Figure II.18 : Différents
codecs dans le modèle OSI [14]
? Compression du silence
Une des méthodes utilisées par les
codecs pour réduire la quantité de
données à transmettre et de détecter les silences. Dans
une conversation téléphonique, chaque locuteur ne parle que 1/3
du temps en moyenne. Ce qui fait que 1/3 du temps d'une conversation est
constitué de silence facilement reproductible et donc non codé
par le codec. Ce mécanisme s'appelle VAD (Voice Activity
Détection - DAV : Détection d'activité de la voix).
? Génération de bruits de confort
Pendant une conversation où les silences sont
effacés, l'absence de bruit chez le récepteur peut vite se
révéler inconfortable. Dans cette optique, les codecs disposent
d'un générateur de bruits de confort visant à simuler des
bruits de fond pour améliorer le confort des utilisateurs.
? Robustesse sur la perte de paquets
Si les conditions de circulations sur le réseau se
dégradent, certains paquets contenant de l'information peuvent se perdre
ou arriver trop tard. Ce problème est en partie compensé par
l'utilisation des buffers, mais la gigue peut être telle que le codec
soit obligé de retransmettre au récepteur un paquet, alors qu'il
n'est pas arrivé. Il existe plusieurs méthodes pour palier
à ce problème : Il est possible par exemple de simplement
répéter le contenu du dernier paquet pour combler le vide. On
peut aussi répartir l'information sur plusieurs paquets de façon
à introduire une redondance des données. En cas de pertes de
paquets, le codec dispose ainsi d'une copie du paquet à
retransmettre.
32
Chapitre II: Généralités
sur la VoIP
8. Les modes d'accès:
Selon le type de terminal utilisé (un ordinateur ou un
téléphone classique), on distingue
trois modes d'accès possibles de voix sur IP :
? La voix sur IP entre deux ordinateurs
? La voix sur IP entre un ordinateur et un
téléphone
? La voix sur IP entre deux téléphones
Il est nécessaire de rappeler aux utilisateurs qu'ils
doivent être dans le même réseau IP
(Internet ou Intranet de l'entreprise).
8.1. La voix sur IP entre deux ordinateurs
C'est le cas le plus simple. Il suffit de disposer d'une carte
son, de haut-parleurs et de microphones pour chacun des interlocuteurs. Il faut
également connaître l'adresse IP de chacun des terminaux pour
établir la communication.
Dans ce premier type de voix sur IP, les utilisateurs
communiquent à partir d'un logiciel de voix sur IP qu'on appelle
soft phone.
Figure II.19 : Voix sur IP entre deux
ordinateurs
8.2. La voix sur IP entre un PC et un
téléphone
Ce cas nécessite une conversion des signaux entre le
RTC et le réseau IP. En effet, ces deux terminaux utilisant des
technologies différentes (la commutation de circuits et la commutation
de paquets). L'échange des informations nécessite une passerelle
ainsi l'utilisateur possédant un ordinateur et désirant appeler
l'autre sur son téléphone doit se connecter à un service
spécial sur Internet, offert par un fournisseur de service (un ISP) ou
par son fournisseur d'accès à Internet (son IAP).
33
Chapitre II: Généralités
sur la VoIP
Figure II.20: Pc to phone.
8.3. La voix sur IP entre deux téléphones
C'est le cas le plus complexe car il nécessite deux
conversions de signaux. On utilise des passerelles analogues entre le
réseau téléphonique et le réseau data. Un
utilisateur appelle le numéro d'une passerelle et lui communique le
numéro du correspondant qu'il cherche à joindre.
Figure II.21: Phone to phone
9. Points forts et limites de la voix sur IP
9.1. Les Points forts :
Différentes sont les raisons qui peuvent pousser les
entreprises à s'orienter vers la VoIP comme solution pour la
téléphonie. Les avantages les plus marqués sont :
? Réduction des coûts :
En effet le trafic véhiculé à travers le
réseau RTC est plus couteux en applications (voix, réseau et
vidéo) par un seul transport IP. Une simplification de gestion, mais
également une mutualisation des efforts financiers vers un seul
outil.
? Un service PABX distribué ou
centralisé : Les PABX en réseau
bénéficient de services centralisés tel que la messagerie
vocale et la taxation. Cette même
34
Chapitre II: Généralités
sur la VoIP
centralisation continue à être assurée
sur un réseau VoIP sans limitation du nombre de canaux. Il convient pour
en assurer une bonne utilisation de dimensionner convenablement le lien
réseau. L'utilisation de la VoIP met en commun un média qui peut
à la fois offrir à un moment précis une bande passante
maximum à la donnée, et dans une autre période une bande
passante maximum à la voix, garantissant toujours la priorité
à celle-ci.
? Réductions importantes
pour des communications internationales en utilisant le VoIP, ces
réductions deviennent encore plus intéressantes dans la
mutualisation voix/données du réseau IP intersites (WAN). Dans ce
dernier cas, le gain est directement proportionnel au nombre de sites
distants.
? Standards ouverts : La VoIP n'est
plus uniquement H323, mais un usage multi protocoles selon les besoins de
services nécessaires. Par exemple, H323 fonctionne en mode égale
à égale alors que MGCP fonctionne en mode centralisé. Ces
différences de conception offrent immédiatement une
différence dans l'exploitation des terminaisons
considérées.
? Un réseau voix, vidéo et
données (à la fois) : Grace à
l'intégration de la voix comme une application supplémentaire
dans un réseau IP, ce dernier va simplifier la gestion des trois
applications (voix, réseau et vidéo) par un seul transport IP.
Une simplification de gestion, mais également une mutualisation des
efforts financiers vers un seul outil.
9.2. Les points faibles de la voix sur IP
? Fiabilité et qualité sonore
:
Un des problèmes les plus importants de la
téléphonie sur IP est la qualité de la retransmission qui
n'est pas encore optimale. En effet, des désagréments tels la
qualité de la reproduction de la voix du correspondant ainsi que le
délai entre le moment où l'un des interlocuteurs parle et le
moment où l'autre entend peuvent être extrêmement
problématiques. De plus, il se peut que des morceaux de la conversation
manquent (des paquets perdus pendant le transfert) sans être en mesure de
savoir si des paquets ont été perdus et à quel moment.
? Dépendance de
l'infrastructure technologique et support administratif exigeant :
35
Chapitre II: Généralités
sur la VoIP
? Les centres de relations IP
peuvent être particulièrement vulnérables en cas
d'improductivité de l'infrastructure. Par exemple : si la base de
données n'est pas disponible, les centres ne peuvent tout simplement pas
recevoir d'appels. La convergence de la voix et des données dans un seul
système signifie que la stabilité du système devient plus
importante que jamais et l'organisation doit être préparée
à travailler avec efficience ou à encourir les
conséquences.
? Vol: les attaquants qui
parviennent à accéder à un serveur VoIP peuvent
également accéder aux messages vocaux stockés et au
même au service téléphonique pour écouter des
conversations ou effectuer des appels gratuits aux noms d'autres comptes.
? Attaque de virus: si un serveur
VoIP est infecté par un virus, les utilisateurs risquent de ne plus
pouvoir accéder au réseau téléphonique. Le virus
peut également infecter d'autres ordinateurs connectés au
système.
Conclusion
La VoIP est une technologie
révolutionnaire qui défie les règles
édictées par la téléphonie RTC. Elle est plus
souple, conviviale, ne nécessite pas un investissement lourd,
coûte moins chère, propose de nouveaux services et beaucoup
d'autres avantages, si bien que toute entreprise qui se veut compétitive
et moderne aujourd'hui, jette son dévolu sur la téléphonie
sur IP pour gérer ses communications tant internes qu'externes. Elle
vise principalement à améliorer le cadre de travail des
employés de l'entreprise en libérant l'utilisateur du lieu
d'implantation du poste téléphonique.
CHAPITRE III
Implémentation d'un serveur
Asterisk
37
Chapitre III: Implémentation d'un serveur
Asterisk
Dans ce chapitre nous proposons de réaliser une
plateforme intégrant certains services de voix sur IP (VoIP)
offerts par Asterisk.
Cette réalisation consiste à la mise en place
et la configuration d'une machine contenant le serveur Asterisk, d'autre part
l'installation et la configuration du client X-Lite et la configuration de
certains services.
1. Présentation Asterisk :
1.1. Définition :
Le nom Asterisk fait référence
au symbole "*" qui signifie "wildcard" en
ligne de commande Unix et DOS. Ce choix a
été fait car Asterisk est conçu dans le
but d'offrir une très grande souplesse dans des réseaux de
voix.
Asterisk est un autocommutateur
téléphonique privée (PABX) open source
pour les systèmes d'exploitation UNIX, il est
publié sous licence GPL.
Le PBX open source
Asteriska vu le jour quand Mark Spencer, a voulu
acquérir un PBX traditionnel pour sa société. Le
créateur d'Asterisk, trouvant que le prix d'acquisition
d'un PBX traditionnel était démesuré, initia un projet
open source. Il a donc commencé à développer Asterisk.
Figure III.1 : Architecture du
réseau VOIP avec un serveur Asterisk
1.2. Rôle :
Asterisk est un IP-PBX qui
transforme un ordinateur en "central téléphonique" ou
"PABX" (Private Automatic Branche
Xchange), qui est un autocommutateur
téléphonique privé ». Ce PBX est un
commutateur qui relie dans une entreprise les appels d'un poste
38
Chapitre III: Implémentation d'un serveur
Asterisk
quelconque vers un autre (appels internes) ou avec un
réseau téléphonique public (appels externes).
Asterisk a le rôle d'un middleware entre les
technologies de téléphonie VOIP et les applications
(conférence, messagerie vocale, ...).
Ce PBX est base sur le protocole IP. Donc les communications
et les paquets échanges sont transportés sous forme plusieurs
protocoles de la voix qu'on veut (SIP, IAX, H.323).
1.3. Caractéristiques :
Asterisk offre toutes les fonctions d'un PBX et ses services
associent :
· La conférence téléphonique.
· Les répondeurs interactifs.
· La mise en attente d'appels.
· La distribution des appels.
· Les mails vocaux.
· La musique d'attente.
· La génération d'enregistrement d'appels
pour l'intégration avec des systèmes de facturation.
Asterisk fonctionne sur les principaux systèmes
d'exploitation (Linux, BSD, Windows, Mac OS X).
2. Architecture interne d'Asterisk
Asterisk est composé d'un noyau central de
commutation, de quatre API (Interface de programmation d'applications) de
chargement modulaire des applications téléphoniques, des
interfaces matérielles, de traitement des formats de fichier, et des
codecs. Il assure la commutation transparente entre toutes les interfaces
supportées, permettant à cette commutation de relier entre eux
une diversité de systèmes téléphoniques en un
unique réseau commuté.
39
40
Chapitre III: Implémentation d'un serveur
Asterisk
Figure III.2 : architecture interne
d'Asterisk [11].
3. Principales fonctions
Les principales fonctions d'Asterisk sont
:
? La commutation de PBX (PBX Switching
Core): Système de commutation de central téléphonique
privé, reliant ensemble les appels entre divers utilisateurs et des
tâches automatisées. Le noyau de commutation relie d'une
manière transparente des appels arrivant sur divers interfaces de
matériel et de logiciel.
? Lanceur d'applications (Application
Launcher) : Lance les applications qui assurent des services pour des usagers,
tels que la messagerie vocale, la lecture de messages et le listage de
répertoires (annuaires).
? Traducteur de codec (Codec Translator) :
Utilise des modules de codec pour le codage et le décodage de divers
formats de compression audio utilisés dans l'industrie de la
téléphonie. Un certain nombre de codecs sont disponibles pour
pallier aux divers besoins et pour arriver au meilleur équilibre entre
la qualité audio et l'utilisation de la bande passante.
Chapitre III: Implémentation d'un
serveur Asterisk
· Planificateur Manager d'I/O
(Scheduler & I/O Manager) : Ils traitent la planification des
tâches de bas niveau et la gestion du système pour une performance
optimale dans toutes les conditions de charge.
· Dynamic Module Loader: charge les
pilotes (lors de la 1ère exécution d'Asterisk, il initialise les
pilotes et fait le lien avec les APIs appropriés). Après que les
pilotes soient chargés (DML), les appels commencent à être
acceptés (PBXSC) et redirigés en faisant sonner les
téléphones (AL).
4. Les APIs (Application Programming Interface)
L'abstraction matérielle et protocolaire passe par
l'utilisation de 4 APIs [11] :
· Asterisk Application API: Elle
autorise différents modules de tâches à être
lancé pour exécuter diverses fonctions. Communication,
audioconférence, pagination, liste d'annuaire, messagerie vocale,
transmission de données intégrée, et n'importe quelle
autre tâche qu'un système PBX standard exécute actuellement
ou exécutera dans l'avenir, sont mises en oeuvre par ces modules
distincts.
· Asterisk Translator API: Charge les
modules de codec pour supporter divers formats de codage et de décodage
audio tels que le GSM, la Mu-Law, l'A-Law, et même le MP3.
· Asterisk Channel API: Cette API
gère le type de raccordement sur lequel arrive un appelant, que ce soit
une connexion VoIP, un RNIS, un PRI, une signalisation de bit
dérobé, ou une autre technologie. Des modules dynamiques sont
chargés pour gérer les détails de la couche basse de ces
connexions.
· Asterisk File Format API: Elle permet
la lecture et l'écriture de divers formats de fichiers pour le stockage
de données dans le file system. Sa particularité modulaire permet
à Asterisk d'intégrer de façon continue le matériel
de commutation téléphonique actuellement mise en oeuvre, et les
technologies de Voix par paquet en constante augmentation, émergeant
aujourd'hui.
Durant ce chapitre, on montrera les étapes
d'installation et de configuration d'Asterisk, ainsi que l'installation et la
configuration de softphone X-Lite.
Chapitre III: Implémentation d'un
serveur Asterisk
5. Architecture du réseau :
La figure III.3 montre l'architecture
adoptée au cours de la configuration de la solution de VoIP à
base d'Asterisk.
|
Serveur
Asterisk
192.168.1.10
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
192.168.1.11
|
192.168.1.13
|
|
192.168.1.12
|
|
41
Figure III.3 : Architecture du
réseau
Client2: 6002
Client3: 6003
Client1: 6001
Materiel requis:
? Un serveur sur lequel sont installé asterisk.
? Deux clients SIP : Sont des machines sur lesquelles
installé le système d'exploitation
Windows et un client X-Lite.
? Un switch.
? 02 casques avec micro
? Câbles Ethernet
6. Installation du système
Le serveur qui héberge la plate-forme Asterisk est un
serveur GNU/Linux [7] fonctionnant avec un système d'exploitation Ubuntu
14.04 LTS.
42
Chapitre III: Implémentation d'un serveur
Asterisk
· Préparation à
l'installation
On commence par mettre à jour notre distribution et
installer les dépendances nécessaires à la compilation
d'Asterisk.
root@mustapha-presario-cq57-notebook-pc:/# apt-get
update && apt-get upgrade root@mustapha-presario-cq57-notebook-pc:/#
apt-get install build-essential libxml2-dev libncurses5-dev
linux-headers-`uname -r` libsqlite3-dev libssl-dev
|
|
· Téléchargement
On crée un dossier ou nous allons placer les sources
d'Asterisk dans /usr/src
root@mustapha-presario-cq57-notebook-pc:/# mkdir
/usr/src/asterisk
root@mustapha-presario-cq57-notebook-pc:/usr/src/asterisk#
|
|
On télécharge l'Asterisk, la version
installée d'Asterisk était la version 11.10.2.
root@mustapha-presario-cq57-notebook-pc:/usr/src/asterisk# wget
http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-11.10.2.tar.gz
root@mustapha-presario-cq57-notebook-pc:/usr/src/asterisk# tar xvzf
asterisk-11.10.2.tar.gz
root@mustapha-presario-cq57-notebook-pc:/usr/src/asterisk# cd
asterisk-11.10.2/
· Compilation et installation
Construction d'un nouveau fichier makefile qui
contient les instructions à exécuter à partir
des commandes : ./configure, make, make install, make
config, etc.
root@mustapha-presario-cq57-notebook-pc:/usr/src/asterisk/asterisk-11.10.2#./configure
La commande make menuselect permet d'installer
des modules supplémentaires.
root@mustapha-presario-cq57-notebook-pc:/usr/src/asterisk/asterisk-11.10.2#
make menuselect
43
Chapitre III: Implémentation d'un serveur
Asterisk
On a une fenêtre comme suit apparaitre :
On installe les sons français pour
Asterisk au format ì-law.
Dans Core Sound Package nous allons cocher la
case CORE-SOUNDS-FR-ULAW avec la touche Espace
puis appuyez sur Echap pour retourner à
l'écran précédent.
44
Chapitre III: Implémentation d'un serveur
Asterisk
Puis dans Music On Hold File Packages cochez
MOH-OPSOUND-ULAW (Décochez celui en WAV), appuyez sur
Echap.
Enfin dans Extras Sound Packages et cochez
EXTRA-SOUNDS-FR-ULAW, enfin appuyez sur Echap.
45
Chapitre III: Implémentation d'un serveur
Asterisk
Sur l'écran principal refaites Echap et appuyez sur S pour
sauvegarder les changements.
Enfin tapez les commandes suivantes pour terminer
l'installation:
root@mustapha-presario-cq57-notebook-pc:/usr/src/asterisk/asterisk-11.10.2#
make
root@mustapha-presario-cq57-notebook-pc:/usr/src/asterisk/asterisk-11.10.2#
make install installroot@ubuntu:/usr/src/asterisk/asterisk-11.10.2# make
samples
|
46
Chapitre III: Implémentation d'un serveur
Asterisk
make permet la compilation du code source.
make samples (optionnelle) permet de créer des fichiers de
configuration de base. (Elle peut être utile par la suite pour revenir
à une configuration d'origine d'asterisk).
root@mustapha-presario-cq57-notebook-pc:/usr/src/asterisk/asterisk-11.10.2#
make config
Make config charge le serveur Asterisk au démarrage du
système.
Remarque : Pendant le make
install assurez-vous que votre serveur soit connecté à
internet parce que celui-ci va télécharger les package de langue
FR que nous avons sélectionnés.
? Démarrage du serveur
Asterisk
Lancement d'Asterisk à l'aide de la commande suivante:
root@mustapha-presario-cq57-notebook-pc:/usr/src/asterisk/asterisk-11.10.2#
/etc/init.d/asterisk start
|
Vous pouvez vérifier le bon fonctionnement de votre
serveur Asterisk avec la commande suivante qui sert à afficher la
console d'Asterisk
root@mustapha-presario-cq57-notebook-pc:/etc/asterisk#
asterisk -cvvvvvvvvvvr
On a l'affichage suivant: (c-à-d que notre serveur
Asterisk est démarré et fonctionnel)
Asterisk peut être lancé de 2 manières:
- En mode serveur (usage normal, à l'écoute des
requêtes des clients). Syntaxe: asterisk -vvvc
47
Chapitre III: Implémentation d'un serveur
Asterisk
+ Chaque 'v' demande un degré de verbosité, de
verbose à very very verbose.
+ 'c' nous donnera accès à une invite de
commande (nommée CLI pour commande line interface) qui permettra de
dialoguer avec le serveur une fois celui ci lancé.
+ 'd' mode debug.
- En mode client (en accédant à une console
permettant de dialoguer avec le serveur). Syntaxe: asterisk
-r
Cette console peut permettre d'obtenir des informations sur
l'activité du serveur, comme par exemple la liste des clients
connectés (commande 'sip show peers' en l'occurrence).
? Commandes du serveur
Pour connaître l'ensemble des commandes du serveur, vous
pouvez taper : help, une fois
connecté à la console Asterisk.
A chaque modification du fichier sip.conf, vous devez
exécuter la commande "sip reload"
pour recharger le fichier.
A chaque modification du fichier extensions.conf, vous devez
exécuter la commande
"extensions reload" pour recharger le
fichier.
Pour recharger l'ensemble du serveur, tapez la commande :
reload
Identification des fichiers de configuration
Une fois l'installation d'Asterisk est effectuée,
plusieurs fichiers sont créés :
+ /usr/sbin/ : Contient le fichier binaire d'Asterisk (programme
principal).
+ /usr/lib/asterisk/ : Contient les fichiers binaires qu'Asterisk
utilise pour fonctionner.
+ /usr/lib/asterisk/modules/ : Contient les modules pour les
applications, les codecs, et
les drivers.
+ /var/lib/asterisk/sounds/ : Contient les fichiers audio
utilisés par Asterisk, par exemple
pour les invites de la boite vocale.
+ /var/run/asterisk.pid : Fichier contenant le numéro du
processus Asterisk en cours.
+ /var/spool/asterisk/outgoing/: Continent les
appelssortantsd'Asterisk.
+ /etc/asterisk/ : Contient tous les fichiers de
configuration.
Ce dossier nous intéresse vu qu'il contient les fichiers
de configuration du serveur
Asterisk, parmi ces fichiers on trouve :
- asterisk.conf: Définit
certaines variables pour l'utilisation d'Asterisk. Il sert
essentiellement à indiquer à Asterisk où
chercher certains fichiers et certains
programmes exécutables.
- extensions.conf: Configure le
comportement d'Asterisk.
48
Chapitre III: Implémentation d'un serveur
Asterisk
- iax.conf: Configure les
conversations VoIP en utilisant le protocole Inter-Asterisk Exchange (IAX).
- rtp.conf: Ce fichier de configuration
définit les ports à utiliser pour le protocole RTP (Real-Time
Protocol). Il faut noter que les numéros listés sont des ports
UDP. - sip.conf : Il contient les informations
relatives aux téléphones sip.
Il est composé de plusieurs sections:
- une section [general] qui va définir les
propriétés générales pour l'ensemble des clients
SIP.
- une section par client SIP dans lesquelles seront
définit les propriétés de chaque poste.
7. Configuration d'Asterisk
Dans un premier temps, les 2 fichiers qui vont nous
intéresser sont 'sip.conf' et 'extensions.conf'
? Création des comptes
utilisateurs
La création des utilisateurs se fait donc dans le fichier
sip.conf On commence de mettre les sons par défaut en
Français.
Plusieurs options permettent de définir et de
paramétrer un client :
Fullname => Prénom et NOM de
l'utilisateur (ce qui sera afficher sur le téléphone lors d'un
appel)
Username => Si Asterisk agit entre un client SIP et un serveur
SIP distant, ce champ est
utilisé pour authentifier le message INVITE envoyé
par Asterisk au serveur (Identifiant de
l'utilisateur).
Type => il existe 3 types d'utilisateurs:
? user = peut appeler mais ne peut pas recevoir d'appel
? peer = peut recevoir des appels
? friend = peut appeler et recevoir des appels
Secret => Mot de passe de l'utilisateur
Host => il existe 3 types:
? dynamic : Le client s'enregistre auprès du serveur
49
Chapitre III: Implémentation d'un serveur
Asterisk
? nom d'hôte : Nom d'hôte du client
? adresse IP : Adresse IP du client.
Context => Contexte (Utiliser dans le
fichier extensions.conf)
Voici un exemple de fichier sip.conf avec deux utilisateurs
mustapha boumaza et
abdoohocine avec comme
numéros respectifs le 6001 et le
6002.
Une fois le fichier Sip.conf enregistré allez dans la
console Asterisk, tapez reload et après on tape la
commande sip show users, les deux comptes utilisateurs que
nous venons de créer devrait y apparaître.
8. Configuration de X-Lite :
X-Lite est un freeware, son utilisation est simple, il est
disponible pour les différents systèmes d'exploitation Windows,
Mac and Linux. On a utilisé la version de X-lite : 4.7.0
Pour configurer le client X-Lite l'utilisateur « 6001
» et aussi « 6002 » doivent accéder au menu «
Softphone » puis de ce menu vers le sous menu « Account
Settings».
50
Chapitre III: Implémentation d'un serveur
Asterisk
Figure III.4 : Fenêtre
du softphone X-lite
Dans la fenêtre qui s'ouvre, il suffit de remplir les
champs illustré suivant des deux
utilisateurs :
L'utilisateur : 6002
User ID : 6002
Domain : 192.168.1.10
Password : 1234
Display name : abdoohocine
Nom sous lequel l'autorisation d'accès est possible
(Authorizationname) : 6002
51
Chapitre III: Implémentation d'un serveur
Asterisk
Figure III.5 : Configuration
du compte du client « 6002 »
Remarque : l'authentification soit possible,
ces valeurs doivent être conformes à celles saisies dans le
fichier sip.conf du serveur Asterisk. Une fois la configuration est
achevée, le softphone se connectera automatiquement au serveur et
s'enregistrera. Un message «Available» s'affichera, indiquant que les
communications sont désormais possibles. Sinon, un message d'erreur
explique le motif qui a fait échouer le processus.
52
Chapitre III: Implémentation d'un serveur
Asterisk
Figure III.6 : Softphone
connexion disponible
Dans la console Asterisk, on tape la commande sip show
peers, les deux comptes utilisateurs que nous venons de créer
devrait y apparaître avec leur adresse ip.
9. Fonctionnalités :
a. Appel
? Configuration du Dialplan
Nous allons donc configurer Asterisk de telle sorte que
l'utilisateur 6001 puisse appeler le
numéro 6002.
La syntaxe du fichier extensions.conf est sous le format suivant
:
Exten => extension, priorité, commande
(paramètre)
- Exten : permet de définir une nouvelle
extension.
- Extension : C'est généralement le
numéro de téléphone ou le nom du client.
- Priorité : C'est un numéro qui indique
la priorité de la commande, le serveur prend en
considération la priorité de la commande en
utilisant le numéro inscrit dans la syntaxe.
53
Chapitre III: Implémentation d'un serveur
Asterisk
- Commande : C'est la commande qui peut exister, comme
la commande dial (appel), voice mail (boîte vocale), etc.
On peut utiliser plusieurs options pour un seul numéro
d'appel, on peut mettre par exemple un transfert d'appel vers un autre
numéro ou vers la boite vocale selon des priorités.
Voici donc le contenu du notre fichier extensions.conf
Donc la ligne : exten => _6XXX,1,Dial(SIP/${EXTEN},20)
se traduit par:
Quand on compose le numéro (par exemple) 6001, on appelle
le numéro 6001 et si au bout de 20 secondes il n'y a pas de
réponses on passe à la ligne du dessous.
Dans le cas du numéros 6001 la ligne devient comme ceci :
exten => 6001,1,Dial(SIP/6001,20), mais l'avantage de la ligne
précédente est qu'elle permet d'appeler les numéros de
6000 a 6999.
La seconde ligne : exten => _6XXX,2,Hangup()
permet de raccrocher si il n'y a pas de réponses au bout des 20
secondes.
Dans chaque ajout ou modification d'un client, il faut mettre
à jour le serveur Asterisk en utilisant la commande suivante dans la
console : reload
Pour faire les tests, il suffit d'appeler par exemple à
partir du compte de mustapha boumaza (6001) le numéro 6002.
Figure III.7 : Simulation d'un
appel
54
Chapitre III: Implémentation d'un serveur
Asterisk
b. Mise en place des boîtes vocales
On va éditer le fichier /etc/asterisk/voicemail.conf Voici
le contenu du fichier:
- format : Il est possible de définir
les différents formats dans lesquels seront sauvegardés les
messages vocaux. (Plusieurs formats séparées par
un | permettent de sauvegarder dans
plusieurs format)
- [work] : Contexte dans lequel se trouvent
nos utilisateurs
- 6001 =>: Numéro de
l'utilisateur
- vide, on n'utilise pas un mot de passe pour
accéder à la boite vocale
- mustapha boumaza: Prénom et nom de
l'utilisateur
Maintenant nous allons éditer le fichier
extensions.conf pour configurer deux choses :
- après certain temps
Asterisk bascule sur la boite vocale de l'utilisateur si celui-ci ne
répond
pas.
- Création d'une extension pour
créer le numéro qui servira à consulter la boite
vocale.
Voici le fichier extensions.conf
modifié :
On a remplacé la ligne : exten => _6XXX,2,Hangup() Par
: exten => _6XXX,2,VoiceMail(${EXTEN}@work) Cette ligne permet donc de
basculer sur la boîte vocale de l'utilisateur appelé s'il n'y a
pas de réponse au bout de 20 secondes.
55
Chapitre III: Implémentation d'un serveur
Asterisk
Explication de cette ligne:
exten => : On déclare l'extensions
_6XXX : Toujours les numéros de 6000
à 6999
2 : Priorité
VoiceMail: On lance l'application Voicemail
${EXTEN}@work : On récupère la
numéro mis en variable et on se connecte à la boite
vocale associé du contexte work (comme
précisé dans le fichier voicemail.conf)
On a aussi rajouté la ligne suivante:
exten =>
600,1,VoiceMailMain(${CALLERID(num)}@work)
Cette ligne sert à mettre en place un numéro pour
que nos utilisateurs puissent consulter leurs
boîtes vocales.
exten => : On déclare l'extension
600 : On déclare le numéro 600
comme numéro de messagerie
1 : Priorité
VoiceMailMain : On appelle l'application
VoiceMailMain
${CALLERID(num)} : On récupère le
numéros de l'utilisateur qui appelle pour se connecter
à sa boîte vocale
@work : on est toujours dans le contexte work
Lorsqu'on fait un reload de notre serveur Asterisk, on peut
déposer des messages vocaux
entre nos utilisateurs et faires en sortes qu'ils consultent les
messageries en appelant le 600.
c. Création d'un mot de passe crypté
Les mots de passe des clients SIP sont stockés en
clair dans le serveur Asterisk, et
peuvent être identifiés par plusieurs
méthodes :
- Dans le fichier SIP.conf, lorsqu'on
définit les mots de passe des utilisateurs:
Dans notre exemple le mot de passe de client 6001 est 1234
[6001]
Type=friend
Host=dynamic
fullname= mustapha boumaza
username = mustapha
secret=1234
context = work
56
Chapitre III: Implémentation d'un serveur
Asterisk
- La commande console : sip show users
Les mots de passe sont cryptés à l'aide de la
méthode MD5, utilisé comme couche de sécurité de
base. Voici la structure nécessaire pour la génération du
hash MD5 :
echo -n "utilisateur:Asterisk:motdepasse" |
md5sum
Des modifications seront nécessaires dans sip.conf pour
que la configuration soit fonctionnelle.
Dans notre cas on a crypté les deux clients 6001 &
6002, donc on change la ligne secret par
md5secret
Le résultat est le suivant :
- Avant cryptage :
57
Chapitre III: Implémentation d'un serveur
Asterisk
- Après cryptage
Dans les lignes des deux clients 6001 & 6002 les mots de
passe ne sont pas visibles.
d. Surveiller son système en lisant les logs
:
Les journaux d'activité d'Asterisk (ou fichiers de log)
sont classés dans le répertoire
/var/log/Asterisk.
On y retrouve des informations importantes, comme une erreur
survenue dans le programme
ou dans un de ses modules, les connexions qui arrivent
à notre serveur Asterisk.
Ces fichiers sont en fait des indicateurs de santé du
serveur Asterisk.
Le fichier le plus important pour l'administration et la
surveillance du serveur Asterisk est
/var/log/Asterisk/messages.
La configuration des journaux d'activité s'effectue
dans le fichier /etc/Asterisk/logger.conf.
Configuration du journal d'activité (fichier
/etc/Asterisk/logger.conf)
[general]
[logfiles]
console
=>notice,warning,error,debug,verbose,dtmf
messages =>notice,warning,error
Figure III.8 : fichiers de log
58
Chapitre III: Implémentation d'un serveur
Asterisk
e. Archivage
Pour éviter des fichiers de logs trop volumineux pour
Asterisk, il est judicieux de mettre en place une rotation de ces fichiers.
Pour l'archivage du journal d'activité logrotate est utilisé. Ce
programme vient en général s'installer avec le système
d'exploitation
On trouvera donc un fichier /etc/logrotate.d/Asterisk
destiné à archiver le journal d'activité. Archivage du
journal d'activité (fichier /etc/logrotate.d/Asterisk)
compress
/var/log/Asterisk/messages {
daily
missingok
rotate 30
sharedscripts
postrotate
/usr/sbin/rAsterisk -x 'logger
reload' >/dev/null 2>/dev/null || true
endscript }
Quelques explications sur les instructions de ce fichier
s'imposent.
Les archives sont compressées par le programme gzip et
suffixées par .gz.
Avec le journal d'activité, le fichier messages
existant dans la repertoir /var/log/Asterisk est
archivé.
Les archives sont réalisées quotidiennement et
trente jours d'enregistrement d'activité sont conservés.
Une fois les archives créées,
c'est-à-dire après l'exécution périodique du
programme logrotate, la commande console loggerre load est
exécutée (via le programme Asterisk) afin de créer un
nouveau fichier /var/log/Asterisk/message. L'instruction
sharedscripts permet de n'exécuter cette commande
qu'une fois, plutôt que pour chaque archive enregistrée.
f. Solution CDR (CALL Detail Record) dans Asterisk :
CDR (Call Detail Records) sont indispensables à tout
système de téléphonie d'entreprise, principalement pour
des raisons de sécurité. Ils contiennent en effet les
informations sur les appels traités par Asterisk (numéro
appelant, destination, durée de l'appel, etc.).
Avec l'authentification et le contrôle d'accès,
la traçabilité est le troisième pilier qui soutient la
politique de sécurité du système d'information dans
l'entreprise.
Pour le système de téléphonie, les
tickets de taxation sont les éléments de base qui permettront, en
cas de besoin, de vérifier l'utilisation du système, et donc
d'assurer la
59
Chapitre III: Implémentation d'un serveur
Asterisk
traçabilité des communications
téléphoniques. Asterisk dispose de plusieurs interfaces
d'enregistrement de tickets de taxation, auxquelles accèdent
différents modules.
La configuration de base du CDR est déjas présente
dans le fichier cdr.conf
Le module cdr_csv sera chargé au démarrage
d'Asterisk, sinon il est possible de le charger comme ceci :
Asterisk -rvvvvvvv Module load
cdr-csv.so
Pour confirmer que le module apparaît bien via la commande
console cdr show status. Les CDR seront enregistrés
dans le répertoire /var/log/Asterisk/cdr-csv/Master.csv. La figure
suivante montre le format général du fichier Master.csv
Figure III.9 : format
général du fichier Master.csv
Parmi les colonnes, nous retrouvons :
? Clid: l'ID de l'appelant
? Start : date de début de l'appel
? Answer: date de la réponse
? End : date de fin de l'appel
? Duration : durée total de l'appel
60
Chapitre III: Implémentation d'un serveur
Asterisk
Conclusion
Le but de ce type d'installation est de fournir des services
téléphoniques à des utilisateurs locaux ou distants avec
le principe de la VoIP, qui réduit considérablement les
coûts téléphonique de l'entreprise (réseau
convergé, capacité liaisons WAN utilisées, équipe
technique unique) ou de l'utilisateur (utilisation d'Internet au lieu du
réseau RTC ce qui réduit les coûts aussi).
Dans ce chapitre nous avons présenté
l'environnement matériel du travail, ainsi que les différents
logiciels open sources et leurs configurations adoptées pour mettre en
place les services de voix sur IP (VoIP) sous la plate-forme
Astérisk.
61
Conclusion générale
Conclusion générale
Au cours de ce projet, nous avons travaillé sur des
logiciels open sources pour aboutir à une plateforme VOIP à base
d'Asterisk riche en services de téléphonie sur IP et facilement
extensible.
Pour se faire, nous avons procédé, en premier lieu,
à une recherche théorique ciblée et consiste à
comprendre les notions de base que traite ce projet, à savoir les
avantages et les Inconvénients de la technologie VOIP, ses architectures
et ses protocoles.
En deuxième lieu, nous avons procédé
à une étude de l'existant menant à choisir une solution
adaptée aux besoins D'AIR ALGERIE et ses attentes en matière de
téléphonie.
Cette expérience enrichissante représente pour
notre futur professionnel un atout majeur dont nous ne manquerons pas de nous y
référer.
Références
[1] P. Ledru. Téléphonie sur IP. Edition Eni,
2011.
[2] P. Attelin , J. Dordoigne . Réseau informatique.
Edition Eni, 2006.
[3] T. Wallingford, J. Guerin. Switching to VoIP. Edition
O'Reilly Media, 2005.
[4] L. Harte, R.FLOOD. Introduction to Private Telephone
Systems,Edition Althos Publishing, 2005.
[5] B. Vial. TCP/IP pratique, Edition Micro Application,
2009.
[6] A. Meddahi, G.Vanwormhoudt. Téléphonie SIP.
Edition Hermes-science, 2012. [7]H. Mahamat Abdoulaye. Audit d'un réseau
VoIP et implémentation d'un client SIP sécurisé, Master,
TDSI, 2013
[8] IAX: Inter-Astersik eXchange version 2, Internet Engineering
Task Force, RFC 5456
[9] Hamid Mahamat Abdoulaye, Audit d'un réseau VoIP et
implémentation d'un client SIP sécurisé, Master, TDSI,
2013
[10]R. Bouzaida. Étude et Mise en place d'une Solution
VOIP Sécurisée, Master Professionnel, université de Tunis,
2011
[11]Y. Kalomba. Etude et mise au point d'un système de
communication VOIP, Université protestante de Lubumbashi,
Ingénieur en réseaux et télécoms, 2009
Sites Web
[12]
https://www.terena.org/activities/tf-vvc/voip-wsh/SIP-tutorial.pdf
[13]
http://docs.polycom.com/global/documents/whitepapers/codecs_white_paper.pdf
[14]
http://www.frameip.com/voip/
[15] VoIPAsterisk20071002/asterisk_voip_slides.pdf
Glossaire
ADSL Asymmetric Digital Subscriber Line est
une technique de communication numérique
(couche physique) de la famille xDSL.
CAA commutateur Autonomie
Acheminement
Faisceau hertzien est un système de
transmission numérique ou analogique, entre deux
points fixes par ondes électromagnétique de
l'espace.
IAX (Inter Asterisk
eXchange
ICMP Internet Control
Message Protocol
IPBX Internet Protocol
Private Branch eXchange
JPEG est l'abréviation de « Joint
Photographic Experts Group » et est un format très
utilisé
pour la conservation de photos.
MCU Multipoint Control
Unit
MGCP Media Gateway Control Protocol
MP3 acronyme de l'anglais MPEG Audio
Layer 3, Moving Pictures experts group
Audio
Layer 3) Format de compression numérique
dédié à la transmission rapide et au
téléchargement de fichiers musicaux sur
Internet
PBX Private Branch
eXchange
PSTN Public Switched
Telephone Network Le réseau
téléphonique commuté (ou RTC)
RAS Registration, Admission
Status
RTC Réseau téléphonique
commuté
RTCP Real-Time
Control Protocol
RTP Real-Time
transport Protocol
SDP Session Description
Protocol
SIP Session Initiation
Protocol
TCP/IP Transport control
Protocol Internet
Protocol
TELNET TELECOMMUNICATION
NETWORK
ToIP Telephony over Internet Protocol
UDP User Datagram
Protocol
VLAN Virtual Local
Area Network
VoIP Voice over Internet Protocol
VPN Virtual Private
Networks
|