Archives du mot-clé SIP

Qu’est-ce que le protocole SIP ?

SIP signifie Session Initiation Protocol. C’est un protocole de téléphonie utilisé pour établir, modifier et arrêter des appels téléphoniques VoIP. Le protocole SIP est décrit dans la RFC 3261.

Similaire au protocole HTTP, ce protocole est basé sur du texte, très ouvert et flexible. Il est à présent largement répandu et il est en passe de remplacer le standard H323.

Qu’est-ce qu’un URI SIP ?

Un URI SIP est le schéma d’adresse SIP utilisé pour appeler une autre personne, c’est à dire le numéro de téléphone SIP d’un utilisateur. Un URI SIP ressemble à une adresse e-mail et est écrit au format suivant :

URI SIP = sip:x@y:port
x=nom d’utilisateur et y=hôte (domaine ou IP)

Exemples :
sip: joe.bloggs@212.123.1.213
sip: support@phonesystem.3cx.com
sip: 22444032@phonesystem.3cx.com

Ce standard est défini dans la RFC 3261

Quelles sont les requêtes et réponses SIP ?

Pour établir les apppels, le protocole SIP utilise de simples communications basées sur des requêtes et des réponses.

Requêtes SIP

Il existe 6 différentes requêtes de base :

INVITE = établit une session
ACK = confirme une requête INVITE
BYE = termine une session
CANCEL = annule l’établissement d’une session
REGISTER = communique l’emplacement de l’utilisateur (nom d’hôte, IP)
OPTIONS = transmet des informations concernant les capacités des téléphones SIP émetteurs et receveurs

Réponses SIP

1xx = informations générales

  • 100 = tentative de connexion
  • 180 = sonnerie en cours
  • 181 = transfert de l’appel en cours
  • 182 = mise en file d’attente
  • 183 = progression de la session

2xx = succès

  • 200 = OK
  • 202 = accepté : utilisé pour l’orientation

3xx = redirection

  • 300 = choix multiples
  • 301 = déplacé définitivement
  • 302 = déplacé temporairement
  • 305 = proxy
  • 380 = service alternatif

4xx = échecs de requêtes

  • 400 = requête incorrecte
  • 401 = non autorisée : utilisée uniquement par les registrars. Les proxys doivent utiliser l’autorisation 407
  • 402 = paiement requis (reservé pour une utilisation ultérieure)
  • 403 = requête interdite
  • 404 = utilisateur introuvable
  • 405 = méthode non autorisée
  • 406 = non acceptable
  • 407 = authentification du proxy requise
  • 408 = délai de la requête dépassé : utilisateur non trouvé dans le temps accordé
  • 410 = désinscrit : l’utilisateur a existé, mais n’est plus disponible ici
  • 413 = requête trop volumineuse
  • 414 = URI de la requête trop long
  • 415 = type de média non supporté
  • 416 = modèle URI non supporté
  • 420 = extension incorrecte : l’extension du protocole SIP utilisée est incorrecte et ne peut pas être interprétée par le serveur
  • 421 = extension requise
  • 423 = intervalle trop court
  • 480 = temporairement indisponible
  • 481 = l’appel/la transaction n’existe pas
  • 482 = boucle détectée
  • 483 = trop de sauts
  • 484 = adresse incomplète
  • 485 = requête ambiguë
  • 486 = occupé
  • 487 = requête interrompue
  • 488 = non acceptable ici
  • 491 = requête en attente
  • 493 = indéchiffrable : impossible de déchiffrer la partie S/MIME du corps du message

5xx = erreurs au niveau des serveurs

  • 500 = erreur interne au serveur
  • 501 = non supportée. La méthode de requête SIP n’est pas supportée ici
  • 502 = passerelle incorrecte
  • 503 = service indisponible
  • 504 = délai de déconnexion du serveur
  • 505 = version non supportée. Le serveur ne supporte pas cette version du protocole SIP
  • 513 = message trop volumineux

6xx = échecs

  • 600 = occupé partout
  • 603 = refusé
  • 604 = n’existe pas
  • 606 = non acceptable

Exemple de sessions SIP entre 2 téléphones

Session SIP entre 2 téléphones

Un appel entre 2 téléphones SIP se déroule de la façon suivante :

  • Le téléphone émetteur envoie une requête INVITE
  • Le destinataire envoie une réponse 100 – tentative de connexion
  • Lorsque le téléphone du destinataire commence à sonner, la réponse 180 est envoyée
  • Lorsque l’émetteur décroche le téléphone, le destinataire envoie une réponse 200 – OK
  • L’émetteur répond ACK – acknowledgement (confirmation)
  • La conversion est transmise sous forme de données RTP
  • Lorsque le destinataire raccroche, une requête BYE est envoyée
  • L’émetteur envoie une réponse 200 – OK.

C’est aussi simple que cela !

Quels sont les différents types de téléphones VoIP/SIP ?

Il existe différents types de téléphones SIP :

Téléphones logiciels

Un logiciel de téléphonie SIP est un programme utilisant le micro et les haut-parleurs de l’ordinateur (ou un casque) pour passer et recevoir des appels. Exemples : SJPhone de SJlabs (http://www.sjlabs.com), Xten (http://www.xten.net) ou 3CX VOIP Phone for Windows.

Téléphones USB VoIP

Ces téléphones se branchent sur un port USB et fonctionnent par le biais de logiciels de téléphonie SIP/VoIP. Ils jouent le même rôle qu’un micro et un haut-parleur, mais comme ils ont l’apparence de téléphone normaux leur utilisation est plus intuitive.

Téléphones SIP matériels

Les téléphones SIP matériels fonctionnent de la même façon que des téléphones « normaux » mais ils sont connectés au réseau de données. Ils possédent un mini concentrateur (hub) permettant de partager la connexion réseau avec un ordinateur. Exemple : Grandstream (http://www.grandstream.com/).

Adaptateurs ATA

Il est également possible d’utiliser un téléphone analogique dans un système VoIP, par le biais d’un adaptateur ATA. Un adaptateur ATA convertit le signal analogique en signal numérique : le téléphone « traditionnel » apparaît alors sur le système VoIP comme un téléphone SIP.