A arquitetura original do Skype (pré-migração para nuvem Microsoft) dependia de uma sobreposição peer-to-peer (P2P) descentralizada para duas tarefas críticas:
1. Estabelecimento de Conexões Diretas entre Pares (Sinalização e Travessia NAT)
- Tabela Hash Distribuída (DHT): Cada cliente Skype atuava como nó em uma DHT estilo Kademlia, armazenando mapeamentos
(SkypeID → IP:porta) para usuários online.
- Supernós: Clientes com alta largura de banda e sem firewall eram promovidos a supernós para indexar segmentos da DHT e auxiliar travessia NAT.
- Lógica tipo ICE/STUN/TURN: Uma vez que pares se localizavam via DHT, tentavam UDP hole-punching para caminhos de mídia diretos. Se NATs simétricos bloqueassem UDP direto, a mídia era relayada via supernós (atuando como relés TURN).
- Resultado: Voz/vídeo de baixa latência e alta qualidade sem servidores centrais de mídia.
2. Transporte Multimídia em Tempo Real (Áudio/Vídeo/Dados)
- Codecs Proprietários: SILK (áudio, depois Opus), VP7/VP8 (vídeo) otimizados para bitrates variáveis e perda de pacotes.
- Streams P2P Criptografados: Mídia fluía criptografada AES-256 diretamente entre endpoints (ou via relay de supernó), reduzindo carga e custo de infraestrutura central.
- Bitrate Adaptativo: Estimativa contínua de largura de banda ajustava bitrate/FEC do codec em tempo real.
- Transferência de Arquivo e Compartilhamento de Tela: Também usavam os mesmos canais P2P criptografados.
Mudança Arquitetural (Pós-2012)
A Microsoft moveu gradualmente a sinalização para serviços de nuvem Azure dedicados (Skype Cloud) e a mídia para clusters de relay (Media Processors) para melhor vida útil de bateria em mobile, conformidade regulatória (interceptação legal) e velocidade de features. Clientes modernos do Skype ainda usam P2P para alguns canais de dados peer-to-peer, mas a mídia central é predominantemente relayada na nuvem.
Entender o design P2P clássico explica a escalabilidade inicial do Skype — milhões de usuários simultâneos com capex mínimo de servidores.