Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoElisabetta Romeo Modificato 11 anni fa
1
puntoPunto Reliable peer-to-peer overlay network con capacità di NAT traversal Vincenzo Pacella matr. 0000197406
2
Obiettivi Progettare una semplice overlay network peer- to-peer Decentralizzata Garanzie sulla consegna dei pacchetti trasmessi Capacità di attraversamento dei NAT Alta configurabilità Realizzare un prototipo funzionante, con i relativi strumenti di supporto
3
Scenario
4
Architettura di puntoPunto
5
Struttura del pacchetto Header di lunghezza fissa (56 byte) Tre tipi: System Feedback Data Chunk
6
Packet Exchange Protocol Necessario garantire la ricezione dei messaggi spediti Messaggi organizzati in Message Pools Garbage collecting configurabile Resend policy configurabile Prima spedizione gestita da PoolManager (unico) Resending gestito individualmente per ogni Pool
7
Discovery/Heartbeat Protocol In fase di bootstrap si caricano i descrittori Dal Rendezvous Server Dalla cache locale Gestione delle tabelle locali dei descrittori Alla ricezione di un messaggio di discovery ogni nodo invia il proprio descrittore in risposta Profondità del discovery configurabile I nodi confermati si scambiano continuamente messaggi di heartbeat
8
Routing Routing table costruita a partire dalle informazioni estratte dai pacchetti ricevuti Alla prima ricezione da un dato nodo Ogni volta che viene ricevuto un pacchetto da un dato nodo NAT Traversal implicito in molti casi
9
STUN Necessario identificare la tipologia di NAT tramite STUN Full Cone Restricted Cone Port Restricted Cone Symmetric Il Packet Exchange Protocol garantisce lattraversamento implicito per alcuni tipi di NAT Presenza obbligatoria di un intermediario se i due endpoint si trovano dietro due NAT diversi (relaying) Non è obbligatorio/necessario utilizzare STUN
10
Rendezvous server Server sviluppato in php/mysql Ogni nodo è dotato di un broker che traduce le richieste da/per http Operazioni: Registrazione Rimozione Ricerca Download dei descriptors Tutte le richieste sono firmate da un hash calcolato con la chiave di sessione La chiave varia a ogni esecuzione Solo server e nodo conoscono la chiave
11
Conclusioni Ottime possibilità di attraversamento di NAT Linvio e la ricezione di dati avviene in maniera del tutto trasparente rispetto allarchitettura sottostante e alla dislocazione dei nodi Larchitettura offre buone prestazioni per reti di modeste dimensioni Per reti di grandi dimensioni è necessario adottare tecniche di routing più effcaci, comunque implementabili in strati superiori E necessario ottimizzare luso della banda Tecniche di relaying più efficienti Analisi della QoS percepita e scelta dei migliori canali
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.