Fonctionnement de SIP

Etant donné que le port principal de SIP est en UDP (5060), il est possible de déterminer les échanges entre un client et un serveur à l’aide d’une trace Ethereal ou TCPdump (logiciels de capture de trame).

Prenons un exemple concret, un client SIP dont l’adresse IP est 192.168.1.12 tente de dialoguer avec le serveur SIP dont l’adresse IP est 192.168.1.50 :

ip-ipbx

Les étapes :

1 : Le client tente de s’enregistrer auprès du serveur ; il lui envoie une requête (REGISTER).

2 : Le serveur répond 100 Trying (la requête a bien été reçue et est en cours de traitement).

3 : Le serveur répond 200 ok. L’enregistrement du client au serveur s’est correctement réalisé.

4 : Le serveur demande (NOTIFY) alors au client le nom de l’utilisateur 7114.

5 : Le client répond 200 ok, s’il est configuré en tant qu’utilisateur 7114.

 

Pour établir et terminer des communications multimédia, SIP utilise les 5 fonctions suivantes :

User location : permet de localiser le poste terminal utilisé pour communiquer.
User capabilities : détermine quels média vont être échangés (voix, vidéo, données…) ainsi que les paramètres associés.
User availability : détermine si le poste appelé souhaite communiquer et autorise l’appelant à le contacter.
Call setup ou  » ringing « : avertit les parties « appelant » et « appelé » de la demande d’ouverture de session (sonnerie ou message de réception d’appel) et mise en place des paramètres d’appel.
Call handling : gère le transfert et la fermeture des appels.

A chacune des couches de l’architecture SIP sont associés des protocoles tels que :

RSVP : c’est un protocole utilisé pour réserver les ressources réseaux sur IP avec une excellente qualité de service(QoS).
R.T.P : (Real-time Transport Protocol), utilisé pour transporter des informations en temps réel avec une excellente qualité de services.
R.T.C.P : (Real-Time streaming Control Protocol) utiliser pour assurer le contrôle de flux des données multimédia.
S.A.P : (Session Announcement Protocol) pour préciser si les sessions multimédia ouvertes le sont en multicast.
S.D.P : (Session Description Protocol) est un protocole de description des sessions multimédia.