Skype: Capiamo la sua Architettura e i suoi Punti Deboli

Problematiche di Skype

E’ di pochi giorni fa la notizia che Microsoft ha acquisto Skype per la modica cifra di 8,5 milioni di dollari ( non riesco nemmeno ad immaginare una cifra tanto cospicua :D). Tale notizia mi ha portato a fare qualche ricerca sull’architettura alla base di tale sistema per cercare di capire come mai il colosso Microsoft abbia speso tutti questi soldi per l’acquisizione.

 

Skype, nata come applicazione VoIP ( Voice Over Internet Protocol ) e Video-Chat, e’ davvero molto popolare nel mondo, si calcolano almeno 125 milioni di account, ma d’altro canto  e’ anche considerato un “cattivo software” per molti esperti del settore. Di seguito passeremo in rassegna le principali problematiche.

Il paradigma alla base dell’architettura di Skype e’ quello del Peer-Top-Peer ( P2P ), infatti nasce come variazione dell’ormai obsoleto programma di file-sharing Kazaa. Quando effettuiamo una chiamata ( audio o video ) con Skype, essa viene criptata secondo il famoso algoritmo AES ( Advanced Encrypted Standard ) tramite una chiave a 256-bit. Tale chiave NON viene scambiata direttamente tra il nostro PC e quello della persona con cui vogliamo comunicare, ma bensi’ la chiave passa dal nostro PC ad un intermediario, e da esso al PC con cui vogliamo comunicare.

Proprio come pensate… quando chiamate qualcuno, magari per mostragli il vostro sedere…o mentre fate sesso con la vostra ragazza 😀 ( sfortunatamente non ho di questi problemi 😛 ), tale flusso di bit passano attraverso un numero imprecisato di computer prima di arrivare a destinazione. Vi sembra un modo sicuro di effettuare una comunicazioni??

Oltre a tutto cio’, grazie all’architettura alla base di Skype, vi e’ la seria possibilita’ che diventiate un Super Node ( SN ), cioe’ un client che ha compiti “straordinari” come per esempio: Login-Servers (conserva i nickname di Skype, Emails ed una copia criptata della Password degli utenti loggati su di voi). Infatti, spesso non ci logghiamo direttamente sui Server di Skype, ma bensi’ su un Super Node, il quale avra’ il compito della sincronizzazione del nostro PC con gli altri PC della rete…
Ovviamente bisogna soddisfare dei requisiti per diventare SN:

  • Avere un’alta disponibilita’ di banda
  • Non usare NAT ( Network Address Traslation ) o firewall
  • Avere un basso uso della CPU

Tali caratteristiche, che possono sembrarvi alquanto remote, in realta’ sono molto cumuni  soprattutto nelle aziende un po’ piu’ grandi dove vi sono linee dedicate per l’accesso ad Internet.

Non vuoi essere nulla di tutto cio’? leggi Skype IT Administrator Guide per evitare di diventare un SN.

Come avete ben capito, per far si che Skype funzioni bisogna avere un PC senza protezioni. Per tale motivo la rete di Skype cade , abbastanza di frequente,  dato che ad oggi non ci sono abbastanza SN ( chiunque usa un firewall o e’ dietro Router ) e tutto il traffico viene indirizzato sui quei pochi SN disponibili, i quali a loro volta collasseranno :D.

Ma non esiste un modo per evitare tutto questo!? Certo che esiste… ma la filosifia di Skype e’ quella di avere un sistema altamente scalabile senza il bisogno di mantenere un enorme numero di server.

Nonostante questo.. io lo uso molto spesso 😛

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.