Corso di laurea in Ingegneria delle telecomunicazioni Automatic Call Distribution in ambienti di telefonia IP basati su protocollo SIP
2
tipo di tecnologia, trae la sua spinta lo standard VoIP (Voice over
Internet Protocol ) [1].
Sebbene efficaci e consolidate nella comunicazione vocale commutata,
le tradizionali reti PSTN, in quanto gravate da un’intrinseca bassa
flessibilità nella trasmissione dati e dall’impossibilità di far convergere
dati, video e voce sulla propria infrastruttura, sono apparse molto carenti
in uno scenario in cui la voce è solo una delle applicazioni richieste.
La fonia su circuiti commutati ha inoltre il non trascurabile demerito di
essere caratterizzata da costi di installazione e gestione elevati per
eventuali nuovi attori intenzionati ad entrare nel mercato.
La maggior parte degli attuali modelli architetturali di rete prevede una
netta separazione tra servizi voce, dati e video, il che comporta
un’amministrazione autonoma per ciascuno di tali servizi a livello di
cablaggio, di apparati e di applicativi.
Ciò posto, il passaggio ad un sistema VoIP rappresenta per l’azienda
un’innovazione correlata a benefici di carattere sia economico che
organizzativo.
Anzitutto, come già accennato, è possibile conseguire un abbattimento
dei costi per le telefonate vocali, effettuando chiamate, anche
internazionali, senza utilizzare la classica PSTN, o quantomeno
utilizzandola solo per i tratti terminali, generalmente a tariffazione
Corso di laurea in Ingegneria delle telecomunicazioni Automatic Call Distribution in ambienti di telefonia IP basati su protocollo SIP
3
urbana, con conseguente risparmio della tariffazione per la parte
complementare del collegamento.
Ulteriore vantaggio è costituito dal fatto che un’infrastruttura IP richiede
poche aggiunte, spostamenti e modifiche nel corso della sua vita rispetto
ad una rete vocale tradizionale mentre molte aziende hanno dovuto
sopportare ingenti costi relativi, dovuti alla manodopera e alla
riconfigurazione del centralino, per realizzare lo spostamento anche di
un singolo telefono classico.
Il VoIP consente ad un’azienda di avere un unico settore che,
sovrintendendo ai servizi informatici, supporta la rete dati ed anche
quella vocale che, nel caso di rete convergente, costituiscono un’unica
entità.
Ultima, ma non per questo meno importante, è la possibilità offerta dalla
convergenza di porre i sistemi di gestione dei messaggi vocali su
piattaforme standard, come Personal Computers o macchine UNIX, con
conseguente diminuzione dei costi delle funzionalità che si vogliono
implementare.
Risulta subito intuibile come i vantaggi evidenziati possano
compiutamente realizzarsi quando la tecnologia IP è applicata ad una
struttura aziendale come il call center, che rappresenta intrinsecamente la
quintessenza delle applicazioni CTI (Computer Telephony Integration)
[2].
Corso di laurea in Ingegneria delle telecomunicazioni Automatic Call Distribution in ambienti di telefonia IP basati su protocollo SIP
4
Uno dei maggiori svantaggi dei call centers non basati su VoIP è il
vincolo di crescita a blocchi, le dimensioni dei quali dipendono dal
numero minimo di porte che i centri di chiamata devono acquistare per
ampliare la capacità del proprio centralino e ciò, contravvenendo alla
flessibilità auspicabile per questo tipo di struttura, costituisce un
problema non da poco.
Inoltre, nei call centers di tipo tradizionale è difficoltoso, o quantomeno
dispendioso, implementare un’architettura che sia di tipo distribuito;
volendo infatti sviluppare un centro di chiamata su più sedi
geograficamente distanti, si dovrà tener conto della gestione sia delle
rete voce sia di quella dati, ed è evidente che tale soluzione non è né
razionalmente valida né economica.
Una migrazione del centro chiamate verso il VoIP rende il tutto più
gestibile e meno dispendioso, conferendo al call center stesso un alto
grado di scalabilità e gestione delle risorse, al punto da poter permettere
all’operatore di lavorare anche da casa non avvertendo nessuna
differenza sul piano delle funzionalità a sua disposizione.
Ulteriore aspetto, che negli ultimi anni sta acquistando importanza è la
comunicazione multimediale e multicanale, la cui diffusione è
nettamente agevolata dall’impostare l’intero call center su tecnologia IP.
Detto ciò, è intuitivamente apprezzabile l’attualità dell’esperienza di
stage dalla quale prende corpo questo lavoro di tesi, che fa riferimento
Corso di laurea in Ingegneria delle telecomunicazioni Automatic Call Distribution in ambienti di telefonia IP basati su protocollo SIP
5
ad un’attività di collaborazione incentrata su un progetto commerciale
inerente, appunto, ad un contact center su tecnologia IP, instaurata tra il
Dipartimento di Informatica e Sistemistica dell’Università Federico II di
Napoli e la società I.T.S. S.p.A. (Information Technology Services).
Allo scopo di illustrare al meglio tale contributo, sarà preliminarmente
introdotto lo standard SIP, con particolare riferimento alla fase di
registrazione, problematica, questa, affrontata in fase implementativa nel
corso dello stage. Si passerà a trattare poi anche l’MSCP (Media Server
Control Protocol), che ancora non ha raggiunto lo stato di standard, ma
al quale si è fatto riferimento per il dialogo interno di alcuni elementi
dell’architettura. Successivamente sarà presentata una panoramica
sull’universo dei call centers, all’interno della quale verrà posta
l’architettura IP-PBX realizzata. Il capitolo successivo sarà incentrato
sull’analisi dell’ACD (Automatic Call Distributor) del quale si è
implementata la fase di registrazione con gli operatori, oggetto
dell’ultimo capitolo. Infine, in appendice, saranno riportati alcuni passi
salienti del relativo codice sviluppato.
Corso di laurea in Ingegneria delle telecomunicazioni Automatic Call Distribution in ambienti di telefonia IP basati su protocollo SIP
6
CAPITOLO 1
1 I protocolli dell’architettura
1.1 Introduzione al protocollo SIP
SIP [3], acronimo di Session Initiation Protocol, è un protocollo di
segnalazione e di controllo di livello applicativo, che permette di
stabilire, modificare e terminare sessioni multimediali basate sul
protocollo IP con uno o più partecipanti; in particolare, col termine
sessione multimediale si fa riferimento ad una casistica composta da
conferenze, videotelefonia su Internet, messaggistica istantanea, e-
commerce, et similia.
SIP fu originariamente sviluppato in IETF (Internet Engineering Task
Force) dal Working Group mmusic (Multiparty Multimedia Session
Control) a partire dal 1995. La versione 1.0 fu sottoposta alla comunità
web come Internet Draft nel 1997, ma i significativi cambiamenti che
vennero apportati comportarono la realizzazione di una seconda versione,
Corso di laurea in Ingegneria delle telecomunicazioni Automatic Call Distribution in ambienti di telefonia IP basati su protocollo SIP
7
sottoposta come Internet Draft l’anno seguente. Il protocollo raggiunse lo
status di Proposed Standard nel marzo del 1999 e fu pubblicato con la
RFC (Request For Comment ) 2543 nel mese di aprile. Un Internet Draft
contenente la soluzione di alcuni bugs e ulteriori chiarimenti fu realizzato
nel luglio del 2000 ed è conosciuto come RFC 2543 “bis”; questo
documento fu poi pubblicato come RFC 3261 e sostituì la specifica
originale [4] [5].
In seguito molti documenti RFC di estensione al protocollo SIP sono stati
pubblicati e lo standard è tuttora in continuo aggiornamento [6].
Il SIP incorpora elementi dell’Hyper Text Transport Protocol (http), uno
dei protocolli di internet più largamente usati, dal quale prende in prestito
il modello client-server, lo schema di codifica testuale, lo stile dei campi
di header e l’uso di URLs (Uniform Resource Locators) e URIs (Uniform
Resource Identifiers).
D’altronde, il SIP fu progettato per ritagliarsi una nicchia
nell’architettura protocollare già consolidata di internet ed interagire con
i protocolli preesistenti (Figura 1.1):
o SDP (Session Description Protocol) [7], per descrivere, con codifica
testuale, sessioni multimediali;
o RTP (Real-time Transfer Protocol) [8] e RTCP (Real-time Transfer
Control Protocol) [9], per trasportare dati in tempo reale e provvedere
al feedback della qualità di servizio;
Corso di laurea in Ingegneria delle telecomunicazioni Automatic Call Distribution in ambienti di telefonia IP basati su protocollo SIP
8
o DNS (Domain Name System) [10] [11], per permettere agli host di
comunicare con i server dei nomi in modo da fornire il servizio di
traduzione dei nomi testuali in indirizzi IP;
Figura 1.1 Stack dei protocolli multimediali di internet (tratto da [6])
o DHCP (Dynamic Host Configuration Protocol) [12], per permettere ad
un host di ottenere automaticamente un indirizzo IP e alcune
informazioni aggiuntive, come gli indirizzi del router di default e del
server DNS a cui far riferimento, una volta connesso ad una rete;
o RTSP (Real-Time Streaming Protocol) [13], per lo scambio di
informazioni di controllo della riproduzioni, atte a permettere di
usufruire, nella fruizione di flussi di media, di funzionalità simili a
quelle di un VCR o di un DVD-player;
o TCP (Transmission Control Protocol) [14], protocollo dello strato di
trasporto per la consegna affidabile dei dati; permette il trasporto di
Corso di laurea in Ingegneria delle telecomunicazioni Automatic Call Distribution in ambienti di telefonia IP basati su protocollo SIP
9
messaggi SIP di lunghezza arbitraria (la cui fine nello stream è
individuata grazie all’header Content-Length);
o UDP (User Datagram Protocol) [15], protocollo dello strato di
trasporto per la consegna non affidabile dei dati; utilizzabile da SIP a
patto che il messaggio e la relativa risposta risultino minori della
grandezza MTU (Message Transport Unit) della rete IP, dal momento
che l’intero messaggio SIP deve essere trasportato in un singolo
datagram UDP; nel caso ciò non fosse possibile diverrebbe obbligato
l’uso del TCP come protocollo di trasporto in quanto il SIP non
supporta la frammentazione al suo livello (né questa viene realizzata
dall’UDP…).
Le funzionalità principali offerte del protocollo SIP sono :
o localizzare gli utenti, identificati da un indirizzo “e-mail style”,
determinandone l’attuale punto di ancoraggio alla rete;
o invitare gli utenti a partecipare ad una sessione;
o acquisire le preferenze degli utenti e negoziare le funzionalità dei
terminali da essi impiegati;
o instaurare le connessioni di sessione;
o gestire eventuali modifiche dei parametri di una sessione in corso;
o rilasciare le parti;
o cancellare la sessione in qualunque momento lo si desideri.
Corso di laurea in Ingegneria delle telecomunicazioni Automatic Call Distribution in ambienti di telefonia IP basati su protocollo SIP
10
1.2 Architettura SIP di riferimento
Le entità che caratterizzano una sessione SIP possono essere identificate
attraverso le astrazioni di User Agent Client (UAC) e User Agent Server
(UAS). Lo UAC è l’applicazione client che permette di generare
messaggi di segnalazione e che si occupa di inviare le richieste; lo UAS è
l’applicazione server a cui pervengono le richieste e che si occupa di
generare e inoltrare le risposte.
Un programma applicativo può agire come client o come server a
seconda della necessità e all’interno di un dialogo sovente realizza
entrambe le astrazioni.
Le procedure definite dal protocollo SIP per gestire le sessioni
multimediali possono coinvolgere i seguenti componenti, che
nell’insieme costituiscono l’architettura di riferimento del protocollo
(Figura 1.2):
o USER AGENT;
o REGISTRAR SERVER;
o PROXY SERVER;
o REDIRECT SERVER ;
o LOCATION SERVER.