travaux pratiques partie 1 (prologue) - annales.eirb.frre341] t_l_phonie__re5_a_ - autre -...

14
TRAVAUX PRATIQUES Partie 1 (Prologue) : Afin de connaitre la topologie du réseau, nous avons utilisé les commandes suivantes dans le prompt (en ligne de commande) : - «ipconfig» afin de connaitre notre adresse IP - «ping x.x.x.x» afin de vérifier si les différents postes sont joignables Partie 2 (Service de téléphonie simple) : 2.1 Premièrement, nous avons installé SJPHONE, logiciel gratuit et disponible sous linux, mac et windows. Celui-ci transforme notre ordinateur en téléphone SIP. Nous avons également testé de nous appeler au sein du groupe et de transférer des appels. SJPHONE utilise des ports afin de communiquer. Les ports suivants ont été relevé au moyen de TCPVIEW : 172.18.3.122 172.18.3.121 172.18.3.123 172.18.3.124 RE5-A « La téléphonie : Historique, Architecture et Evolution »

Upload: others

Post on 02-Sep-2019

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

TRAVAUX PRATIQUES

Partie 1 (Prologue) :

Afin de connaitre la topologie du réseau, nous avons utilisé les commandes suivantes dans le prompt (en ligne de commande) :- «ipconfig» afin de connaitre notre adresse IP- «ping x.x.x.x» afin de vérifier si les différents postes sont joignables

Partie 2 (Service de téléphonie simple) :

2.1 Premièrement, nous avons installé SJPHONE, logiciel gratuit et disponible sous linux, mac et windows. Celui-ci transforme notre ordinateur en téléphone SIP. Nous avons également testé de nous appeler au sein du groupe et de transférer des appels.

SJPHONE utilise des ports afin de communiquer. Les ports suivants ont été relevé au moyen de TCPVIEW :

172.18.3.122 172.18.3.121

172.18.3.123172.18.3.124

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 2: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

D’après la documentation SJPhone, les ports utilisées sont les suivants.

1719 UDP - H.323 Gatekeeper RAS port 1720 TCP - H.323 Call Signalling 1812 UDP - RADIUS server in SJphone 3478 UDP - STUN service3479 UDP - STUN service5002 TCP - MLP protocol server 5003 UDP - Neighborhood service5060 UDP - SIP UAS 5060 TCP - SIP UAS

Les ports réellement utilisés sont les ports: 5060 pour l'écoute SIP, 1720 pour la signalisation H.321 et 5003 pour la détection du voisinage. Les sockets en listenning sont celles dédiées à la réception d'appel.

La détection de voisin se fait par un broadcast sur le port 5003 et attends les réponses sur celui-ci.

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 3: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur le port 5003 pour la détection du voisinage.

Nous avons la liste des champs de l'entête de la trame Invite.

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 4: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

Le champ Via est utilisé pour enregistrer la route d'une requête, de manière à permettre aux serveurs SIP intermédiaires de faire suivre aux réponses un chemin exactement inverse.

Le champ Contact contient des informations diverses sur le contact, notamment son adresse IP

CseqIl est un identificateur qui sert à rapprocher.

Call-IDCe champ d'en-tête contient un identificateur globalement unique pour un appel.

Content-TypeCe champ d'en-tête décrit le type de média contenu dans le corps du message.Content-LengthIl s'agit du nombre d'octets du corps du message.

Longueur totale: 792 octetsType de la méthode d'appel: SIPVersion du protocol utilisé: 2.0les types des médias supportés : Audio

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 5: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

Les attributs sont les suivants:Media Attribute (a): rtpmap:3 GSM/8000Media Attribute (a): rtpmap:97 iLBC/8000Media Attribute (a): rtpmap:98 iLBC/8000Media Attribute (a): rtpmap:98 iLBC/8000Media Attribute (a): fmtp:98 mode=20Media Attribute (a): rtpmap:8 PCMA/8000Media Attribute (a): rtpmap:0 PCMU/8000Media Attribute (a): rtpmap:101 telephone‐event/8000Media Attribute (a): fmtp:101 0‐11,161ils décrivent les différents formats de médiasdécrits dans la ligne Media Description

