MUSE BTMUSE BTProxyProxy
Colombini Gabriele231491
Invio di Streaming Audio attraverso rete wireless Bluetooth
Mobilità attraverso la rete Bluetooth, con passaggio eventuale da un Access Point ad un altro
Continuità di servizio a seguito di handoff
IntroduzioneIntroduzione
Server: mantiene le canzoni sotto forma di mp3
Proxy: agisce da mediatore tra Client e Server
Access Point: permette la accedere alla rete Bluetooth
Client: riceve le richieste dell’utente e riproduce il file audio richiesto
StrutturaStruttura
Zona di handoff
Zona critica
Doppio livello di bufferizzazione
Buffer sul Client che permette la riproduzione durante la situazione di handoff e di disconnessione da qualsiasi Access Point
Buffer sul Proxy che permette di memorizzare i frame inviati dal Server durante le situazioni di handoff e di disconnessione da qualsiasi Access Point e di inviarli al Client una volta riconnesso
Utilizzo di NCSOCKS come infrastruttura di rete
Mobility Management: gestione degli handoff che occorrono nel passaggio da un Access Point ad un altro
Connection Awareness: conoscenza di tutte le informazioni circa lo stato attuale della connessione (qualità del segnale, probabilità di handoff)
SoluzioneSoluzione
ProxyProxy
Session
Proxy
Session
Proxy
Application
Proxy
Application
Proxy
RTP
Proxy
RTP
Proxy
ApplicationProxy: thread in continuo ascolto, in attesa di una richiesta di connessione al servizio proveniente da Client
SessionProxy: thread che viene generato appena ricevuta una richiesta di connessione da un Client
RTPProxy: thread utilizzato per gestire il flusso multimediale: riceve il flusso dal Server, inoltrandolo al Client
Access PointAccess Point
…BNEP0BNEP0 BNEP1BNEP1 BNEPnBNEPn
PAN0PAN0
ETH0ETH0
BNEP0BNEP0
AP
Client 1 Client n
BNEP0BNEP0
ETH0ETH0ProxyPer ogni Client che si
connette viene creata un interfaccia bnep per l’incapsulamento dei dati
Lato Access Point le interfacce bnep create sono unite con bridge a pan0
L’interfaccia di rete eth0 viene unita tramite bridge all’interfaccia virtuale pan0
Unica rete a cui i Device si collegano tramite una serie di bridge
HandoffHandoff
ETH0ETH0
BNEP0BNEP0
PAN0PAN0
BNEP0BNEP0
PAN0PAN0
ETH0ETH0
Ad ogni Client è associato un IP fisso
Trasparenza al Proxy: continua ad inviare sempre allo stesso IP
Il Proxy potrebbe continuare a inviare al vecchio Access Point
SOLUZIONE!?!
Handoff
BufferBuffer
A regime il livello di riempimento è minimo
Durante la fase handoffI frame provenienti dal Server vengono memorizzati nel bufferIn questa fase il livello di riempimento si alza costantemente, fino alla riconnessione del ClientDopo essersi riconnesso il Client invia il numero di sequenza dell’ultimo frame ricevutoIl Proxy riprende l’invio dal frame con numero di sequenza ricevuto
Ora il buffer è pieno (o quasi)…e se si verifica un altro handoff?????
Politica Adottata: 2 differenti velocità
Bassa: a regimeAlta: dopo la riconnessione del Client
Buffer dinamicoBuffer dinamico
Problema di gestione delle risorsePer molto tempo (a regime) il buffer èquasi vuoto ma alloca comunque lo stessonumero di risorse di quando è pieno
Buffer dinamico: modifica la sua capacità in base alla situazione
50 Frame quando non deve immagazzinare i frame provenienti dal Server
150 Frame quando il Client è disconnesso
DisconnessioneDisconnessione
ProxySessionProxy
Session
RTPProxyRTP
Proxy
Il Proxy invia iterativamente i frame che arrivano dal ServerIl Client notifica che si sta avvicinando a una situazione di handoff: il Proxy ingrandisce il proprio bufferIl Client notifica che la situazione di handoff è imminente: Il Proxy blocca l’invio dei frame al Client e comincia a memorizzare quelli provenienti dal Server
HandoffProbabilità Alta
HandoffImminente
RiconnessioneRiconnessione
ProxySessionProxy
Session
RTPProxyRTP
Proxy
Il Client invia un messaggio di riconnessione con il sequence number dell’ultimo frame ricevutoIl Proxy risponde con un Ack al ClientQuesta fase viene eventualmente iterata fino a quando il Client riceve l’AckIl Client invia un Ack al ProxyIl Proxy riprende l’invio dei frame immagazzinati
Reconnect
Ack
Ack
TestTest
Frame
Tempo in sec
Il Proxy invia i frame che riceve dal ServerIl Proxy si prepara ad un eventuale handoff: ingrandisce il buffer
Il Proxy comincia a immagazzinare i frame provenienti dal Server
Il Proxy ricomincia a inviare i frame al Client, svuotando il buffer
Per i test sono stati utilizzati 5 portatiliUn portatile per il ClientDue portatili per gli Access PointUn portatile per il ProxyUn portatile per il Server
Conclusioni e sviluppiConclusioni e sviluppi
Il Sistema progettato garantisce continuità di servizio anche a fronte di ripetuti handoffL’utilizzo di un buffer dinamico permette di gestire al meglio l’allocazione di risorseIl protocollo utilizzato garantisce al Client la ricezione di tutti i frame della canzone, ad esclusione di quelli persi per il protocollo UDP
Per il futuro…Adattamento del servizio in base alla caratteristiche del DeviceAggiunta di funzionalità che permettono di controllare il flusso audio in uscita dal ProxyUtilizzo di differenti dispositivi device, come ad esempio Palmari
FineFine
Top Related