Ce laboratoire est l’occasion d’implémenter les protocoles SIP/SDP et RTP avec des téléphones IP, en direct, et d’analyser leur trafic avec Wireshark.
Lectures préalables
Théorie SIP/SDP/RTP
La bonne compréhension du VoIP passe par celle de ses protocoles. Un cours complet est disponible sur le site « SIP and VoIP« . Une bonne lecture est conseillée avant tout laboratoire.
Arrière-plan
Avant d’entamer un déploiement avec un PBX IP comme Asterisk, il est intéressant de disposer d’un téléphone SIP logiciel comme Linphone afin de mettre en place le prototype d’un environnement VoIP de laboratoire. Mettre en place des périphériques SIP et d’apprendre à analyser le trafic VoIP sont les objectifs de ce laboratoire.
Les normes acceptables de trafic VoIP pour le protocole RTP sont :
- Delais (Max Delta) < 150ms;
- Max Jitter (gigue, variation de délai) < 20 ms;
- Packet Loss (pertes de paquets) < 5%.
Topologie
Deux machines adressées en IP comme illustrées hébergent un softphone SIP. L’une dispose du logiciel Wireshark.
Exercice
Cette exercice suppose que la connectivité TCP/IP est établie (au minum un service DHCP activé). Les adresses IP sont utilisées à titre d’exemple.
1.Capture du trafic.
Lancez la capture de paquets avec Wireshark et filtrez sur le protocole SIP et RTP :
SIP and RTP
2. Softphones.
Installez un softphone et lancez-le sur deux PCs ou smartphones. Au besoin utilisez une machine virtuelle. Désactivez tout pare-feu.
3.Initiation d’une session SIP directe.
A l’aide du téléphone IP, réalisez un appel avec l’entrée suivante plutôt qu’un numéro, par exemple de 192.168.1.220 à 192.168.1.117 :
<sip:192.168.1.117>
- Comment appelle-t-on cette occurrence ?
- Quel téléphone est UAC (User Agent Client) ?
- Et quel est l’UAS (User Agent Server) ?
4. Fin de la session SIP.
Répondez, générez du bruit, raccrochez. Arrêtez la capture.
5. Découverte du logiciel Wireshark.
Naviguez dans les menus de Wireshark pour analyse du trafic :
- Telephony>VoIP Calls>Flow
- Telephony>VoIP Calls>Player
- Telephony>RTP>Stream Analysis ..
- Telephony>SIP …
6. Analyse du trafic.
Comment se comportent les protocoles SIP et RTP. Quel est la qualité du trafic VoIP ?
- Quel est le premier message qui initie la session ?
- Générez un graphique de flux SIP de la session et les statistiques SIP.
- Délai : ____ ms
- Gigue : ____ ms
- Perte : ____ %
- Codecs supportés : ____, ____, ____, ____, ____
- Codec utilisé : ____
- Bande passante : ____
7. Usage d’un autre codec, capture et analyse.
Forcez l’usage alternatif d’un codec en configurant vos téléphones (G.711 au lieu de GSM ou inversément), recommencer la capture et un appel. Comparez la bande passante avec le nouveau codec. Quels sont les éléments pris en compte par ce calcul ?
- Codec utilisé : ____
- Bande passante : ____
Conclusion
- L’évaluation de la charge des conversations doit prendre en compte les en-têtes des protocoles sous-jacents UDP, IP, L2.
- La fonction primordiale du protocole SIP est d’établir une session entre agents.
- SDP négocie les capacités médias (codecs) des agents pour le transport RTP.
- RTP transporte le charge utile : la voix et la vidéo.
Vous constatez que la session SIP peut s’établir directement entre deux USER AGENTS sans IP PBX faisant office de REGISTRAR ou de PROXY SERVER. Ce sont justement ces deux éléments qui localisent et interconnectent les téléphones, à la manière d’un PBX. Les quelques AsteriskLabs qui suivent permettent d’étudier cet environnement. Le premier d’entre eux est « AsteriskLABs-0 : Installer un serveur VoIP de base« .



