skype

Post on 25-May-2015

501 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Baseado na infra-estrutura P2P.

Funcionalidade semelhante ao MSN e ao Yahoo IM.

Técnicas empregadas são distintas.Linguagens:Em Windows: a interface do usuário foi desenvolvida em pascal usando Delphi.Em Linux : foi desenvolvido usando C++ com Qt.Em Mac OS X: foi escrita usando Objective-C com Cocoa.

Arquitetura

Ordinary host:Toda aplicação Skype que possa ser utilizada para emitir chamadas de voz e envio de mensagens.Super nodes:IP publico, CPU, memória e bandaSevem como ponto de conexão entre um nó comum e a rede Skype.Servidor de Login:Único servidor centralizadoArmazena nomes e senhasDemais informações são armazenadas e propagadas de modo descentralizado.

Arquitetura

Um cliente do Skype:

Escuta uma porta em particular para entrada de

chamadas.

A porta:

abre uma escuta TCP e UDP em uma porta

configurada na conexão da caixa de diálogo.

escolhe um número de porta aleatoriamente

durante a instalação.

escuta a porta 80 (HTTP) e a 443 (HTTPS).

Componentes Principais Porta

Mantém uma tabela denominada host cache. Host Cache:

contém os pares endereço de IP e número da porta dos super nós, sendo

construída e atualizada periodicamente pelo cliente.

deve constar pelo menos uma entrada válida.

Todas as informações são armazenadas em um arquivo denominado

shared.xml.

Em Windows XP: C:\Documents and Settings\<XP User>\Application

Data\Skype

Em Linux: $(HOMEDIR)/.Skype

Componentes Principais Host Cache

Utiliza codecs de banda larga: SILK – conexão Skype-Skype.

Desenvolvido pelo Skype Limited. Características:

É um codec wideband. Amostragem: 8, 12, 16 ou 24kHz. Bitrate: 6 a 40 kbit/s. Atraso no algoritmo de 25ms por frame, com look-ahead de 5ms. Mean Opinion Scores (MOS): 3.22 em testes com perdas de pacotes (o

áudio sem compressão recebeu MOS=3.3). Características para Skype.

Componentes Principais Codecs

G.729 – conexão para serviços Skype-Out. Codec padrão ITU. Muito utilizado em aplicações VoIP. Principais características:

Quadros de 10ms, com amostragem fixa em 8kHz. Bitrate fixo: 8 kbit/s. Tamanho de quadro fixo: 10 bytes. Atraso no algoritmo de 15ms por frame, com look-

ahead de 5ms. Mean Opinion Scores (MOS): 3.51 em testes com

perdas de pacotes (G.729a) e 4.04 em condições ideais (G.729a).

Componentes Principais Codecs

Outros codecs utilizados pelo Skype - desenvolvidos pela Global IP Sound.

iLBC: Principais características:

Quadros de 20 ou 30ms, com amostragem fixa em 8kHz. Bitrate fixo: 15.2 kbit/s para quadros de 20ms e 13.33 kbit/s para quadros de 30ms. Tamanho de quadro fixo: 303 bits(armazenado em 38 bytes) para quadros de 20ms e 399

bits (armazenado em 50 bytes) para quadros de 30 ms. Mean Opinion Scores (MOS): 4.14 em condições ideais.

iSAC: Principais características:

Quadros adaptativos de 30 a 60ms, com amostragem fixa em 16kHz.. Bitrate variável: 10 a 32 kbit/s.

iPCM.

Componentes Principais Codecs

TrueMotionVP – para chamadas de vídeo. Desenvolvido pela On2 Technologies. Testes subjetivos. Capacidade de codificar e decodificar em tempo real. Características.

Mantém uma lista de contatos: armazenada na máquina local do usuário (cliente) sem criptografia. config.xml

Em Windows: C:\Documents and Settings\<XP User>\Application Data\Skype Em Linux: $(HOMEDIR)/.Skype/<skype user id>

Criptografa mensagens. AES - utilizada pelo governo nos Estados Unidos para proteger informações sensíveis. Skype - 256-bit com um total de 1.1 x 10^77 possíveis Principais. RSA de 1024 bits → negociar as Principais simétricas AES.

Componentes Principais Codecs, Criptografia, NAT, Firewall

Determina se está diante de uma configuração NAT, firewall ou ambas.

NAT e firewall: protocolos SUM e TURN. shared.xml.

Componentes Principais NAT, Firewall

Inicialização – Startup:logo após a instalação:

HTTP do tipo GET . palavra chave: ‘installed’.

Inicializações subseqüentes: request HTTP. palavra chave: ‘getlastversion’.

Funções Login

