Imagem digital
Configuração de 640 x 480 e 24 bits/pixel (RGB)
7,37 Mbits
Imagem digital - compactação - JPEG
Joint Photographic Experts Group
Definido no padrão internacional 10918
Possui quatro modos com várias opções
Um dos principais é o modo sequencial com perdas para imagens RGB de 24 bits
Imagem digital - JPEG - seq. com perdas
JPEG no modo sequencial com perdas (fonte: Tanenbaum)
Preparação do bloco
Uso de luminância (Y) e crominância (I e Q)
Melhor compactação
Criação de matrizes Divisão em blocos
Matrizes após a preparação do bloco (fonte: Tanenbaum)
Imagem digital - JPEG - seq. com perdas
(a) entrada em RGB (b) após a preparação do bloco Transformação discreta de cossenos (Discrete Cosine
Imagem digital - JPEG - seq. com perdas
(a) (b)
Exemplo de DCT para a matriz Y (fonte: Tanenbaum)
DCT - cálculo dos coeficientes quantizados (fonte: Tanenbaum)
Imagem digital - JPEG - seq. com perdas
Imagem digital - JPEG - seq. com perdas
Após a varredura aplica-se a codificação
run-lenght
No exemplo, informa-se que são 38 zeros
Por
último,
utiliza-se
uma
codificação
de
Huffman
Códigos mais curtos para os valores mais comuns Códigos mais longos para os valores pouco comuns
Vídeo
Olho
humano
retém
imagens
por
alguns
milissegundos
Sequência exibida a 50 ou mais quadros (imagens) por segundo → olho não percebe imagens discretas
Vídeo analógico
Imagem bidimensional representada como uma voltagem variante no tempo
Vários formatos
NTSC PAL SECAM
Formatos diferem quanto ao número de linhas de varredura, relação entre os eixos vertical e horizontal e número de quadros por segundo
Vídeo analógico
Formatos usam 25 ou 30 quadros/s
Oscilação na imagem
Solução → exibe-se primeiro as linhas ímpares e depois as pares (entrelaçamento)
Vídeo digital
Configuração de 1024 x 768, 24 bits/pixel e 25
quadros/s
472 Mbps
Vídeo digital - MPEG
Motion Picture Experts Group
Padrão de áudio e vídeo digital
Mais utilizados
MPEG-1 MPEG-2 MPEG-4
Vídeo digital - MPEG-1
Padrão internacional 11172
Formato 352 x 240 com 24 bits/pixel e 25
quadros/s
Sem compactação → 50,7 Mbps 1,5 Mbps
Só
aceita
imagens
progressivas
(não
entrelaçadas)
Dividido em três partes
Áudio Vídeo Sistema
Vídeo digital - MPEG-1
Vídeo digital - MPEG-1
Compactação de vídeo
Redundância espacial Redundância temporal
Vídeo digital - MPEG-1
Quatro tipos de quadros
I (Intracoded)
Codificados com uma variante do JPEG Um ou dois por segundo
P (Predictive)
Usa blocos chamados macroblocos 16 x 16 na luminância
8 x 8 na crominância
Diferenças macrobloco a macrobloco em relação ao último quadro são codificadas
Vídeo digital - MPEG-1
Quadros consecutivos (fonte: Tanenbaum)
Vídeo digital - MPEG-1
Quatro tipos de quadros (cont.)
B (Birectional)
Diferenças macrobloco a macrobloco em relação a um quadro anterior ou seguinte são codificadas
D (DC-coded)
Usados para possibilitar a exibição de uma imagem de baixa resolução quando utiliza-se um avanço ou um retrocesso rápido
Vídeo digital - MPEG-1
Relação entre quadros I, P e B (fonte:
Vídeo digital - MPEG-2
Padrão internacional 13818
Formatos
352 x 240 → compatibilidade retroativa com MPEG-1 720 x 480 → NTSC
1440 x 1152 → HDTV 1920 x 1080 → HDTV
4 a 8 Mbps
Aceita imagens entrelaçadas e progressivas
Aumenta o tamanho do bloco usado na DCT de
8 x 8 para 10 x 10 para melhorar a qualidade
Vídeo digital - MPEG-4
Trata imagens como objetos
Chega a 4096 x 4096
Possui flexibilidade na escolha da taxa
Protocolos da camada aplicação
Definem como processos de uma aplicação
trocam mensagens
Mais especificamente definem
Tipos de mensagens trocadas
Sintaxe dos vários tipos de mensagens
Ex.: campos
Semântica dos campos
Regras para determinar quando e como um processo envia e responde a mensagens
Aplicações
Necessitam dos seguintes serviços de um
protocolo de transporte
Transferência de dados
Confiável
Não confiável
Banda passante
Aplicações podem ser sensíveis ou não à banda passante
Temporização
Aplicações
Exemplo de aplicações (fonte: Kurose)
Aplicação file transfer e-mail Web documents real-time audio/video stored audio/video jogos interativos msg instantânea Perdas sem perdas sem perdas sem perdas tolerante tolerante tolerante sem perda Banda elástica elástica elástica áudio: 5 Kb-1 Mb vídeo:10 Kb-5 Mb igual à anterior kbps elástica Sensível ao atraso não não não sim, 100’s mseg sim, segundos sim, 100’s mseg sim e não
Serviços do transporte na Internet
TCP
Transferência de dados confiável Orientado a conexão
Controle de congestionamento Controle de fluxo
UDP
Transferência de dados não confiável Não orientado a conexão
Sem controle de congestionamento Sem controle de fluxo
Serviços do transporte na Internet
Exemplo de aplicações (fonte: Kurose)
Aplicação
e-mail acesso a terminais remotos Web transferência de arquivos streaming multimídia servidor remoto de arquivos telefonia via Internet
Protocolo de aplicação smtp [RFC 5321] telnet [RFC 854] http [RFC 2616] ftp [RFC 959] http (Youtube) NFS sip ou proprietário (ex.: Skype) Protocolo de transporte TCP TCP TCP TCP UDP ou TCP UDP ou TCP tipicamente UDP
Aplicações
DNS
Transferência de arquivos (FTP)
Correio eletrônico
Web
Compartilhamento de arquivos P2P
Outras
DNS
Sistema de nomes de domínio (Domain Name
System)
Serviço de diretórios da Internet
Nomes são mais fáceis de lembrar
Descrito nas RFCs 1034, 1035 e outras
DNS consiste em
Banco de dados distribuído implementado em uma hierarquia de nomes
Protocolo da camada aplicação que permite que hospedeiros consultem o banco de dados
DNS
Usa o UDP e a porta 53
Dados armazenados em ASCII
Não é uma aplicação com a qual o usuário
interage diretamente
DNS
Serviços providos
Tradução de nomes de hospedeiros para endereços IP Apelidos de hospedeiros
Nome de hospedeiro é chamado nome canônico
Apelidos de servidor de correio eletrônico
Pode-se obter o nome canônico a partir do apelido
Distribuição de carga
Realizada entre servidores replicados
Conjunto de endereços IP associado a um único nome canônico
Respostas do DNS contêm o conjunto de endereços É feito um rodízio na ordem dos endereços
DNS - tradução de nome para end. IP
Banco de dados distribuído e hierárquico
Anteriormente os hospedeiros e seus endereços eram armazenados somente em um arquivo hosts.txt
Arranjo centralizado não seria escalável
Ponto de falha
Volume de tráfego
Atraso para clientes distantes do banco de dados Dificuldade de manutenção
DNS - tradução de nome para end. IP
Composto de
Servidores DNS locais
Três tipos (classes) de servidores de nomes
Raiz
De domínio de alto nível (Top-Level Domain – TLD) Com autoridade
DNS - tradução de nome para end. IP
Servidores de nomes raiz
Treze servidores na Internet (2006) espalhados pelo mundo
Servidores de nomes TLD ou de nível superior
Responsáveis por domínios de alto nível
Com, org, net, edu, gov, br, uk, ca etc. (genéricos e de países - ISO 3166)
Servidores de nomes com autoridade
Responsáveis por domínios das organizações
DNS - tradução de nome para end. IP
DNS - tradução de nome para end. IP
Espaço de nomes do DNS é dividido em zonas
não superpostas
Zona inclui os hospedeiros administrados diretamente por um servidor
Zona contém uma parte da árvore e servidores de nomes que armazenam informações referentes à zona Zona contém um servidor principal (obtêm suas informação a partir do disco) e servidores secundários (obtêm suas informações a partir do servidor principal)
DNS - tradução de nome para end. IP
Exemplo de interação entre servidores DNS (fonte: Kurose)
O hospedeiro em cis.poly.edu
quer o endereço IP para
gaia.cs.umass.edu
Servidor de nomes local da Polytechnique é dns.poly.edu
Servidor de nomes com
autoridade para
gaia.cs.umass.edu é
Exemplo de interação entre servidores DNS (fonte: Kurose)
1) Consulta ao servidor de nomes local
2) Consulta ao servidor de nomes raiz
3) Resposta com servidores TLD responsáveis por edu
4) Consulta ao servidor de nomes TLD
5) Resposta com servidor de
nomes com autoridade
responsável por umass.edu 6) Consulta ao servidor de nomes com autoridade
DNS - tradução de nome para end. IP
Consultas podem ser
Recursivas
Transfere a tarefa para o servidor consultado No exemplo, de cis.poly.edu para dns.poly.edu
Iterativas
Servidor responde com o nome de outro servidor a ser contactado
DNS - tradução de nome para end. IP
Uso de cache
Melhora o desempenho em relação ao atraso
Diminui a quantidade de mensagens DNS enviadas
Qualquer servidor pode responder, mesmo que não tenha autoridade para o nome
Frequentemente são feitos caches de servidores TLD
DNS - registros de recursos
Banco de dados DNS é constituído de registros
de recursos
DNS mapeia nomes de domínios em registros
de recursos
Domínios possuem registros de recursos associados a eles
DNS - registros de recursos
Campos (Name, Value, Type, TTL)
Se Type
A → Name = nome do hospedeiro, Value = endereço IP (relay1.bar.foo.com, 145.37.93.126, A)
NS → Name = nome do domínio, Value = nome de um servidor de nomes com autoridade que responde a consultas relativas aos hospedeiros do domínio
(foo.com, dns.foo.com, NS)
CNAME → Name = apelido do hospedeiro, Value = nome canônico do hospedeiro
(foo.com, relay1.bar.foo.com, CNAME)
MX → Name = apelido do hospedeiro, Value = nome canônico do servidor de correio eletrônico
DNS - registros de recursos
Formato (Name, Value, Type, TTL) (cont.)
TTL
Tempo de vida útil do registro
Determina quando o registro deve ser removido de um