1 / 14

SUPPORTO AL MEDIA-OVER-IP

Progetto di RETI DI CALCOLATORI L-S Prof. Antonio Corradi Presentazione di: Mirko Colleluori 169783 A.A. 2006-2007. SUPPORTO AL MEDIA-OVER-IP. Obiettivi. Con il seguente progetto si intende individuare le componenti essenziali dell’intera

Télécharger la présentation

SUPPORTO AL MEDIA-OVER-IP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Progetto di RETI DI CALCOLATORI L-S Prof. Antonio Corradi Presentazione di: Mirko Colleluori 169783 A.A. 2006-2007 SUPPORTO AL MEDIA-OVER-IP

  2. Obiettivi Con il seguente progetto si intende individuare le componenti essenziali dell’intera teoria che fa da supporto al VoIP e sviluppare un supporto software che dia corpo al concetto di Voice over IP. Applicazioni: • Telefonia su IP (VoIP) e servizi telefonici supplementari • Video comunicazione (video conference, operator services) • Sistemi di notifica di eventi (subscribe/notify) • Sistemi di messaggistica (instant messaging, presence services) • Simulazioni interattive distribuite e giochi interattivi • Misurazioni e controlli in remoto (video surveillance) Obiettivi: • User Location • User Availability • User Capabilities • Session Setup • Session Management • Data Transmission/Reception • QoS Monitoring • Altro (Sequence Numbering, Time Stamping)

  3. Tecnologie e Strumenti • RTP / RTCP (IETF - RFC 3550 e 3551): • Java Media Framework (JMF v1.1) • SIP - Session Initition Protocol (IETF - RFC 2543 e 3261) • Jain-Sip 1.1 APPLICAZIONE JAIN SIP RTP RTCP JMF TCP UDP IP • SCELTE PROGETTUALI • SIP: si occupa di trovare e stabilire una connessione tra gli utenti, • specificando le caratteristiche della comunicazione grazie al SDP, • Session Description Protocol presente nel body del messaggio • RTP: permette di inviare lo stream dei pacchetti della voce • RTCP: controlla la QoS della trasmissione

  4. Architettura Generale APPLICATION LEVEL SUPPORTO SIP RTP REGISTER PRESENCE 3PCC P2P STREAMING COMPONENT LEVEL SIP Register SIP Presentity SIP Party RTP Console SIP Registrar SIP Watcher SIP TPCC CORE LEVEL SIP Core RTP Core

  5. Core Level: RTP/RTCP RTP Packet: Java Media Framework (JMF v1.1): javax.media.rtp.*; javax.media.rtp.rtcp.*; javax.media.rtp.event.*; ReceiveStream Streaming RTP SenderStream RTP Manager TimeStamp SSRC CSRC Numerazione Statistics getGlobalTransmissionStats() getGlobalReceptionStats() RTCP Reports • OBIETTIVI • inizializzare e avviare • la partecipazione in una sessione • rimuovere flussi individuali • creati da un’applicazione • chiudere l’intera sessione • QoS monitoring QoS Monitoring Participants getAllParticipants() getRemoteParticipants() getActiveParticipants() getPassiveParticipants() Events Pattern Observer SessionEvent RemoteEvent evt SendStreamEvent evt ReceiveStreamEvent evt Package: media.mediaoverip.rtp.core

  6. Core Level: SIP API JSR 32 Jain-Sip (J2SE): javax.sip.*; javax.sip.address.*; javax.sip.header.*; javax.sip.message.*; SIP Message Modello a eventi: invite ack options bye cancel register Response Event Request • OBIETTIVI • formattazione del messaggio SIP • invio/ricevere i messaggi • gestione transazioni con timeout, • gestione stati e ciclo di vita. Setup Function createListener() getInstance() SIP Listener SIP Packet: SIP Factory eventRegistration createStack() createProvider() SDP URI SIP Stack SIP Provider Network Proprietary SIP Stack Package: media.mediaoverip.sip.core

  7. Component Level: RTP Console • OBIETTIVI • Transmissione RTP: 1 transmitter • Ricezione RTP: 1 receiver • User Location (static) • File transfer (web-cam emulation) • QoS monitoring RTP Events RTP Participants QoS Monitoring User Location Transmission/ Reception Statistics Package: media.mediaoverip.rtp.console

  8. Component Level: SIP Register & Presence • OBIETTIVI • informare il SIP server della • localizzazione dell’utente • notifica dello stato (publish/subscribe) SIP Watcher SIP Register SIP Presentity SIP Registrar Registration Protocol Presence Protocol Registration Information Presence Information SUBSCRIBE REGISTER 200 OK 200 OK “Available” NOTIFY CANCEL Register Registrar 200 OK 200 OK NOTIFY “NOT Available” Watcher Presentity 200 OK Package: media.mediaoverip.sip.register/registrar Package: media.mediaoverip.sip.watcher/presentity

  9. Component Level:SIP Third Party Call Control Protocollo di negoziazione mediata: • OBIETTIVI • negoziazione fra due end-system che non si conoscono (Party): • mediatore (Tpcc) che coordina lo scambio di informazioni RTP RTP Console RTP Console SIP Party SIP Party INVITE SDP (from 2) 200 OK 3 6 2 5 ACK SDP (from 4) 4 200 OK SIP INVITE no SDP ACK 1 SIP Tpcc Package: media.mediaoverip.sip.tpcc Package: media.mediaoverip.sip.party

  10. Third Party Call Control:Sequence Diagram (1) SIP Listener SIP Party A SIP Factory SIP Provider Client Transaction Dialog A Dialog B SIP Party B 1. CREATE INVITE inviteA new 2. CREATE TRANSACTION new 3. SEND REQUEST listener, A 4. INVITE offerA 5. 200 OK offerA 6. CREATE INVITE inviteB new 7. CREATE TRANSACTION new 8. SEND REQUEST listener, B 9. INVITE offerA 10. SEND ACK offerB 11. 200 OK offerB 12. SEND ACK

  11. Third Party Call Control:Sequence Diagram (2) SIP Listener SIP Party A SIP Factory SIP Provider Client Transaction Dialog A Dialog B SIP Party B body = offerB 13. CREATE INVITE inviteC 14. CREATE TRANSACTION transactionC 15. SEND REQUEST offerB 16. RE-INVITE offerB 17. 200 OK offerB 18. SEND ACK RTP RTP

  12. Caso di Studio:Operator Service (1) SERVICE OPERATOR REGISTRATION SIP Registrar SIP Register SIP Watcher PRESENCE SIP Presentity • Entità: • Register, Operator, Client • Regole: • Il Service deve fornire gli strumenti a Client e Operator per registrarsi al servizio • Il Service deve monitorare lo stato di Client e Operator • Operator deve monitorare i Client inviatigli dal Service, Client manifesta (notifica) il suo interesse a essere servito • Operator gestisce il rendez-vous tra coppie di Client (user/expert) • I Client devono comunicare attraverso streaming audio/video 1 SERVICE CLIENT REGISTRATION SIP Registrar SIP Register 2 SIP Watcher PRESENCE SIP Presentity 1 2 OPERATOR CLIENT SIP Watcher PRESENCE SIP Presentity 3 SIP Tpcc TPCC SIP Party 4 CLIENT CLIENT P2P STREAMING RTP Console RTP Console 5

  13. Caso di Studio:Operator Service (2) CLIENT OPERATOR SIP Registrar SIP Register SIP resentity SIP Tpcc SERVICE Fattorizzando: • SUPPORTO: • Architettura modulare come • “ossatura” del servizio • Cosa manca ? • Scelta deployment distribuito • Coordinamento dei componenti • per realizzare l’application logic • di ciascuna entità SIP Register SIP Party SIP Presentity SIP Watcher RTP Console SIP Watcher SERVICE • Vantaggi: • Distribuzione di un’entità su più nodi • complessità (overhead) load balancing • Replicazione “modulare” • fault tolerance • Flessibilità, Estendibilità • SIPProxy SIPRedirect SIP Register SIP Register SERVICE SIP Watcher SIP Proxy SERVICE

  14. Riferimenti • Session Initiation Protocol (SIP): • http://www.cs.columbia.edu/sip • SIP RFC 3261 (RFC3261) • http://www.faqs.org/rfcs/rfc3261.html • http://rfc.sunsite.dk/rfc/rfc3261.html • RTP: RFC 1889 (RFC1889) • http://www.faqs.org/rfcs/rfc1889.html • http://rfc.sunsite.dk/rfc/rfc1889.html • “Jain SIP Tutorial, Serving the Developer Community”, PhelimO’Doherty (Sun Microsystems), MudumbaiRanganathan (NIST) • “Sip Tutorial”, progetto GEMINI, Josè Soler Lucas (COM) • “The Session Initiation Protocol (SIP)”, Henning Schulzrinne, Dept. of Computer Science, Columbia University, New York • Java Media Framework (JMF): • http://java.sun.com/products/java-media/jmf/ • “Una applicazione multimediale di rete basata su un framework di classi Java”, tesi di laurea di Silvia Summa, 2000 • Wikipediahttp://it.wikipedia.org

More Related