170 likes | 413 Views
RFC 3581. An Extension to the Session Initiation Protocol ( SIP ) for Symmetric Response Routing. Sommaire. SIP NAT Problématique SIP et NAT Call Flow Conclusion. SIP- Session Initiation Protocol. SIP est : Défini par l’IETF (Internet Engineering Task Force),
E N D
RFC 3581 An Extension to the Session Initiation Protocol ( SIP ) for Symmetric Response Routing
Sommaire • SIP • NAT • Problématique SIP et NAT • Call Flow • Conclusion
SIP- Session Initiation Protocol • SIP est : • Défini par l’IETF (Internet Engineering Task Force), • Référencé par la RFC 2543 puis par la RFC 3261. • SIP : • Est un protocole de signalisation de couche application • Permet l’établissement, la libération et la modification de sessions multimédias, • S’appuie sur un modèle transactionnel client/serveur.
SIP- Couche Transport • La couche transport est responsable : • De la transmission des requêtes et réponses sur le réseau, • Ports par défauts TCP/UDP: 5060 et 5070; TLS: 5061 • Gère le paramètre « sent by » ( adresse IP et port) des champs VIAs • Gère le rajout du paramètre « received » (adresse IP distante)
SIP- Architecture • L’architecture de SIP est : • Basée sur des relations UAC/UAS, • Composée de User Agent, Proxy Server, Location Server, Redirection Server, Registrar Server. • Les terminaux peuvent soit : • Communiquer entre eux directement • Par l’intermédiaire d’autres serveurs.
NAT- Network Address Translation • NAT est : • Défini par la RFC 3022, • Une solution à la pénurie d’adresse IPV4. • En sortie du NAT : • Association d’une adresse IP privée à une adresse IP publique • En entrée du NAT : • Remplacement de l’adresse IP publique par l’adresse IP privée • Les NAT sont : • NAT Statique, PAT/NAT Dynamique, Cône plein, Cône restrictif, Cône à port restrictif, NAT symétrique
NAT symétrique A chaque établissement d’appel d’Alice vers un utilisateur, une adresse IP et port publique est réservé à cette communication. Routeur NAT @IP public : 192.0.2.1 N° port : 9999 Routeur NAT @IP public : 192.0.2.1 N° port : 9988
Problématique SIP & NAT 1/2 • Problème de communication entrante • Les clients ne connaissent pas leur adresse IP translatée • Les entêtes des champs Via, From et Contact ne sont pas routables
INVITE INVITE INVITE 200 OK 200 OK Problématique SIP & NAT 2/2 Sip : user@exemple.com SIP/2.0 Via : SIP/2.0/UDP 10.0.0.1 :4540 ; branch=z… Sip : user@exemple.com SIP/2.0 Via : SIP/2.0/UDP : 192.0.2.1 : 9988 branch= z… Sip : user@exemple.com SIP/2.0 Via : SIP/2.0/UDP : proxy.exemple.com ; branch= z… Via : SIP/2.0/UDP :10.0.0.1 :4540 ; received=192.0.2.1 ; branch= z9… Via : SIP/2.0/UDP : proxy.exemple.com ; branch= z… Via : SIP/2.0/UDP :10.0.0.1 :4540 ; received=192.0.2.1 ; branch= z9…. Via : sip/2.0/UDP : 10.0.0.1 : 4540 ;received=192.0.2.1 branch=z..
INVITE INVITE INVITE 200 OK 200 OK 200 OK Call Flow RFC 3581 Sip : user@exemple.com SIP/2.0 Via : SIP/2.0/UDP 10.0.0.1 :4540 ; rport ; branch=z… Sip : user@exemple.com SIP/2.0 Via : SIP/2.0/UDP : 192.0.2.1 : 9988 ;rport ; branch= z… Sip : user@exemple.com SIP/2.0 Via : SIP/2.0/UDP : proxy.exemple.com ; branch= z… Via : SIP/2.0/UDP :10.0.0.1 :4540 ; received=192.0.2.1 ; rport=9988 ; branch= z9… Via : SIP/2.0/UDP : proxy.exemple.com ; branch= z… Via : SIP/2.0/UDP :10.0.0.1 :4540 ; received=192.0.2.1 ; rport=9988 ; branch= z9…. Via : sip/2.0/UDP : 10.0.0.1 : 4540 ; received=192.0.2.1 ; rport =9988 ; branch=z.. Via : sip/2.0/UDP : 10.0.0.1 : 4540 ; received=192.0.2.1 ; rport =9988 ; branch=z..
Conclusion • La RFC 3581 apporte une solution pour le NAT symétrique. • Pour les autres types de NAT, des solutions existent telles que : • STUN (Simple Traversal of UDP through NAT) • ICE ( Interactive Connectivity Etablishment) • TURN (Traversal Using Relay NATs) • UPnP (Universal Plug and Play)
SIP- Quelques URLs utiles… • http://www.ietf.org/rfc.html ( Base des RFCs ), • http://www.ietf.org/iesg/1rfc ( liste des RFCs et leurs status ), • http://www.rfc-editor.org/cgi-bin/rfcsearch.pl ( Recherche de RFCs ) • http://www.iptel.org/info/players/ietf ( RFCs et drafts par thèmes ), • http://www.cs.columbia.edu/sip/ ( Portail SIP de l’université Columbia), • http://www.sipforum.org/ ( SIP forum ), • http://www.sipit.net/ ( Accueil sur les « sipit: SIP interoperability test event » ), • http://www.pulver.com/products/sip/ (Portail VoIP : liste des produits SIP ) • http://www.voip-info.org/wifi-SIP ( Portail VoIP )
Questions Sinon, …..
QUIZZ • 1_Quelle est la RFC qu’on vient de traiter ? • RFC 3543 • RFC 3581 • RFC 3261 • RFC 3220
QUIZZ • 2_La RFC 3581 s’applique sur quel type de NAT : • Cône plein • Nat symétrique • Cône à port restrictif • Cône restrictif
3_Quel paramètre est traité par la RFC 3581? • TTL • Received • Rport • Branch
4_Quelle RFC traite du paramètre received ? • RFC 3261 • RFC 3543 • RFC 3581 • RFC 3220