Upload
best-wishes
View
3
Download
2
Embed Size (px)
DESCRIPTION
carte mentale protocole sip
Citation preview
Protocole SIP
Historique
Produit de l'IETF
Versions
SIPv1Work Group Multiparty Multimedia Session Control de l’IETF.
sortie en 1997
SIPv2
Sortie Mars 1999 (RFC 2543). 153 pages
Largement revue, complétée et corrigée en juin 2002 (RFC 3261). 269 pages
Des compléments ont été définis dans les RFC 3262 à 3265.
Plus de 100 extensions (RFCs) publiées et bien d'autres discutées
SIP bis est publié comme RFC3261 Juin 2002
SIP pour la Présence est Publié RFC 3856 Août 2004
Groupes de travail
SIP Novembre 1999
SIPPING
SIMPLE Mars 2001
XCON
Iptel Janvier 1998
Speermint Novembre 2005
Organismes de normalisation
IETF
3GPP2000 : décision d'utiliser SIP pour le controle d'appel dans les réseaux mobiles
2002 : 3gpp Release 5 définit l'IMS basé sur SIP
3GPP2
ETSI TISPAN SIP-based VoIP network for European Wireline
ITU-TSIP-based NGN – évolution of PSTN
SIP/ISUP gateway profiles
MSF
Adoption du protocole SIP
Avril 1999 8 Compagnies
Août 1999 16 Compagnies
Décembre 1999 33 Compagnies
SIP PortalsSipcenter.com
Sipforum.org
SIP Open Source Activities
Resiprocate – stacks, servers, test software
Vovida – SIP stacks
iptel.org – popular SIP Express Router (SER)
Asterisk – enterprise PBX
GNU Osip – stack
SIP ConferencesSIP Summit (pulver.com)
International SIP (Upperside)
SIP Books
Sinnreich, “Internet Communications Using SIP”
Camarillo, “SIP Demystified”
Johnston, “SIP, Understanding the Session Initiation Protocol”
Définition
Protocole de couche SessionProtocole de signalisation hors bande de session MultimédiaN’assure pas le transport des données utiles
CaractéristiquesSIP fonctionne selon une architecture client-serveur
Vise faciliter le développement de SVAs
Intérêt pour SIP
Bénéficie du succès de l'internet.
Similaire à HTTP Codage texte
SMTP
Cible un très grand nombre développeurs
ModularitéFacilité & Rapidité de développement des applications SIP
Intégration à d’autres protocoles
Simplicité
Fonctionnalités
Localise l'extrémité cible
Détermine les capacités média de l'extrémité cible
Détermine la disponibilité de l'extrémité
Intégrer quelques mécanismes de sécurité
Prend en charge le traitement d'appel
Établissement
Maintien
Modification
Gestion
Fermeture
Messages SIP
Formats
Ligne de début
Plusieurs entêtes
RôlesFournir des infos sur le message
Permettre le traitement du message
Types
En-têtes généraux
Utilisés indifféremment pardes requête ou réponse.
infos de base permettant letraitement du message
Ensemble de Champs
Syntaxe Nom_du_champs : valeur_du_champs CRLF
From une URI identifiant l'initiateur du message
Via Contient les adresses des serveurs traversés par la requête.
To une URI identifiant le destinataire initial du message
Call-ID identifiant unique de transaction
Cseq Numéro Type_de_requêteLe numéro est incrémenté àchaque nouvelle requête
En-têtes de requête,Contient les infos supplémentaires à destination du serveur SIP (UAS)
Permettant le traitement de la requête par celui-ci
En-têtes de réponseContient les infos supplémentaires ajoutées par serveur SIP (UAS)
Permettant le traitement de la réponse
En-têtes d’entité Définit le type et le format des infos contenues dans le corps du message
Genres
Bout en boutéchangés entre Uas terminaux
Exemples: Subject, Accept, Allow …etc.
Saut par sautsubissent un traitement à chaque noeud
Exemples: Route et Via
Corps Parfois absent
infos permettant la participation à une session
Codec, vitesse d’échantillonage
Destination (adresse IP, port UDP)
Nom de la session
Timestamps de début et fin de session
Autres types
Informations de Présence
Informations liée à la gestion de conférences
Informations de localisation
Messages ISUP (protocole de commande RTC) (SIP-I ou SIP-T)
Photos identifiant les participants à une session
Champs
v(ersion SDP)
o(rigin)
s(ession name)
c(onnection information)
t(ime of the session)
m(edia)
Un dialogue SIP
Échange de messages entre deux UAs ayant lemême identifiant
Plusieurs transactions peuvent être échangées
Famille Un échange requête + réponse(s) associée(s) constitue une transaction SIPLes messages de la transactionont un unique identifiant, Cseq
Types
Requêtes (ou méthode)
REGISTER Enregistrement des UAC
INVITEÉtablit une session
Modifie les paramètres d'une session établie entre UAs
ACKAcquitter une réponse finale à la requête INVITE
Confirme l'établissement d'une session
OPTIONS Demander à UAS ses capacités supportées (extensions, codecs …etc.)
CANCELAnnule une requête INVITEnon encore répondue
BYE Termine une session
Réponses
Provisoire
Finale
Syntaxe Empruntée à HTTP Numéro 'xyz' + texte explicatifUn code d’état (Status Code) qui est un entier sur 3 chiffre s
Une raison (Reason-Phrase) qui décrit textuellement la raison
Les réponses SIP
1yz ProvisionalLe traitement de la requêteest en cours
2yz Success
La requête a été bien reçue,comprise et acceptée (ex :200 OK)
3yz Redirection
Redirection vers une autreentité, d'autres actionsdevraient être entreprises
4yz Request failure
Erreur client, la requête estsyntaxiquement erronée oun‘a pu être traitée avec succes
5yz Server failureLe serveur n'a pu traiter unerequête valide
6yz Global FailureLa requête ne peut être traitéepar aucun serveur
Carte élaborée par
Noureddine IDBOUFKERProfesseur à l'ENSA de Marrakech
Université cadi Ayyad - [email protected]
Modes de signalisation
Direct signallingProxy call stateful signalling
Proxy stateful signallingProxy stateless signalling
Redirect signalling
Entités SIP
Les extrémités sont appeléesUser Agents
User-Agent Client (UAC)Application cliente qui initie une requête SIP.
User-Agent-Server (UAS)Application serveur qui retourne une réponse SIP
Architectures SIP
Serveur Registrar
Entité serveur
Accepte les requêtes REGISTER
Enregistrer l'association d'@ IP et identifiantsdans un serveur de localisation
L'enregistrement a une durée de vieSpécifiée par l'en-tête ‘Expire’
Le terminal envoie périodiquement de nouveaux REGISTER
Client indiquesa présence
sa position de localisation courante dans le réseau
Un utilisateur peut s’enregistrer sur plusieurs serveurs d’enregistrement en même temps
L'authentification SIP
demande à l'UA de s'authentifierEnvoi du code 401 (ou code 407)contient un "challenge
UA réémet la requête en incluant la réponse à ce "challenge«Réponse générée à partir du challenge et du mot de passe
Serveur génère la réponse à ce "challenge" et la compare à la réponse reçue de l'UASi les deux valeurs correspondentUA est authentifié
Requête est traitée
Proxy Server
Entité à la fois cliente et serveur
Fonctions
Authentification des abonnés
initier, maintenir et terminer unesession vers un correspondant.
Localiser un correspondant
Routage des messages SIP
Ne traite pas le RTP
Types
Proxy statefullMaintient pendant toute la durée des sessions l’état des connexions.
Proxy statelessAchemine les messages indépendamment les uns des autres, sans sauvegarder l’état des connexions.
Plus rapides et plus légers
Outbound proxyOù l’UAC doit envoyer les requêtesDans la configuration de l’UAC
Adresses IP d’un Proxy serverprimaire et d’un secondaire
Noms DNS d’un Proxy serverprimaire et d’un secondaire
Incoming proxyProxy server vers où envoyer les réponses
Plate formes
SIP Express Router (http://www.iptel.org/ser/) ;
Partysip SIP Proxy Server(http://www.nongnu.org/partysip/partysip.html).
Cisco SIP Proxy Server
Cinématique
Recevoir des requêtes SIP
Traiter chaque requête SIPEn envoyant une réponse SIP
En relayant la requête SIP verssa destination
Déterminer le next-hopUAS, Proxy server ou Redirect serve r
Consultation du Location Service
Forwarder la requête SIP
Redirect Server
Fonctions
Application serveur
intermédiaire entre le terminalclient et le serveur de localisatio n
Fournit au client l'information surle ou les prochains sauts
Cinématique
Recevoir des requêtes SIP
Traiter chaque requête SIP
Consultation du Location Service
Envoyer une réponse SIP
Où l’adresse de destination(to:) est remplacée par zéroou plusieurs nouvellesadresses
Serveur de localisation
Ne parle pas SIP
Base de données
Renseignée par Registrar
Compte Abonnées
Infos sur les Proxy servers et les Gatewa ys
Interface avec les serveurs SIPPas normalisée
LDAP (Lightweight Directory AccessProtocol, RFC 1777) préconisé
JDBC (Java DataBase Connectivity)…
Prend en charge un ou plusieurs domaines
Accès par les serveurs SIP
Registrar : mise à jour
Proxy server : consultation
Redirect server : consultation
Gateway SIP
Entité à la fois cliente et serveur
TermineLe canal de signalisation SIP
Parfois aussi le canal RTP audio/vidéo
Interfacer signalisation SIP/Autre signalisation (ISUP…)
Identification SIP
Respecte la RFC 3986 nommée URIFormat dérivé d’une adresses E-mail« sip:user@host »
“user”nom d’utilisateur
n° de téléphone
“host”
un nom de domaine,
un nom de host
une adresse numérique
Exemples d’URL SIP
Mohamed
+212524434547
Un utilisateur peut avoir plusieurs adresses SIP aboutissant toutes au même terminal