L'agent appelé répond par des messages de type Trying puis, ringing:

Le code de l'information (100 et 180) de la forme 1xx nous montrent que ce sont des informations d'appel.On identifie les messanges grâce au champ CSEQ de l’en-tête SIP.

Les deux messages ont le callID suivant:Call-ID: [email protected]: [email protected]

Ceci sert à identifier l'appel comme nous l'avons vu précédemment. Nous savons donc que la session est la même.

B trouve l'adresse de A dans l'entête IP (avec le champ source) et dans l'entête SIP dans le champs FROM.

B envoie OK à A pour signifier l'acceptation de l'appel.

Acceptation d'appel: 200 OKRefus d'appel/Occupé: 486 Busy Here.

v=0o=- 3463378123 3463378123 IN IP4 172.18.3.123s=SJphonec=IN IP4 172.18.3.123t=0 0a=direction:activem=audio 16460 RTP/AVP 3 101

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 6: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

a=rtpmap:3 GSM/8000a=rtpmap:101 telephone-event/8000a=fmtp:101 0-11,16

ACK sip:172.18.3.123:5060 SIP/2.0V i a : S I P / 2 . 0 / U D P 172.18.3.124;rport;branch=z9hG4bKac12037c0000001c4ac476ce00005dec0000000eContent-Length: 0Call-ID: [email protected]: 1 ACKFrom: "Mogui"<sip:172.18.3.124>;tag=875271830448Max-Forwards: 70To: <sip:172.18.3.123>;tag=875500010805User-Agent: SJphone/1.60.289a (SJ Labs)

B signale à A qu'il accepte le GSM et A lui valide par l'acquittement qu'ils communiqueront en GSM.

Grace au payload type on voit que le codec utilisé est bien GSM.

18 6.118511 172.18.3.124 172.18.3.123 RTP PT=GSM 06.10, SSRC=0xB01FE54, Seq=28711, Time=0, Mark 25 6.172741 172.18.3.123 172.18.3.124 RTP PT=GSM 06.10, SSRC=0x42071BE, Seq=13789, Time=320

Le Cseq permet d'identifier un paquet. Au début de la communication, chaque interlocuteur choisit aléatoirement un numéro Cseq de départ, ce numéro est incrémenté à chaque nouveau message. Il est donc différent de chaque côté.

Le timestamp sert à identifier le moment ou s'insère le paquet dans le son. Si le timestamp vaut 20ms le paquet s'insérera à 20ms dans la lecture du son. En pratique, le timestamp est une horloge virtuelle dont l'unité est le hertz.

On remarque que le timestamp augmente de 160 entre 2 paquets. L'échantillonage du GSM 06.10 se fait à 8000Hz en qualité téléphone.

1 --> 8000 Hz --> 160 Hz

Une règle de 3 nous permet de déterminer la valeur du décalage en temps du paquet reçu dans le son. (20ms)

Le paquet IP a une longueur de 73 octets. On retire l'entête IP, 20 octets, l'entête UDP a une entête de 12 octets et RTP a une entête de 8 octets. Ce qui nous fait après une rapide soustraction, une charge utile RTP de 33 octets. L'overhead de charge utile RTP est de 40 octets.

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 7: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

L'augmentation du trafic est de 121% (40/33).

Pour annihiler ce problème on peut compresser les entêtes IP mais dans ce cas les équipements doivent être capables de lire les entêtes compressés (ils doivent supporter le ROHC) ou, nous pouvons augmenter la charge utile des paquets, ce qui aura pour conséquence d'augmenter le délai (dans ce cas on doit faire attention à ne pas dépasser le délai acceptable pour du conversationnel).

