Nella tesi, dopo un’introduzione alle caratteristiche del VoIP, si è analizzata la raccomandazione H.323 e i protocolli su cui fa affidamento, nonché tutte le entità funzionali di una tipica architettura di rete basata su tale standard.
Analogamente, si sono analizzati i protocolli SIP e IAX ed i tipici componenti di una rete che sfruttano questi protocolli per trasmettere la voce a pacchetti, per poi concludere con una visione del sistema 3G – 324M.
Il secondo capitolo è dedicato per intero alle caratteristiche e i vantaggi nell’uso del VoIP PBX Asterisk, alle sue funzionalità, la descrizione e la configurazione base del suo dialplan, l’uso di contesti, estensioni, applicazioni, per concludere con una visione d’insieme circa le schede hardware e tipi di telefoni supportati, e qualche esempio di reti realizzabili sfruttando appunto Asterisk.
Il terzo e ultimo capitolo illustra, attraverso le fasi di installazione, compilazione e configurazione, il semplice test di telefonia e videotelefonia via softphone e telefoni IP realizzato utilizzando Asterisk come centralino.
2. UNIVERSIT À DEGLI STUDI DI CASSINO FACOLT À DI INGEGNERIA Tesi di laurea in Ingegneria delle Telecomunicazioni Configurazione di un servizio VoIP con Asterisk RELATORE Prof. Ciro D’Elia CANDIDATO Riccardo Galletti Matr. 1265 ANNO ACCADEMICO 2005 - 2006
3.
4.
5. Reti circuit switching Quando due host desiderano comunicare, la rete stabilisce un circuito dedicato end-to-end tra essi PRO: latenza bassa e non variabile CONTRO: spreco di risorse
6. I messaggi vengono suddivisi in pacchetti. Fra sorgente e destinazione ciascun pacchetto attraversa link di comunicazione e router. PRO: miglior utilizzo delle risorse trasmissive CONTRO: ritardi, jitter e maggior latenza causati dal multihop Reti packet switching A B C A B C
7. Standardizzazione • SIP (W3C, IETF) Principali protocolli • H.323 (ITU) • IAX (Digium) TELEFONIA INTERNET Nel VoIP convergono: ITU International Telecommunications Union ETSI European Telecommunications Standard Institute IETF Internet Engineering Task Force W3C World Wide Web Consortium Enti commerciali
8. Protocolli VoIP: H.323 È una raccomandazione ITU – T che specifica il modo in cui il traffico multimediale deve essere trasmesso in reti a commutazione di pacchetto che non prevedono qualità del servizio (in particolare la rete IP). Questo standard si occupa delle segnalazioni e del controllo delle chiamate, la trasmissione e il controllo di informazioni multimediali e il controllo di ampiezza di banda nelle conferenze in tempo reale punto – punto e multipunto.
9.
10. Protocolli VoIP: SIP Il SIP (Session Initiation Protocol) è un protocollo del livello applicazione con una struttura client-server, che nasce in ambito IETF come alternativa più semplice al sistema H.323, ed è utilizzato per attivare, gestire e chiudere le sessioni multimediali. Indirizzamento: [email_address] Maggiore integrazione col Web
11. Protocolli VoIP: SIP Il SIP (Session Initiation Protocol) è un protocollo del livello applicazione con una struttura client-server, che nasce in ambito IETF come alternativa più semplice al sistema H.323, ed è utilizzato per attivare, gestire e chiudere le sessioni multimediali. User Agent Client chiamante User Agent Server User Agent Server chiamato User Agent Client User Agent Client Proxy User Agent Client User Agent Server INVITE INVITE ACK BYE
12. SIP: Esempio di messaggio Invite INVITE sip:MIchele@dominio.com SIP/2.0 Via : SIP/2.0/UDP 134.102.18.1 From : <sip:riccardo@riccardogalletti.com>; tag = 4711 ''//identifica l'originatore della richiesta '' To : Michele <sip:michele@dominio.com> ''//identifica la destinazione logica di una richiesta'' Call-Id : 12345678@134.102.18.1 ''//è un valore costante che identifica l'invito'' Cseq : 49 Invite ''//ordina le transazioni (..la prossima richiesta avrà Cseq=50)'' Content-Length : 117 ''//il body consiste in 117 byte '' Content-Type : application /sdp ''//tipo di media descritto secondo il protocollo [[SDP]]'' Subject : felicitazioni! ''//l'oggetto del messaggio'' Contact : sip:riccardo@134.102.18.1:4050 ''//l'indirizzo al quale si desidera ricevere richieste'' transport = udp ''//specifica il protocollo di trasporto , nell'esempio UDP'' v = 0 ''//indica la versione in uso'' o = jack 7564657 9823872 IN IP4 134.102.18.1 ''//l' owner della risorsa con un ID di sessione'' c = IN IP4 134.102.18.1 ''// tipo di rete, la versione del protocollo IP e l'IP stesso '' t = 0 0 ''// tempo di start e di stop '' m = audio 4754 RTP/AVP 0 ''//tipo di media, num. di porto, protocollo di trasporto e formato '' a = rtpmap: 0 PCMU/8000 ''// attributi audioideo .. se ce ne fossero '' s = festa ''//subject della sessione''
13. Protocolli VoIP: IAX IAX (Inter Asterisk eXchange) è il protocollo binario de facto utilizzato da Asterisk. Minimizza la larghezza di banda necessaria per la comunicazione, triplicando il n° di chiamate possibili rispetto ad H.323 o SIP HOST A HOST B NEW ACCEPT ACK RINGING ACK ANSWER ACK
14.
15.
16.
17.
18. Architettura Asterisk Application API Codec Translator Scheduler and I/O Manager Application Launcher PBX Switching Core Dynamic Module Loader Asterisk File format API Asterisk Channel API Codec Translator API Connessione delle chiamate tra i vari utenti
19. Architettura Carica i moduli codec, e li traduce per far dialogare tra loro canali che utilizzano codec diversi Asterisk Application API Codec Translator Scheduler and I/O Manager Application Launcher PBX Switching Core Dynamic Module Loader Asterisk File format API Asterisk Channel API Codec Translator API
20. Architettura API (Application Program Interface) – organizzati in moduli per una completa astrazione tra le sue funzioni e le tecnologie attuali o future Asterisk Application API Codec Translator Scheduler and I/O Manager Application Launcher PBX Switching Core Dynamic Module Loader Asterisk File format API Asterisk Channel API Codec Translator API
21. I l dialplan È l’entità che instrada ogni chiamata nel sistema, passando per le varie applicazioni. È organizzato in contesti , cioè insieme di estensioni (istruzioni) [incoming] exten => 100,1,Wait(1) exten => 100,2,Answer exten => 100,3,Playback(welcome) exten => 100,4,Hangup [local] exten => 250,1,Dial(SIP/utente1) exten => utente1,1,Dial(SIP/utente1) include => demo [laboratorio] exten => 2000,1,Dial(IAX/2000) exten => 2000,2,Voicemail(u2000) exten => 2001,1,Dial(ZAP/1) exten => 2001,2,Voicemail(u1)
22. I l dialplan Le estensioni comprendono priorità (ordine delle istruzioni) exten => 100,1,Wait(1) exten => 100,2,Answer exten => 100,3,Playback(demo-congrats) exten => 100,4,Hangup ( ) exten => 100,1,Wait(1) exten => 100,2,Answer ( ) e applicazioni Esempi : Answer(), Playback(), Dial(), Goto (), Voicemail(), Hangup()…
23.
24.
25.
26.
27. Softphone È un software che realizza funzionalità telefoniche su di un dispositivo non telefonico, come un PC o un palmare. SJPHONE KAPANGA SIP, H.323 VIDEOCHIAMATA (SIP)
28. Configurazione Dialplan: sip.conf (creazione nuovi utenti) + extensions.conf (estensioni per la chiamata o videochiamata, voicemail, riaggancio) Softphone e telefoni IP: nuovo profilo (parametri di autenticazione) + registrazione