View
123
Download
4
Category
Preview:
Citation preview
Introduction à la ToIP
Janvier 2008 – Master Pro RADI
2
Agenda
ToIP/VoIP Pourquoi sur IP ? Les business models Les services Les architectures
Les protocoles Les codecs H.323, SIP, MGCP Le bon protocole au bon endroit
Les architectures IMS
3
Vue d’ensemble
Les services
Architecture NGN
Les protocoles en jeu
Architecture IMS
4
Pourquoi la VoIP/ToIP ?
VoIP = Voice over IP Le Transport de la voix (ou de la Video) sur un réseau IP
ToIP = Telephony over IP Le service « Téléphonie » sur un réseau IP
Le transport de la voix, oui, mais aussi de quoi faire du PBX (Private <Automatic> Branch Exchange, commutation téléphonique privée) dans le réseau
Objectif: router un appel: f(A, B) = (A’, B’, IPB’) Avoir une ligne dès que l’on a un accès IP Convergence possible entre les services informatiques et téléphoniques (CTI par
exemple, Couplage Téléphonie Informatique = MEO d’applications téléphoniques et informatiques)
Un seul même réseau à manager Economie de coûts Ce n’est pas synonyme de plus de services
La VoIP présente sur certains backbones avant l’apparition d’offres ToIP Utilisée en cœur pas les opérateurs traditionnels
ToIP: l’opportunité pour les opérateurs data de proposer un autre service Utilisée comme service différenciateur, puis pour fidéliser A permis l’émergence d’opérateurs alternatifs Maintenant un « must have »
5
Enjeux et stratégies
Opérateurs traditionnels Les opérateurs historiques Peu d’engouement initialement, mais il a bien fallu suivre… Potentiellement un danger pour leur métier principal Ont raté le premier virage, mais vont se rattraper avec l’IMS ?
Opérateurs Alternatifs Opérateurs de data: On démarre en IP, on finit par de la voix Ca ne coute pas plus cher en exploitation, ce n’est qu’une application IP Ne fournit pas le service dit de « première ligne »
En particulier, numéros d’urgence A été un tremplin pour le dégroupage Possibilité d’être opérateur sans offrir l’accès IP (skype, les integrateurs, etc…)
La ToIP est maintenant un service de base Lorsque proposé avec peu de services, c’est équivalent à de la VoIP peer-to-peer
Mais le modèle centralisé permet plus Permet de facturer les services associés
Accès aux réseaux PSTN à tarif préférentiel (least cost routing au plus proche de la destination en IP)
CRBT (Colored Ringback Tone) Triple Play (Accès, Téléphonie, TV)
6
Les business models
Trois marchés: Le résidentiel Le monde de l’entreprise Le transit (interconnexion de réseau)
Des besoins différents et donc des approches différentes
Hormis pour le transit, la stratégie est la même Capter le client Lui faire utiliser de plus en plus de services
Et les faire payer
7
Vue d’ensemble
Les services
Architecture NGN
Les protocoles en jeu
Architecture IMS
8
Le monde résidentiel
A explosé grâce aux FAI devenus opérateurs alternatifs Free, le pionnier en France
MGCP en accès, mais en TDM en cœur Fastweb (Italie), pionnier du Triple Play
Fastweb est initialement un FAI (100Mbps en ethernet to the home) Propose une offre data + téléphonie + video on demand/télévision Switch possible en appel vidéo sur simple appui d’une touche sur sa set top
box Initialement en offre de 2eme ligne, maintenant 1ere
Les opérateurs historiques ont suivi Wanadoo/Orange, pas le premier mais le plus gros Stratégie de 2eme ligne initialement affichée Mais la migration est bien amorcée
~5.5 millions de lignes VoIP en France, +130% en 1 an ~50% des accès ADSL (chiffres 2006)
9
Le monde résidentiel (chiffres 2007) - www.arcep.f
http://www.arcep.fr/index.php?id=36&L=2%3Ftc-img%3Dy%2F%2Findex.php%3Fl%3Dhttp%3A%2F%2Fwww.the-esao.com%2Fimag%2F#13525
10
Les services résidentielsServices téléphoniques classiques
Eventuellement quelques évolutions sur le côté pratique Les services Voix sont extensibles à la Vidéo presque immédiatement (coût de la validation interopérabilité)
Services de classe 5 (différencié par appelant/appelé) Ce sont des services assurés par le réseau, et non pas par les terminaux CLIP/CLIR, CNIP/CNIR, COLP/CONP (affichage des numéros, des noms) Règles de redirections (CF – Call Forwarding)
CFB (Busy), CFNR (Non Response), CFU (Unconditional), CFF (on Failure) Renvoi des appels anonymes ou redirigés
Filtrage d’appels entrants, Filtrage d’appels sortants (contrôle parental) Numéro rapides/abrégés Voicemail (ou Vidéomail) dans le réseau, avec notifications mail Portails audio/vidéo/web de configuration des services de classe 5 Indications au décroché (en MGCP) CRBT (Colored Ringback Tone)
Transfert d’appels, mise en garde, double appelCCBS (Call Completion on Busy Subscriber), Express messaging (laisser un message explicitement,
sans faire sonner le poste appelant), pont de conférence personnelFonctionnel légal
LNP (Local Number Portability) Lawful interception (Service d’écoute téléphonique/vidéo/fax)
11
Le Business Trunking
Une première approche Entreprise en VoIP
Business Trunking L’opérateur démarche des entreprises qui ont des (IP-)PBX Se place alors en collecte des appels sortants
En les routant en IP sur son réseau, à moindre coût En assurant éventuellement le routage des appels entrants vers le site de l’entreprise
Premier contact avec le client N’impose pas le moindre changement d’habitude pour le client Il garde ses PBX, ses terminaux propriétaires et ses services Il peut déléguer la gestion du PBX à l’opérateur Et quand il devra renouveller son PBX, on lui proposera du Centrex, plutôt
Cette stratégie est dite « BT Class 4 » On ne fournit que des services de routage au client final Les services class 5 sont gérés par son PBX
12
Le Centrex
Le Graal de la ToIP d’entreprise
Service Téléphonique hébergé par l’opérateur Plus de PBX, plus de postes propriétaires ni de coûts de maintenance importants L’opérateur administre à distance chaque poste de l’entreprise Modèle d’abonnement par ligne avec location d’un terminal IP Pas de coût d’entrée ou de sortie Pas d’immobilisation pour le client, pas de maintenance locale d’équipement Les services évoluent avec le réseau Les équipements réseaux sont partagés entre les différents clients
Possibilité d’avoir du matériel dédié si nécessaire Packageable avec un accès data
Configuration locale des postes (déclaration des lignes, management des mapping de numéro, gestion des numéros internes) délégable à des administrateurs de site ou d’entreprise
13
Services d’entreprise
En Business Trunking, limités à ceux de Classe 4 Least cost routing (pour le client) Routage privé intra-entreprise (VPN VoIP) Local Breakout gateway LNP
En Centrex, ceux d’un PBX et plus Services indifférenciés en voix ou en vidéo CLIP/R, CNIP/R, COLP/CONP Masquage évolué de numéros Transferts/garde/conférence Call pickup (interception d’appel présenté) Groupement de postes CFNR/B/U/F Voicemail, Voice/Web Portal, FCA (Feature Code Activation) CCBS, express messaging Numéros abrégés Adaptateur CTI TAPI, click to dial Applications « standardiste » Services avancés en MGCP
Indications au décroché Indications visuelle sur le poste, navigation dans l’annuaire d’entreprise ou personnel, supervision de lignes,
application web quelconque sur l’écran du poste
Convergence fixe / mobile / présence / Messagerie instantannée
14
Les services de transit
Routage pur et dur (Class 4 routing) Interconnexions entre plusieurs réseaux d’opérateurs différents Pas d’utilisateurs finaux dessus Redondances des liens Time-based routing Least-cost routing
Au plus près de la destination ou au moins cher ASR (Average Seizure Ratio) Routing préférentiel en fonction des sources et destinations
En particulier sur du transit « VPN » Gestion LNP
All Call Query : the platform interrogates an external LNP database that returns information to identify the serving network. Then the call is directly sent toward the resolved provider.
Query on Release : the call is first sent toward the donor network. The call is released with Q.850 cause 14. A query to an external LNP database is then performed to retrieve information to identify the serving network.
Onward Routing (OR, France) the call is “forwarded” directly from the donor network to the serving network. The donor network always knows where the number was ported. This implies that the donor network always relay calls from the originating network to the serving network
Translation de protocole de cœur SIP/H.323 Permet d’interconnecter des réseaux avec des choix techniques différents
La plupart de ces fonctions sont également à assurer dans les réseaux « terminaux » (ayant une couche d’accès et des utilisateurs finaux)
15
Le routage VoIP
Routage A partir d’un appelant A et d’un numéro composé B, trouver:
L’adresse IP de la destination réelle (ce n’est peut-être pas B: renvoi, rejet, mauvais numéro) Savoir comment présenter A à la destination (transformation des alias) C’est le travail d’un communateur ou contrôleur d’appel (CCS chez Comverse LOB Netcentrex)
On utilise des numéros de téléphones dit « Alias E.164 » comme adresses ToIP En IMS, des adresses « sip/public » sont introduites
Trois niveaux de transformation de ces alias: Niveau « originating »: les numéros source et destination arrivant sur le routeur d’appel. La
destination dépend du plan de numérotation de l’appelant. Niveau « pivot »: numéros transformés uniques sur le système. Permet d’identifier l’appelant et
l’appelé sans ambigüité et de localiser leurs services de class 5, et router vers la bonne destination.
Niveau « terminating »: les numéros source et destination au format de l’appelé. Permet une bonne présentation du numéro (le cas échéant) à un format recomposable par l’appelé pour joindre son appelant.
Network Announcement La destination très souvent par défaut en cas d’erreur de routage
Faux numéro, numéro injoignable, numéro non alloué, appel rejeté par l’appelé, plus de crédit pour passer l’appel (prepaid), …
Gestion différenciée côté O (originating) ou T (terminating), réseau appelant ou appelé
16
Scalabilité, fiabilité
Les opérateurs attendent la même robustesse d’un système ToIP que d’un système traditionnel
Disponibilité: 99,999% (1 appel perdu sur 100 000 appels max)
Tous les sytèmes sont redondés et hot-swappables, avec systèmes de détections de pannes
Il doit être possible d’assurer la (forte) croissance de la demande en nombre d’appels simultanés et en calls/s (caps) (scalabilité) En VoIP, on ne parle plus de BHCA (Busy Hour Calls Attempts)
Mieux adapté aux modes circuit et non paquet Problèmes possibles de performances sur des solutions 100% logicielles Problèmes possibles de densité
Utiliser beaucoup de machine prend de la place et consomme de l’énergie Les opérateurs ne sont pas prêts à réinvestir autant qu’en téléphonie classique
Une voie tout de même : la virtualisation (vmware, Xen, etc…)
17
Les services media
Fournissent aussi bien des applications résidentielles que business
Des serveurs IP sont souvent présents derrière les applications en téléphonie classique En particulier en vidéo 3G
Les services media peuvent Etre hébergés dans le cœur de réseau (et faire partie de l’offre de base)
Voice/Video Portals de configuration de sa ligne Ou comme un endpoint comme un autre
Services audiotel, banque, …
L’explosion des services vidéo est à prévoir avec la 3G Et ce ne sont pas les appli bancaires qui vont y attirer les foules Très faciles à développer grâce à VoiceXML 2007, le marché n’a pas encore décollé – décollera-t-il?
18
Vue d’ensemble
Les services
Architectures NGN
Les protocoles en jeu
Architecture IMS
19
Next Generation Networking
NGN = Next Generation Networking Un réseau paquet (et non circuit) Offrant des services de télécommunications Décorélant la signalisation du transport
En pratique Un coeur VoIP
SIP ou H.323 Rendu accessible par les utilisateurs par un accès
ADSL Cable En IP
20
Architectures typiques
Les archi VoIP mettent en avant l’un des avantages de la techno La signalisation passe par un endroit
Un seul point de centralisation pour tout le contrôle d’appel Plus besoin de POP (Point Of Presence) Typiquement avec une redondance géographique
L’audio/video passe par un autre chemin, minimisant la bande passante en cœur, voire empruntant des chemins non managés par l’opérateur (sécurisation du trafic intra-entreprise par exemple)
Cependant des POP sont nécessaires Couche d’accès: plus on est proche du client final, moins on a de
latence sur les services réseaux (Centrex) Besoin de router le flux RTP pour traverser les NAT en interclients La signalisation « cœur » reste déportée et centralisable
Les architectures sont à adapter aux services proposés
21
Signalisation & Media (1)
A B
Access
Core Network
Signalling
Media
Core Protocol
Access Protocol
Cas de base
22
Signalisation & Media (2)
AB
Access
Core Network
Signalling
MediaWith Proxy
Core Protocol
Access Protocol
Cas dans le monde réel
Le seul à pouvoir passer les GW NAT résidentielles
23
Eléments réseaux typiques
Network APSTN, other VoIP
Network BPSTN, other VoIP
Core network:Signalling management
(CCS)
Edge GW,SBC
Edge GW,SBC
Access GW,SBC
AGK Registrar/Proxy
Call AgentIP-PBX
PABX
H.323endpoints
SIPendpoints
MGCP« endpoints »
endpoints
endpoints
MediaServers & services
IP-PBXendpoints
24
Les différents éléments d’archi
Utilisateurs Terminaux IP Softphones (sur PC ou terminal mobile) CPE (Customer Premises Equipment) = passerelle analogique, la « box » IP-PBX Media servers
Couche d’accès (Access equipment) Accès Gatekeeper (AGK) SIP Registrar, Proxy Session Border Controller (SBC) Access GW
Liée aux DSLAMs ou à un réseau Cable, managé en H.248 ou MGCP
Réseau cœur (Core) Call Controller (Call Control Server – CCS – chez Netcentrex) Media servers (services réseaux) Legal equipments (Lawful interception, LNP servers)
Couche d’interconnexion (Edge/Border equipment) SBC (défini plus loin) Passerelle (Gateway), convertisseurs de sig ou transcodeurs
Equipements opérateurs (service providers) OSS (surveillance), BSS (facturation, provisioning) En cœur ou en extérieur via des accès privilégiés
25
Les équipements utilisateur
« Residential Gateway » « Analog to VoIP converter », typically multi ports. This is a CPE (Customer’s Premises
Equipment), a part of the network that is located at Customer’s (livebox/freebox/nbox) Plug typical analog phone(s) or faxes on it. H.323 (ATA, Livebox), SIP (ATA, Zyxel AOL, …), MGCP (Audiocodes, Dlink, ATA, …) Typically used for residential or SOHO (Small Office - Home Office) market
Endpoints Full IP hardware (IPPhone), using SIP or H.323 protocol
MGCP gateways, aka MGCP endpoints MGCP-speaking, they are « gateways ». Full IP hardware (IPPhone), using MGCP
protocol, such as Swissvoice IP10s, Cisco 7940/60
Softphone Full IP software, H.323/SIP/MGCP protocol, that uses multimedia capabilities of the
hosting PC to add services that IP Phone may not render so easily (T.120, Video)
IP PBX Business Trunking
Media Servers IVR (Interactive Voice Response) servers for banking/services/entertainment
applications hosted by a content or service provider
26
La couche d’accès
On AGK H.323 endpoints (netmeeting, openphone, Siemens, e-conf…) These endpoints can also direclty attack the CCS, because using the same
protocol as the core network -> good for tests Registrations are managed by the AGK The AGK may also add additional authentication controls The AGK serves as a directory to locate a called endpoint (Fastweb model) AGK: Cisco 3600, OpenGatekeeper, RadVision GK, NeoXBC, …
On SIP Registrars (typically Proxies as well) Same as the AGK, but for the SIP protocol. SIP endpoints (IP10s, e-conf, Zyxel Residential gateways, …) May also routes the call signalling (the SIP Proxy function) Cisco 3600, SAU-SIP (with embedded SIP Proxy function and additional Class 5
services), NeoXBC, …
27
La couche d’accès (2)
MGCP Call Agent Controls MGCP « endpoints » Provides additional Class 5 services
Audio services (transfers/hold/conf3), CTI links May route the RTP streams
SBC/Access Gateways Route/Act as a proxy for calls to/from one or multiple IP-PBX Provides security features (filtering IP addresses, NAT, routing RTP) H.323 or SIP
A different protocol may be used in Access and Core layers Better security Better flexibility: the right protocol at the right place for the right services We’ll see later why SIP is not that simple and adapted to every situation
28
Le réseau coeur
Manage all the signalling between the border elements
Contrary to PSTN networks, VoIP core networks only manage Call Signalling, and not media
Core and access protocols may be different And they are – different requirements lead to different solutions
Include Network Announcement Servers (NAF) Protocol Translators Lawful Interception equipment, with standard interfaces (hi-1/2/3) Accesses to LNP databases
29
La couche d’interco
Edge Gateways Interconnect two networks Either VoIP/PSTN
ISDN or SS7 gateways These gateways may be H.323-registered onto an Edge Gatekeeper (EGK)
Or VoIP/VoIP SBC = Session Border Controller for a single point of control of the traffic
between the networks
They are redounded and scalable SBCs typically scale as an ALG (Application Level Gateway) and
multiple MP
SS7 gateways are typically MGCP-based. Thus, attached to a Call Agent which controls them and interfaces H.323/SIP
Core signaling May use SIGTRAN (SCTP) to control a Signalling Gateway and MGCP for a
Media Gateway.
30
Les équipements opérateurs
Surveillance réseaux Agents et clients SNMP
Firewalls, routeurs
Systèmes de provisioning Interface entre le système d’information de l’opérateur et les équipement de contrôle d’appel et
d’enregistrements Il n’existe pas d’API normalisée pour les déclarations/management des lignes/postes Interfaces selon les éditeurs de solutions VoIP
Systèmes de facturation Serveurs Radius (ou Diameter en IMS) souvent utilisés en conjonction avec les contrôleurs d’appels La facturation est un sous-système très complexe et essentiel
Notamment pour la traçabilité légale
Systèmes de distribution des fichiers de conf Les configurations statiques d’endpoints ne sont pas envisageables à grande échelle Typiquement ils sont bootés en DHCP puis vont récupérer des conf sur des serveurs FTP ou TFTP Leur permet de savoir où et comment s’enregistrer (sur AGK/Proxy/Call Agent) Rendu presque caduque en IMS (la notion d’endpoint n’existe plus vraiment)
31
Question surprise
Un(e) volontaire pour venir tracer les flux de sig et d’audio sur un appel sortant D’un endpoint derrière un PBX vers un réseau PSTN distant D’un endpoint derrière un Proxy/Registrar vers un endpoint sur
ce même Proxy/Registrar
32
Ex d’archi RésidentielleIGW-IN
201 & 202
203 & 204
3660
Telephone
Telsey
VoIP gateway
Telephone
Voip gateway
switch
VoIP 2621
PBX
FXS FXS
BRI NT
431Telephone Telephone
432
Telephone401
Ported Number0231xxxxxx
3660
201 & 202
203 & 204
3660
Telephone
Telsey
VoIP Gateway
Telephone
Voip gateway
switch
VoIP 2621
PBX
FXS FXS
BRI NT
431Telephone Telephone
432
Telephone401
Ported Number0231xxxxxx
3660
PSTN
IGW-OUT
IGK-IN
IGK-OUT
PRI
PRI
SS7
Gateway SS7
AGW
NetCentrex
Gatekeeper 01 Gatekeeper 03Gatekeeper 02 Gatekeeper 04
NCX-Caen-Nord NCX-Caen-Sud
102101 101 102
0231xxxxxx
0231xxxxxx
FXS111
FXS111
FXO
121
FXO
121
33
Exemple d’architecture (2)
Site 1 MGCP IP DomainBS : Managed by SAU
BS NATed siteMGCP Domain
Managed by SAU through SBC
MGCP IP DomainBS : Managed by SAU
BS Trunk
PSTN GW
Remote Subscribers
BS Trunk
BS Trunk
SBC
10.165.2.x
o10.165.2.x
10.165.2.x
AGK01
AGK02
10.5.0.11
PTU
10.165.2.x
Site 2
Site E2 2
Site E2 1
34
Vue d’ensemble
Les services
Architectures NGN
Les protocoles en jeu
Architecture IMS
35
Les protocoles VoIP
La signalisation & le transport temps réel
Trois grands protocoles H.323 (ITU)
Celui qui a rendu les choses possibles
SIP (Session Initiation Protocol) (IETF) Celui qui s’impose maintenant grâce à IMS et à sa complexité croissante
MGCP (Media Gateway Control Protocol) (ITU et IETF) Se remplacera (peut-être) volontiers par du H.248/MEGACO en IMS
Signalisation Etablissement de la logique d’appel
H.323/H.225, SIP, MGCP
Négociation des canaux de transmissions temps réel (voix ou vidéo ou data) H.323/H.245, SDP
Transport temps réel… RTP (Real Time Protocol) – udp RTCP (Real Time Control Protocol) – udp Utilisé par tous les protocoles de signalisations
… de données encodées via des Coders Indépendant du protocole de signalisation
36
Les protocoles VoIP
IPv4, IPv6
TCP UDP
H.323 SIP
RSVP(Resource Reservation
Protocol) RTCP
RTP
Media coders (H.264, G.711a)
Signaling Quality of Service Media Transport
Net
wor
kTr
ansp
ort
Appl
icat
ion
MGCPH.248
37
Les contraintes temps réel
Le transport de la voix doit se faire en moins de 200ms pour un confort optimum Numérisation/Compression/Transport/Décompression/Restitution
Il faut donc des postes et un réseau performantDe la QoS peut se mettre en place à plusieurs niveaux
Priorisation de flux (VLAN tagging) Très bien pour de l’ethernet, donc du local. Permet de garder de la BP
par rapport à la data locale d’une entreprise.
DiffServ (et plus généralement TOS – Type Of Service) Header IP, mais doit être supporté de bout en bout. Utile localement ou
sur un réseau IP parfaitement maitrisé.
MPLS (Multi Protocol Label Switching) (couche liaison sous IP) Pour les réseaux opérateurs.
38
Les codecs
Les codecs audio G.711
64 kbits, 8Khz / 8 bits non compressé. Excellente qualité. Existe en 2 lois d’encodage: alaw (plutôt européen) et ulaw (plutôt américain) Supporté par tous les postes. Pas de perte depuis le PSTN (l’ISDN l’utilise).
G.729 G.723 Et bien d’autres encore Les endpoints doivent supporter ces codecs
Moins ils en supportent, moins ils sont chers. Les standards imposent des supports minimum (AMR faible qualité, G711)
Les petits plus Détection & Compression des silences (35% d’une conversation) Bruit de confort (Comfort Noise) pour compenser
39
Les codecs (2)
Codeur TechniqueTemporelle
PCM
TechniqueTemporelleMICDA
Analyse et synthèseRPE-LTP
Analyse et synthèseCELP
ParamétriqueLPC
Analyse SynthèseLD-CELP
Analyse et SynthèseCS-CELP
Analyse etsynthèse
MP-MLQ-ACELP
Norme/standard
G.711 G.726 GSM06-10
DODFS1016
DODLPC10 FS1015
G.728 G.729 G.723.1
Débit 64 kbits/s 32 kbits/s 13 kbits/s 4,8 kbits/s 2,4 kbits/s 16 kbits/s 8 kbits/s 6,3 et 5,3 kbits/s
Qualité (MOS Mean Opinion Score)
4,2 4,0 3,6 3,5 2,3 4,0 4,0 3,9/3,7
Délai codeur+ décodeur
125 µs
300 µs
50 ms 50 ms 50 ms 3 ms 30 ms 90 ms
ComplexitéMIPS (Million instructions / s)
0,1 12,0 2,5 16,0 7,0 33,0 20,0 16,0
40
Les codecs vidéo
H.261 pour les anciens vidéophones ISDN H.320 Multiple de 64kbits (canal D ISDN) QCIF (176x144) ou CIF (352x288) (CIF = Common Intermediate Format et Q = Quart ) Audio en sus (G.723 ou G.729)
H.263 Similaire au H.261 mais permet de descendre en dessous de 64kbits SQCIF 128x96 (SQ = Sous Quart) QCIF 176x144 Optionnels:
CIF: 352x288 4CIF: 704x576 16CIF 1408x1152
Audio en sus (typiquement de l’AMR narrow band) On peut l’utiliser en QCIF en H.324m (transit vidéo sur de l’ISDN, utilisé en interco 3G): il reste alors
43 kbits pour faire passer la vidéo, et ça marche ! Existe en version H.263+ (v2), recommandé en 3GPP
H.264 IUT + MPEG = ISO/IEC 14496-10/MPEG-4 AVC (Part 10) = H.26L En QCIF, entre 50 et 100 kbits Utilisé aussi en HD Très consommateur en ressource Audio typique: AAC ou AMR large band Commence à s’imposer dans les faits, mais non imposé par les standards
41
Les codecs data
T.120 Data temps réel. Utile pour les white boards ou les partages de documents.
T.38 Fax compressé en VoIP Alternative à l’utilisation du G.711 (« pass-through ») (on ne peut
pas compresser en G.729 ou G.723 un signal fax analogique) Une négo T.38 démarre en audio, puis on switche sur du T.38.
42
Les protocoles de contrôle d’appel
Deux grandes familles de protocoles Intelligence dans le poste
SIP, H.323
Poste “bête” (et intelligence dans le réseau) MGCP, H.248/MEGACO
Dans tous les cas, l’établissement est en 3 phases Ouverture de session
H.225[+RAS], SIP, MGCP Routage d’appel
Négociation des codecs et des flux (canaux) H.245, SDP Vérification des droits des codecs, QoS, RACS
Echanges des flux RTP (audio/video/data) RTP/RTCP Media Proxy (pour passer les NAT par exemple)
Tout plein de finesses Transmissions des informations d’ouverture de canaux décalés dans le temps
Mode “fast connect” (faststart) ou “slow start”
Ouvertures de canaux semi-directionnelles Remote ringback tone, …
Renégociations de flux Ouvertures de nouveaux canaux (ajout de vidéo), changement de codec, transferts, …
43
H.323
Protocole ITU qui en est à sa version 5Il paraît qu’il est complexe
Il y a plus simple, c’est sûrIl paraît qu’il est mort car SIP le remplace
2006: Mais H.323 sait faire ce que SIP n’a jamais su faire: il assure l’interco avec le monde ISDN. De fait, H.323 est le protocole le plus utilisé en cœur de réseau.
2007: ok, SIP le remplace car promet une migration plus facile vers l’IMS et ses nombreuses extensions le rende aussi complexe. Cependant les opérateurs qui ont investi il y a 5 ans dans le cœurs H.323 ne lachent pas comme ça.
Un set de protocoles sous-jacents H.225: signalisation de contrôle d’appels. Utilise beaucoup de Q.931 (le niveau 3 ISDN). TCP/1720. H.245: signalisation de contrôle des canaux. TCP/port variable. RAS: contrôle d’appel et gestion des enregistrements sur des Gatekeeper. UDP/1719 et multicast
1718. RTP/RTCP pour le flux temps réel. H.450.x: services supplémentaires. Tunnelé en H.225. H.235: framework de sécurité. Trop vague et complexe pour être exploité dans le monde réel.
Codé en ASN.1 PER Très dans le style ITU, mais pas facile à programmer/encoder -> terminaux coûteux. Mais aucune ambigüité de parsing des messages Beaucoup de nuances d’implémentations font que:
H.323 n’est jamais implémenté en sa totalité L’essentiel est d’assurer l’interco avec les équipements existants.
44
H.323: les entités en jeu
Campus GatewaySwitch / Router
GatewayTranslation of data
and signaling
Internet
H.323 Terminal
H.323 Terminal
Address TranslationAdmission ControlBandwidth ControlZone Management
Gatekeeper
Enterprise Network
PSTNISDN
MCUMultipoint
Conferences
Wireless
45
H.323: vue d’ensemble
Les cas les plus classiques d’utilisations actuelles Mode dit “Indirect”
On passe par une entité, le GK, pour résoudre l’IP de notre destination On utilise le protocole RAS pour s’enregistrer et demander à passer notre appel
Gestion des associations IP/Aliases RRQ/RCF ou RRJ, avec vérification H.235 possible
Demande d’Admission ARQ/ACF ou ARJ, côté appelant et appelé Permet l’allocation de la BP L’ACF donne l’IP à utiliser (résolution alias/IP) pour la partie Q.931
Fin d’appel DRQ/DCF, côté appelant et appelé Désalloue les ressources de BP Demande de faire confiance à l’endpoint
La partie Q.931 est dirigée vers un équipe de routage et non vers la destination Pour application des services Class 5
Mode dit “Slow start” La négo des canaux en H.245 se fait explicitement dans un second temps, après la Q.931
Mode dit “Fast start” Une négo minimale des canaux H.245 se fait en tunnel lors de l’établissement Q.931
46
Messages Q.931
Messages Q.931 typiques (tcp/1720) -> Setup
callingPartyNumber -> calledPartyNumber [redirectingNumber] sourceAliases -> destinationAliases callID et confID comme corrélateurs d’appels
Multiplexage possible dans une même connexion tcp <- Call Proceeding
Optionnel [confirmation de prise en compte du traitement du message Setup]
<- Alerting [ok, le poste sonne] Déclenche un ringback tone sur l’appelant
<- Connect [ok, le poste a décroché] Maintenant, on peut négocier les flux, on transmet donc une adresse H.245
… <- ou -> Release Complete
Fin d’appel, avec une cause Q.850 utile lors d’un échec de connexion, donc avant un Connect
Messages additionnels intéressants <- Progress
[ne change pas la machine à état de l’appelant] [permet de déclencher une négociation de flux pour un ringback tone distant par exemple]
-> et <- Facility Permet de déclencher une ouverture H.245 si l’adresse H.245 n’a pas été transmise avant Permet aussi de tunneler du H.245 si le mode “H.245 tunneling” est supporté (évite une autre connexion TCP dont le port
n’est pas maitrisé par les firewalls)
47
Messages H.245
Messages de bases (tcp, port variable tel que négocié en H.225/Q.931) -> et <- TCS (Terminal Capability Set)
On annonce les capacités que l’on sait recevoir Via des structures d’arbres (des set)
Par exemple (vidéo basse qualité et audio basse qualité) OU (audio haute qualité) Un dans chaque sens Acquitté par un TCS Ack Il est dit “Null” si le TCS ne contient aucune capacity; permet alors la renégociation de flux
-> ou <- MSD (Master Slave Determination) Ne sert plus à rien en pratique, utile pour les services multi points, pour les échanges de clés H.235
-> et <- OLC (Open Logical Channel) Ouvre un canal pour envoyer un codec parmi ceux que l’autre partie a transmis dans son TCS (en
indiquant un RTCP/RR) On répond par un OLC Ack qui indique sur quel port RTP on veut recevoir le flux (plus RTCP/SR),
lorsqu’on est prêt -> et <- UserInputIndication
DTMF, sur un canal déjà ouvert
En mode FastStart, un OLC est donné dans le Setup Et un autre “retour” dans l’Alerting ou Progress ou Connect Une négo H.245 a toujours lieu post Connect au plus tard
Pour négocier par exemple les channels DTMF
48
Call Flow H.323 (Slow start, non RAS)
TCP connection
SETUP
Connect (H245 Address)
TCP connection
H245 Messages
Open Logical ChannelsRTCP address
RTP &RTCP addressesRTCP address
RTCP & RTP addresses
RTP streamRTP streamRTCP stream
H.225(over TCP)
H.245(over TCP)
Media(over UDP)
Alice Ip:10.2.3.2 Bob Ip : 10.2.3.4
49
Enregistrements RAS
Endpoint A GK Endpoint B
RRQ (IPA, telA)
RCF
URQ (IPA, telA)
UCF
RRQ (IPB, telB)
RCF
50
Call flow sur une architecture réelle
Les Registrations et Admissions se font sur les AGK Côté endpoints exlusivement Les RRQ génèrent beaucoup de trafic, les AGK sont là pour les absorber (et les
traiter) Il faut 1 AGK pour 2k à 10k endpoints. Les déploiements réels peuvent en utiliser plusieurs centaines pour un seul
contrôleur d’appel.
Les seuls messages RAS dans le cœur de réseau sont des LRQ (Location Request) Permet aux AGK de savoir à quel contrôleur d’appel s’adresser
Gestion des redondances Répartition de charge Gestion de zones
Permet au cœur de réseau de connaître l’IP de la destination On se sert des AGK comme des annuaires (alias -> IP)
Les AGK peuvent aussi intégrer une fonction de Media Proxy Dans ce cas, il faut qu’ils puissent capturer le H.225 (pourquoi ?)
51
Call flow sur une architecture réelle (2)
Endpoint A AGK CCS AGK Endpoint B
Alerting
ARQ
ACF
Setup
H.245 + RTP
Release Complete
DRQ/DCFDRQ/DCF
LRQ/LCF
LRQ/LCF
Call Proceeding
Connect
Setup
ARQ/ACF
52
Call flow sur une architecture réelle (3)
Endpoint A AGK/Proxy CCS AGK/Proxy Endpoint B
Alerting
ARQ
ACF
Setup
H.245 + RTP
Release Complete
DRQ/DCFDRQ/DCF
LRQ/LCF
LRQ/LCF
Call Proceeding
Connect
Setup
ARQ/ACF
53
SIP: vue d’ensemble
Standard IETF A l’origine très simple et séduisant
RFC2543 Codage texte, lisible par l’homme Peu de messages
Puis remplacé par la RFC3261 Corrige quelques bugs & comportements précis Ajoute le support obligatoire de TCP
Avec switch de UDP vers TCP dès que l’on dépasse une certaine taille de paquet Typiquement le dépassement de MTU-200 (fragmentation IP)
De nombreuses RFC viennent se greffer dessus Rajoutant du fonctionnel
Modèle de Subscribe/Notify (utilisé pour la présence, entre autre) Instant Messaging Tunneling ISUP/SS7 (SIP-T, SIP-I) Support des tel-URI Lourdement amendé pour les besoins d’IMS
Et donc de la complexité On ne dit plus “SIP compliant” mais il faut lister les RFC que l’on supporte
54
SIP: les entités en jeu
Endpoints (softphones, IP Phone, CPE, …) Intelligentes, fournissant des services de renvois, transferts, voire conf3 Mais très difficiles à faire interopérer de part toutes les nuances de SIP
Proxy Relaie les messages de sig d’appel Il existe les implémentations “stateless”, qui forwardent sans garder de contexte
d’appels Et des “stateful”, plus intelligentes, pouvant fortement influencer l’appel par
l’ajout/délai de services L’implémentation la plus courante est maintenant dite B2BUA (Back to Back User
Agent) Registrar
Se contente de gérer les enregistrement (REGISTER), ie le mapping IP (Contact) / Alias (SIP URI); va alors updater un Location Server avec cette info
Redirect Server Fonction typiquement associée à un Registrar + Location, fournissant via un 302
MOVED l’IP à joindre pour joindre une SIP URI Location + Registrar + Redirect = Equivalent d’un AGK
Dans le monde réel, on trouvera plutôt toutes les fonctions sur un même équipement
55
SIP terminal
SIP Proxy Server
SIP terminal
SIP Redirect Server
SIP Registrar
SIP Location Server
IP Network
SIP Architecture
56
SIP, structure
Notion de transactions Un peu comme en HTTP A une requête doit correspondre une réponse
Provisoire (une ou plusieurs): 1xx 100 Trying, 180 Ringing, 183 Session Progress, …
Finale (finit la transaction) 2xx success (200 OK) 3xx redirection 4xx client en erreur 5xx serveur en erreur 6xx erreur globale (souvent détournée)
Même Cseq pendant toute la transaction Requêtes existantes:
RFC3261 INVITE, BYE, ACK, CANCEL, REGISTER, OPTIONS, INFO
RFC additionelles MESSAGE, PUBLISH, NOTIFY, SUBSCRIBE, PRACK, REFER, UPDATE
Notion de dialogue Certaines transactions ouvrent un Dialogue
INVITE (fermé par un BYE ou CANCEL) Durant lequel d’autres requêtent peuvent exister
BYE, OPTIONS, INFO par exemple Certaines requêtes peuvent exister qu’à l’extérieur de dialogues, d’autres dans ou à l’extérieur (OPTIONS) Deux transactions d’un même dialogue ne doivent pas se chevaucher
57
Transaction & Dialogue SIP
Mark John
INVITE
180 RINGING
200 OK
ACK
BYE
200 OK
Media Session
Transaction1
Transaction2
Transaction3
Request
Provisional Response
Final Response
SIPDialog
58
Messages SIP
Messages textes en 3 parties, UDP ou TCP, port par défaut 5060
Une Request Line <METHOD> <request-URI> SIP/2.0
OU une “Response Line” SIP/2.0 <code> <label>
Header: Plusieurs Headers Fields, dont l’ordre importe <header>: value 6 Headers obligatoires, dans tous les messages (Request ou Response)
Un body optionnel
INVITE sip:bob@biloxi.com SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhds Max-Forwards: 70 To: Bob <sip:bob@biloxi.com> From: Alice <sip:alice@atlanta.com>;tag=1928301774Call-ID: a84b4c76e66710@pc33.atlanta.com CSeq: 314159 INVITE Contact: <sip:alice@pc33.atlanta.com> Content-Type: application/sdp Content-Length: 142
<un body SDP que l’on verra plus tard>
59
Enregistrement
REGISTER Associe un alias (From = To = Request URI) A un point de Contact
Contient une IP ou hostname, plus des tags Sip:192.168.1.2:5067 Sip:user01@adsl1234.serviceprovider.com:5060
Gestion des TTLs, min TTL Annulation des enregistrement avec un TTL nul Possibilité de mécanisme d’authentification
Technique HTTP par Challenge MD5
Endpoint A Proxy/Registrar
REGISTER
100 Trying
200 OK
Endpoint A Proxy/Registrar
REGISTER
401 Unauthorized+ challenge
REGISTER + response
200 OK
60
Routage des messages en SIP
Via Header Utilisé dans une requête, permet de router la réponse Header multiple, le plus récent en haut, empilé lors du forward de la request, dépilé lors du forward de la
response à travers des proxies non B2BUA
Route Header Utilisé dans une requête, permet de savoir où l’envoyer après
Il existe un mode “Strict Routing” L’entité qui forwarde le message supprime le route header qui lui a permis de savoir où envoyer
le message Et “Loose Routing”
L’entité qui forwarde le message conserve le route header Le plus commun maintenant, permet à la dest d’avoir des infos en plus
Contact Header Obligatoire dans tous messages pouvant amener à l’ouverture d’un dialogue En l’absence d’un Record-Route, permet de savoir où envoyer un message dans un dialogue
Record-Route Header Utilisé dans une réponse (ou requête) pour indiquer où router les prochaines requêtes du dialogue Puis recopié dans les prochaines requêtes du dialogue en tant que Route Headers
Les entités SIP sur un chemin de routage peuvent donc se rajouter, rajouter des entités, ou se supprimer des chemins suivants des requêtes.
61
Etablissement d’appel (1)
A appelle B: -> INVITE sip:b@b.com SIP/2.0
Via: SIP/2.0/UDP 192.168.1.2;branch=121212 Le branch permet d’identifier la transaction (dans l’absolu) Les ACK sur non 2xx vont l’utiliser ainsi que les CANCEL
From: A <sip:a@a.com>;tag=toto Le tag permet de différencier plusieurs appelants sur le même ip:port.
To: sip:b@b.com Typiquement, request URI = To. La Request URI est prioritaire sur le routage ToIP
Au niveau IP, envoyé à, selon la configuration de l’endpoint Un proxy résolu par le domaine de A Un proxy configuré Un proxy tel que résolu par DNS (RFC3263) sur le domaine b.com On pourrait aussi imaginer un INVITE sip:192.168.1.1 SIP/2.0
Mode direct/P2P, aucun intérêt
62
Etablissement d’appel (2)
<- 100 Trying From, To inchangé (typiquement) IP du Via
<- 180 Ringing From inchangé To: sip:b@b.com;tag=tag7878 IP du Via de l’INVITE, toujours Contient un Contact, peut-être un Record-Route
<- 200 OK From, To inchangé depuis le Ringing Contient un Contact, peut-être un Record-Route
-> ACK sip:b@b.com SIP/2.0 Via: nouvelle branch From, To avec les tags Envoyé au Contact ou au Route issu du Record-Route La request URI est le Contact Et pas de réponse à la “transaction” ACK !
63
Echec d’appel & Abandon
Endpoint A Proxy/Registrar
INVITE
100 Trying
486 Busy Here
ACK
INVITE
100 Trying
CANCEL
200 OK
Endpoint A Proxy/Registrar
INVITE (7 fois)
487 Request Terminated
ACK
ACK
486 Busy Here
INVITE
INVITE
CANCEL
200 OK
487 Request Terminated
ACK
Endpoint B
64
Session Description Protocol
SDP RFC 2327 Utilisé en MGCP et SIP Body texte, lisible par un humain, décrivant les flux media et les
ports RTP à utiliser Très simple par rapport à H.245
Content-type: application/sdp
Nouvelle RFC4566 en 2006
65
SDP: Structure
Structure Se lit dans l’ordre Une partie “Session Description”
V= (version) O= (id de session ou de créateur) S= (petit nom de la session) …
Une partie “Time description” T= (intervale d’activité de la session) …
Une partie “Channel/Media description” (N fois, commencée par un m=) M= media, transport info C= connection info (IP) A= attributs de media
66
Exemple de SDP
Exemple (fictif) de SDP
v=0
o=something 2890844526 2890842807
s=SDP slide
i=A dummy SDP sample
c=IN IP4 192.168.1.1
t=2873397496 2873404696
m=audio 49170 RTP/AVP 0 8 18
a=sendrecv
m=video 51372 RTP/AVP 98
a=rtpmap:98 H264
a=recvonly
67
SDP en SIP
Mode INVITE + SDP Rappelle le mode “Faststart” H.323 A propose dans son INVITE une SDP
Avec tous les channels et codecs qu’il peut accepter A doit se tenir prêt à réceptionner n’importe quel codec annoncé sur
chaque channel annoncé dès l’émission du SDP Pas pratique pour optimiser des ressources hardware
B “répond” dans un 183 Session Progress ou un 200 OK une SDP Une réponse par m= Avec un port à 0 s’il y a refus d’ouvrir un channel Avec au moins un codec parmi ceux que A sait recevoir
Mode INVITE sans SDP Première SDP dans le 200 OK, puis SDP de A dans le ACK
68
Une fois la session établie
Peuvent transiter des DTMF Plusieurs façons en SIP
RFC2833: in-band DTMF Négocié dans les SDP sur un channel audio (PT 101)
INFO avec des telephone/event Du RFC2833 encapsulé dans un INFO 0x0980010E
INFO avec des application/dtmf-relay Signal=3 Duration=250
Les codecs peuvent se renégocier “Re-INVITE” Un INVITE dans le même dialogue, avec une nouvelle SDP Utile aussi pour les mises en garde (a=inactive)
L’appel peut se transférer RFCxxxx: REFER
69
Early Media en SIP
RFC3262: Reliable Responses Ou comment être sûr que A a bien reçu un 183 Session Progress ? Avec un PRACK
Provisional Response ACK Pour tous les messages 1xx sauf 100 Trying
Tous les messages 1xx qui établissent un “Early Dialog” Peut contenir une SDP si l’INVITE n’en contenait pas
Nécessite l’annonce du support “100-Rel” dans des headers En Supported et Require
Renégociation pre-200 OK RFC3311 (extension du modèle offer/answer dans SIP) Nécessite le modèle RFC3262 Après avoir envoyé un PRACK à un 183 Session Progress, mais avant le 200
OK On ne peut pas utiliser de Re-INVITE On utilise alors le message UPDATE avec une SDP
70
Call flow sur une architecture (presque) réelle
Endpoint A Proxy/Registrar CCS Proxy/Registrar Endpoint B
INVITE + SDP
Bye
INVITE + SDP100 Trying
200 OK + SDP
INVITE + SDP
302 Moved
100 Trying
180 Ringing
Pas très réaliste
200 OK
100 Trying100 Trying 100 Trying 100 Trying
100 Trying
200 OK + SDP retouchée200 OK + SDP retouchée
Audio Audio Audio
ACK ACK ACK ACK
ACK
71
SIP ou H.323 ?
La question ne se pose plus… les standards ont tranché
SIP est utilisé dans le contexte IMS Et évoluera en fonction des besoins, quitte à le complexifier
H.323 permet cependant de faire vivre pas mal de réseaux Protocole robuste et bien maitrisé, très bonne interco avec les
réseaux PSTN
72
MGCP : overview
This protocol RFC 3435 has been thought to : Controlling Media Gateways
Typically edge gateways. But MGCP endpoints also exist.
Simplify the endpoint software design… => minimize the number of endpoints bugs
Facilitate management of large numbers of endpoints Facilitate the centralized deployment of new features or applications
=> do not require any change of the endpoint capabilities Be easier to program applications or advanced services which
require the coordination of multiple endpoints, by centralizing all state of all endpoints
As a stimuli-based protocol, think of it as the “assembly of VoIP”
73
MGCP : stimulus protocols
A call agent gives *order/command* to terminating equipment/CPE
The Call Agent just registers events to be observed by the CPE
The Call Agent keeps states of any calls and CPE
The CPE is not aware of what should be done when : Hang up/down Digit are pressed Function keys are pressed More generally, an event occurs
The CPE can simply notify or acknowledge the call agent The CPE has no internal state machine Really low cost endpoints.
74
Where the intelligence is...
Basic Services :- Call setup- Call transfer- Conference ... Services
- New services are introduced without changes on the gateway.
- The gateway uses little CPU and memory resources, its power
is media management
All call control services are centralized on the Call Agent
Call Agent Gateway/CPE
75
A few definitions
Call Agent : Call Control device responsible for synchronizing Gateways media connections and in-band/out-of-band signaling.
Gateway : device performing media conversion from one type of network (e.g. PSTN) to another (e.g. IP or ATM)
Residential Gateway : Gateway bridging analog phone lines, to the IP network.
Trunking Gateway : Gateway bridging a switched circuit network digital circuits (e.g. T1 lines) to a packet network.
76
The MGCP ecosystemMedia stream
Switched circuit network (or other technologies)
MGCP/UDP
RTP/UDP
IP Network or ATM
MGCP/UDP
optional Signaling Entity
Gateway Gateway
Call Agent
77
Transaction / Response
Call Agent Gateway/CPETransactionResponse
Call AgentTransactionResponse
Call Agent initiates transactions to manage/configure endpoints.
Gateway transactions are notifications requested by the call agent, or restart messages.
Each transaction refers to one or more gateway endpoints
Gateway/CPE
78
MGCP Basis : Methods
Each command uses a transaction
Call Agent to Gateway :EPCF : EndpointConfigurationRQNT : NotificationRequestCRCX : CreateConnectionMDCX : ModifyConnectionDLCX : DeleteConnectionAUEP : AuditEndpointAUCX : AuditConnection
Gateway to Call Agent :NTFY : NotifyRSIP : RestartInProgress
79
MGCP Basis : CA / GW dialogue
Using the NotificationRequest command, the Call Agent requests to be notified of endpoint events. Each event has an EventName.
Call Agent Gateway
CRCX or RQNT with R= RequestedEventResponse OK
A requested event happened (e.g. Off Hook)NTFY with 0 = ObservedEvent
Response OK
CRCX or RQNT with S= SignalRequestedResponse OK
The requested signal (e.g ring) is generated on the gateway's endpoint
80
CreateConnection and SDP
CRCX 1238 endpoint/1@rgw-2567.whatever.net MGCP 0.1C: A3C47F21456789F0L: p:10, a:G.711;G.726-32M: sendrecv
v=0c=IN IP4 128.96.41.1m=audio 3456 RTP/AVP 0 96a=rtpmap:96 G726-32/8000
C: CallId
L: Local Connection Options (p:=packet period, a:=algo de compression)
M: Connection Mode
v=0 beginning of SDP
c= Connection Addition (IP address of the remote Gateway for RTP stream)
m= Media Description
a= Connection Attributes
SDP
header
81
H323 CPE MGCP CPE
RQNT(tone ring)
NTFY(off hook)
CRCX
MDCX
Setup
Alerting
Connect
TCS
TCS
OLCOLC
OLC AckOLC Ack
Call AgentCCS
Setup
Alerting
Call Proc
Connect
CLCRelease Complete
Release Complete
DLCX
MDCX (inactive)RQNT(tone busy)
CLC
Call initialisation
Codec negociation
Call tear down
H.323 MGCP Interoperability
82
MGCP : DTMF transmission
The DTMF transmission is clearly specified:
Through the notify message
And the DTMF package
83
Extensions for phone user interface control
MGCP Business phone packages documented in RFC 3149 The standard MGCP line package line provides only a limited set of capabilities to control a business phone user interface: activation of a visual message waiting indicator, caller ID, distinctive ringing. Screen-renderer controlled displays enable new services
CallLogs VMail Retrieve More
12h50P 02/12/02 650 778 8125
Your current options
33013302HlpDskHomeJohnVMail
5 missed call(s)You have 3 msg(s)
softkey1 softkey2 softkey3 softkey4
softkey5
softkey6
softkey7
softkey8
softkey9
softkey10
OK
84
MGCP Pros & Cons
Pros Validation/Integration easier than SIP (a 1 to 3 ratio for Comverse labs to
validate MGCP endpoints compared to SIP endpoints) Very good and complete specification Close to business/customer needs Pragmatic regarding operational needs (simpler to deploy and manage) Handle advanced services such as:
Off hook announcements/pre select services Right Bandwith control Advanced screen management
Intelligence in the network: Evolves with the network Low-cost endpoints
Cons Verbosity. Dependent on network signaling transport quality.
85
Core & Access protocols
Core Protocols End-to-end (from a border to another, or to a Media server) H.323 or SIP MGCP not suitable (not end-to-end, not « routable ») Comverse solutions: H.323 preferred, but SIP coming in IMS model Why H.323 ?
Better interoperability with ISDN gateways, the key to its current success BUT : first global version validated for SIP protocol only
Access Protocols May be local (not end-to-end) H.323 and SIP
Same philosophy: the intelligence is in the endpoint The endpoint can trigger Call Transfers, Call Hold, Conf3, redirections… Costly endpoints, but SIP is easy to implement (text protocol, while H.323 is
ASN.1 PER with a complex H.245 media negociation model and additional RAS stuff for registration management)
MGCP The « assembly » of VoIP « Endpoints » are named Gateways
86
OSS & BSS
OSS = Operation Support Systems Supervision
SNMP essentiellement Inventory
Management des équipements réseau Gestion de configuration
BSS = Business Support Systems Provisioning des utilisateurs
Interconnexion avec les SI des service providers Facturation
87
Les services de facturation
Deux modes principauxReal-time Vérification en temps réel de la validité de l’appel lors de son passage Typiquement utilisé pour faire du pre-paid
A appelle B Le contrôleur d’appel demande à un serveur distant, typiquement en Radius, si A a
suffisamment de crédit pour appeler B. Le serveur répond, avec un temps max d’appel possible (selon B et les crédits de A, la
comm peut durer plus ou moins longtemps) Le contrôleur d’appel devra raccrocher l’appel si ce délai expire En cas d’impossibilité de passer l’appel, on peut par exemple router vers une annonce
réseau spécifique, puis transférer sur un service client
Différé – mode CDR CDR = Call Details Report (« Détails de communication ») Information typiquement simple à processer, expédié sur disque ou vers un
serveur distant pour traitement ultérieur de facturation. Contient tout ce qu’il faut pour facturer (ou non) l’appel. Peut servir en redondance au mode Real-time. Très pratique pour les stats.
88
Vue d’ensemble
Les services
Architectures NGN
Les protocoles en jeu
Architecture IMS
89
Introduction à IMS
IMS = IP for Multimedia Subsystem
Le retour (et la revanche) des équipementiers traditionnels Une approche très Intelligent Network
Côté O et côté T bien différenciés Issu du partenariat 3GPP (3G Project Partnership) et de l’IETF Convergence entre les mondes
Fixe (TISPAN – PES: PSTN Emulated Services) Mobile (3GPP) « PC » (softphone, IM, …)
Une utilisation de SIP dans un framework adapté aux services unifiés Même architecture réseau pour les appels fixes, mobiles, PC Même plateforme de développement de service Un SIP modifié. Ce n’est plus SIP/IETF mais SIP/IMS voire SIP/pre-IMS. Une architecture pensé pour le roaming (itinérance en français)
SIP, au sens littéral On ouvre une session entre plusieurs équipements. Dedans pourra transiter de la voix, du texte, des appli spécifiques, ou autre.
90
Architecture IMS (signalling plane)
P-CSCF
I-CSCF
S-CSCF
AS
HSS
SLF
MRFC
BGCFP-CSCFAccessNetwork
91
Les nœuds IMS
Les bases de données HSS: Home Subscriber Server
Evolution de l’HLR en téléphonie mobile Contient les informations de sécurité, de localisation, les profiles des
utilisateurs, le S-S-CSCF de référence de chaque utilisateur Dans le réseau de l’utilisateur
SLF: Subscribers Location Function Utilisé lorsqu’il y a plusieurs HSS dans le réseau utilisateur pour trouver le
HSS qui contient les infos d’un user donné Accédées par Diameter (protocol d’authentification qui fait suite à
Radius)
Les CSCF Call Session Control Functions Serveurs SIP
P-CSCF: Proxy I-CSCF: Interrogating S-CSCF: Serving
92
P-CSCF
P-CSCF Premier point de contact IMS de l’utilisateur SIP Proxy Server (entre le terminal IMS et le réseau) Forwarde les requêtes vers un I-CSCF Assure un lien sécurisé et de confiance avec le terminal dans l’access
network Par exemple en IPSec Assure l’identité de l’appelant/appelé Le réseau IMS « interne » fait confiance au P-CSCF et ne va plus se soucier
de la sécurité Valide les messages entrants PDF (Policy Decision Function) optionnelle
Permet d’appliquer des QoS Typiquement dans le Home Network (très proche des implémentations
mobile, actuellement les GGSN «Gateway GPRS Support Node» sont dans le Home Network) GGSN = Gateway GPRS Support Node A terme, normalement, dans le Visited Network
93
I-CSCF
I-CSCF SIP Proxy en bordure du domaine d’administration Sélectionne un S-CSCF pour traiter l’utilisateur via SLF/HSS
Le S-CSCF « s’enregistre » dans le HSS une fois qu’il gère un endpoint Peut chiffrer des parties SIP pour protéger des info de coeur Dans le Home Network
S-CSCF Nœud central de la signalisation IMS SIP Proxy et aussi Registrar Authentification de l’utilisateur (via récupération d’info dans les HSS) Application du profil de l’utilisateur (récupéré dans les HSS)
IFC = Initial Filter Criteria Transfère les messages à destination des AS « En étoile »
Fixe pour la durée de l’enregistrement Dans le Home Network
94
Les AS
AS = Application ServerAssure toute la logique de servicePeut opérer en SIP Proxy (retouche de message pour application de services)
CLIP, CLIR, … User Agent Mode (Voicemail) Back to Back User Agent
Différents types d’AS SIP-AS: l’AS natif SIP. Tout le monde pourrait développer un SIP-AS qui
pourrait se greffer sur n’importe quel réseau (interop des réseaux) OSA-SCS: accédé en SIP d’un côté, permet de paire du OSA/Parlay de
l’autre (API Open Service Access). Pour migration de services existants. IM-SSF (Service Switching Function): pour réutilisation des services SCF
IN, en particulier CAMEL (Customized Application for Mobile Enhanced Logic) pour le monde GSM
Dans le Home Network ou chez des service providers externes
95
Les autres fonctions
MRF Media Resource Function Network announcements, conference bridges, transcoders, … Dans le home network Imaginé en 2 parties: MRFC (Control) qui contrôle en
H.248/MEGACO un MRFP (Point) qui diffuse/remplit le service audio.
BGCF Breakout Gateway Control Function Edge gateway Typiquement, La BGCF contrôle une MGCF (en SIP) qui va
contrôler une Media Gateway et une Signalling Gateway
96
Routage
Deux niveaux Le routage SIP Le routage ToIP
Le routage SIP se fait sur les headers Route, Via, Record-route C’est ce qui assure le transit des messages d’un nœud à l’autre Dans les deux sens Permet à un AS de positionner le nœud suivant Donc de faire le routage VoIP
Le routage VoIP est fait par un AS Cependant on utilise un AS pour l’appelant et un AS pour l’appelé Ils sont potentiellement sur des S-CSCF différents Interco directe entre les opérateurs IMS en IP (?)
97
IMS Call flow
P-CSCF of Visitor Network routes signaling to I-CSCF of A
Home Network
I-CSCF of Home Network selects S-CSCF
S-CSCF
AS 1
AS 2
AS 3
S-CSCF
AS 1
AS 2
AS 3
S-CSCF of A Home Network goes through AS sequence, and routes to I-CSCF of B
Home network
A Home NW B Home NW
B Visited NWA Visited NW
S-CSCF of B Home Network goes through AS sequence, and routes to P-CSCF of B
visited network
P-CSCF controls packet filters
98
Les identités
Un utilisateur IMS a Plusieurs identités publiques possibles
TEL ou SIP URI Tel:+33-2-31463700 Sip:+33-2-31463700@serviceprovider.com;user:phone Sip:jsmith@netcentrex.net
Utilisé pour l’enregistrement Permet de déclencher des services (profiles) différents Un pour le mobile, un pour les appels fixes, un pour les appels perso/pro, …
Une identité privée (ou plusieurs en 3GPP version 6) Sert de « token » d’authentification Permet de multiplier les points d’enregistrement actifs en même temps
La notion de terminal disparaît au profit de la notion de « ligne »
Permet la gestion des enregistrements implicites, call forking
99
Modèle de gestion des identités (IMS subscriptions)
Implicitly Registered ID
Set 3
Private User Identity 1
Public User Identity 1
Public User Identity 2
Public User Identity 3
Implicitly Registered ID
Set 1
Private User Identity 2
Public User Identity 4
Public User Identity 5
Public User Identity 6
Implicitly Registered ID
Set 2
Service Profile 1
Service Profile 2
Service Profile 3
Service Profile 4
IMS Subscription
100
Les addons SIP pour IMS
Quelques RFC intéressantes RFC Service Path
Service-path indiqué dans le Register, un “addon” un Contact Le Contact est toujours utilisé en request URI lorsque l’on cherche à joindre
l’endpoint RFC3608 Service Route
Header rajouté sur un REGISTER/200 OK pour que les P-CSCF sachent retrouver le S-CSCF en charge d’un endpoint rapidement Utilisé en Loose Routing Une sorte de Record Route
Le Record Route était limité à de l’intra dialogue Le Service Route passe d’un dialogue de REGISTER à un dialogue
initié par un INVITE RFC3325
P-Asserted-Identity dans les message en coeur RFC3455
P-Associated-URI dans les REGISTER/200 OK P-Called-Party-ID dans les INVITE terminaux
101
Thank youContact:Gerald.vannier@comverse.com
www.comverse.com
Recommended