(1) Acceptation d’appel

B appelle A. A accepte la communication.

Invite

100 Trying

180 Ringing

200 OK

Ack

172.18.3.123A

172.18.3.124B

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 8: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

(2) Refus d’appel

B appelle A. A refuse l’appel.

Invite

100 Trying

180 Ringing

486 Busy Here

Ack

172.18.3.123A

172.18.3.124B

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 9: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

(3) Utilisateur occupé, ne répond pas

B appelle A. A est occupé.

Par défaut les événements sont transmis en RTP (selon la RFC 2833). Ils sont identifiés en tant que grace à RTPmap.Event. En Inband ils sont mélangés à la charge utile, on ne peut donc pas les dissociés de la voix en analysant la trame. On les différencie seulement grâce à la combinaison de fréquences des sons émis (un son aigu et un son grave) propre à chaque son. En InfoMETHOD, les événements sont transmis sous forme de requête dans le champs "signal" du corps de la requête, on obtient la touche appuyée ainsi que la durée de l'événement.

H323

à e x p l i q u e r a v e c h t t p : / / f r . w i k i p e d i a . o r g / w i k i / H .323#Cas_1_:_communication_.C2.AB_point_.C3.A0_point_.C2.BB_de_deux_clients_simples

Invite

100 Trying

180 Ringing

486 Do no disturb

Ack

172.18.3.123A

172.18.3.124B

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 10: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

En InBand comme précédemment, les touches sont dans le payload, on ne les différencie pas de la voix.

Partie 3 (Service d’enregistrement, de localisation des usagers et de proxy) :

Configuration du serveur proxy/enregistrement :

Configuration de SJphone :

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 11: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

Analyse des messages d’enregistrement et de dés-enregistrement avec le logiciel wireshark :

Message d’enregistrement

Concernant le message de dés-enregistrement, si le client se dés-enregistre, il envoie un message d’enregistrement avec une durée de bail à 0. Si le serveur dés-enregistre le client, aucune trame n’est envoyée pour informer le client. Celui-ci essaiera de communiquer mais il ne pourra pas. Il devra se ré-enregistrer.

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 12: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

La durée du bail est de 3600 s par défaut mais la durée de celui-ci est configurable dans le logiciel brekeke.

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 13: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

Quand le serveur est configuré en « redirect server » , toutes les trames d’enregistrement passent par le proxy mais les communications marchent de point à point. Alors que en mode «stateless proxy», l’enregistrement et les communications passent par le serveur.

Partie 4 (Fonctionnalités de PABX IP) :

Les services installés par 3CX sont les suivants :

•Le service SIP serveur : Ce service configure les appels utilisant le protocol SIP. Il execute les fonctions de PBX comme le transfert d’appel, l’acheminement d’appel...•Le service media serveur : Ce service execute le streaming de l’appel.•La console de gestion : Il permet d’accéder à une interface de configuration de 3CX. 3CX intégre un serveur Apache.•Le service Database serveur (postgresql) : Il s’agit d’une version ‘light’ du serveur de base de donnée.•Le service digital Receptionist : Ce service répond aux appels et offre différentes options aux interlocuteurs.•Le service Voice Mail Manager : Il permet de gérer les boites de messageries.•Le client Voip 3CX : Il s’agit d’un client léger permettant aux utilisateurs de gérer leurs extensions et appels depuis leur bureau. Les appels peuvent être passés en utilisant au choix le soft-phone intégré ou un téléphone SIP.

RE5-A « La téléphonie : Historique, Architecture et Evolution »

Page 14: TRAVAUX PRATIQUES Partie 1 (Prologue) - annales.eirb.frRE341] T_l_phonie__RE5_A_ - Autre - 2009.pdf · Nous voyons sur cette capture WireShark, l'envoie de trames en broadcast sur

RE5-A « La téléphonie : Historique, Architecture et Evolution »