Login:Neste processo, o cliente:

Autentica o nome de usuário e senha no servidor de login. Anuncia presença para outros nós e amigos. Determina o tipo de NAT e/ou firewall envolvidos. Identifica os nós online. Verifica a disponibilidade de uma versão mais recente do software em uso.

Na primeira etapa do processo: cliente conectando-se a um super nó.

Na ausencia de pelo menos uma entrada valida, falha no login. Teste.

Funções Login

Primeiro login: Lista HC:

Bootstrap Super Nodes:

O cliente obtém o endereço IP do servidor de login.

estabelece uma conexão TCP com o servidor.

Após autenticação encerra a conexão.

a conexão estabelecida com o Super Nó persiste.

Funções Login

Login´s Subsequentes:

Similar ao primeiro.

O cliente constrói e passa a atualizar periodicamente a tabela HC.

Busca de Usuários:

Utiliza a tecnologia GI (Global Index):

busca realizada de forma distribuída.

garante a capacidade do sistema encontrar qualquer usuário existente logado nas

últimas 72 horas na rede Skype.

Protocolo fechado e mensagens criptografadas.

Funções Login, Busca de Usuários

O cliente: busca por um usuário em particular enviando um pacote TCP para o super nó o qual

está conectado. Aparentemente o super nó fornece para o cliente os pares (IP, porta) de quatro nós

para consulta. envia pacotes TCP para os nós fornecido. Caso a busca não seja bem sucedida o cliente informa o super nó que o envia mais

um conjunto de pares (IP, porta). O processo continua até que o cliente encontre o usuário ou determine que o

mesmo não existe.

Estabelecimento de Chamadas:realizada através de envios de pacotes TCP do emissor para o receptor, de

forma direta ou indireta.

Funções Busca de Usuários, Estabelecimento de Chamadas

Para usuários presentes da lista de amigos do cliente emissor da chamada.

Procedimentos:

Nó emissor e receptor livres de NAT e firewall.

Nó emissor com NAT e receptor com endereço IP publico.

Ambos, emissor e receptor, com NAT e firewall para UDP.

Teardown:

Sinalização realizada com pacotes TCP.

Funções Estabelecimento de Chamadas, Teardown

Chamada de voz. Usuários preferem áudio transmitido com bitrates maiores.

3 fatores que governam a taxa de transmissão de uma

chamada de voz:

Bitrate.

Tempo do quadro (frame rate).

Redundância.

Qualidade de Chamada

4 fatores que analisa controle de qualidade da

chamada:

Taxa de perdas na rede.

Disponibilidade de banda.

Efeito do Codec.

Padrão da perda dos pacotes.

Qualidade de Chamada

Taxa de perdas na rede

Qualidade de Chamada 1º Fator

Disponibilidade de banda.

Efeito do Codec.

Qualidade de Chamada 2º e 3º Fator

Padrão da perda dos pacotes.

A() tenta enviar todos os dados de uma vez.

congestionamento → esperar.

B() espalha o envio de dados por um período maior de tempo

foge de problemas de congestionamento.

A() precisa de mais largura de banda média do que B

ambos enviam a mesma quantidade de dados.

Qualidade de Chamada 4º Fator

Network Burstiness.

Network Loss Burstiness.

Burst Ratio:

Equação:

é a probabilidade de perder o pacote n, se o pacote n-1 chegouα

é a probabilidade de perder o pacote n, se o pacote n-1 foi β

perdido

Qualidade de Chamada 4º Fator

Razão de redundância analisada para três valores diferentes de Burst Ratio.

Skype não leva em conta o valor de Burst Ratio para o controle de redundância.

Conclusão: a política do Skype não é ótima, apesar de obter bons resultados.

Qualidade de Chamada 4º Fator

Para melhorar a qualidade, o Skype tende a utilizar mais banda, devido ao uso da redundância de pacote.

Qualidade de Chamada 4º Fator

Codec VP7.

Qualidade de Chamada de Vídeo

Usernames sempre únicos.

Apresentação de usernames.

Provas de identidades.

Criptografia de mensagens.

Política de Segurança do Skype

Privacidade.Criptografa mensagens transmitidas pela internet.

AES block cipher. RSA public-key cryptosystem. Função hash SHA-1. RC4.

Autenticidade.Username e password.E-mail de identificação.Timeout – quantidade limitada de tentativa de login.

Política de Segurança do Skype

Dispobilinidade.Integridade.Ligações de boa qualidade, exceto ligações em redes wireless.

Política de Segurança do Skype

Diferencial do Skype:P2P. FacebookUtiliza banda mesmo quando desconectado.Segurança duvidosa.

Conclusão

top related