Você envia uma foto para um amigo do outro lado do mundo. Ela não viaja como um bloco único. É cortada em centenas de pacotes pequenos, cada um rotulado…
Narração em inglês · legendas em inglês e 中文 que você pode alternar
2.1
O que é transmissão de dados?
Transmissão de dados significa mover dados de um lugar para outro — por exemplo, do seu computador para um site, ou de um telefone para uma impressora.
Os dados frequentemente viajam por um cabo. Dois exemplos comuns são mostrados abaixo.
Um cabo Ethernet com conector RJ45, usado frequentemente para transmitir dados em redes cabeadasUm cabo de fibra óptica transporta dados como pulsos de luz ao longo de finas fibras de vidro
Antes de ser enviada, os dados são divididos em pequenas peças de tamanho igual chamadas pacotes. Cada pacote viaja separadamente e eles são reagrupados no destino.
O uso de pacotes tem benefícios:
se um pacote for perdido ou danificado, apenas aquele pacote é reenviado, não todo o arquivo;
os pacotes podem tomar rotas diferentes, evitando assim rotas congestionadas ou quebradas;
muitos usuários podem compartilhar a mesma conexão ao mesmo tempo.
2.1
A estrutura de um pacote
Programa
Os candidatos devem ser capazes de:
Notas e orientações
1 (a) Entenda que os dados são divididos em pacotes para serem transmitidos
(b) Descreva a estrutura de um pacote
• Um pacote de dados contém um: – cabeçalho do pacote – payload – trailer • O cabeçalho do pacote inclui o: – endereço de destino – número do pacote – endereço do remetente
(c) Descreva o processo de comutação por pacotes
• Os dados são divididos em pacotes • Cada pacote pode seguir uma rota diferente • Um roteador controla a rota que um pacote segue • Os pacotes podem chegar fora de ordem • Assim que o último pacote chegar, os pacotes são reordenados
2 (a) Descreva como os dados são transmitidos de um dispositivo para outro usando diferentes métodos de transmissão de dados
Comutação por pacotes é a forma como os pacotes são enviados através de uma rede.
Os roteadores encaminham pacotes, e diferentes pacotes podem seguir rotas distintas até o mesmo destinatário
Dispositivos especiais chamados routers leem o cabeçalho de cada pacote e escolhem a melhor rota para ele.
Cada pacote pode seguir seu próprio caminho, então os pacotes podem viajar por caminhos diferentes.
Os pacotes podem chegar fora de ordem.
Quando o último pacote chegar, os pacotes serão reorganizados usando seus números de pacote.
Explorar
Como os dados viajam em pacotes
Passe por etapas com comutação de pacotes. Dividir um arquivo em pacotes endereçados é por que um pacote perdido só precisa ser reenviado, e por que muitos usuários podem compartilhar a mesma linha.
os bits podem chegar em momentos ligeiramente diferentes em fios longos
Série envia um bit após o outro ao longo de um caminho de dados. Paralela envia vários bits ao mesmo tempo ao longo de caminhos de dados separados. Com sincronização comparável, isso pode transferir mais bits por ciclo de relógio, mas a transmissão paralela nem sempre é mais rápida do que um enlace serial moderno.
Serial envia um bit por vez por um único fio; paralelo envia vários bits ao mesmo tempo por vários fios
Simplex, meia-duplex e full-duplex
Estes descrevem a direção pela qual os dados podem viajar.
Simplex é apenas uma via; half-duplex é ambas as vias, mas uma de cada vez; full-duplex é ambas as vias ao mesmo tempo
Método
Direção
simplex
apenas em uma direção (ex.: computador → impressora)
meio-duplex
ambas as direções, mas apenas uma por vez (ex.: walkie-talkie)
full-duplex
ambas as direções ao mesmo tempo (ex.: chamada telefônica)
Escolhendo um método
A escolha depende da distância, da velocidade necessária, do custo e se os dados precisam viajar em ambas as direções ao mesmo tempo.
Exemplo resolvido. Uma escola conecta (a) um computador a uma impressora na mesma sala, que apenas recebe documentos, e (b) dois escritórios separados por 200 m, que enviam arquivos um ao outro o dia todo. Sugira um método para cada caso e justifique-o.
(a) Serial, simplex: os dados só precisam ir do computador para a impressora, e a transmissão serial precisa de um único cabo barato. (A transmissão paralela também funcionaria nessa curta distância, mas simplex é o ponto principal: a impressora nunca envia dados de volta.)
(b) Serial, full-duplex: ao longo de 200 m, os bits em fios paralelos poderiam chegar em momentos diferentes e ficar dessincronizados, então a transmissão serial é mais confiável e barata. Full-duplex permite que os dois escritórios enviem dados ao mesmo tempo, sem esperar.
Sempre relacione a escolha a uma característica da situação: uma resposta de uma só palavra não vale pontos.
1 Entenda a necessidade de verificar erros após a transmissão de dados e como esses erros podem ocorrer
• Erros podem ocorrer durante a transmissão de dados devido a interferências, ex.: perda de dados, ganho de dados e alteração de dados
2 Descreva os processos envolvidos em cada um dos seguintes métodos de detecção de erros para detectar erros nos dados após a transmissão: verificação de paridade (ímpar e par), soma de verificação e verificação por eco
• Incluindo verificação de byte de paridade e bloco de paridade
3 Descreva como um dígito de verificação é usado para detectar erros na entrada de dados e identifique exemplos de quando um dígito de verificação é usado, incluindo números internacionais padronizados de livros (ISBN) e códigos de barras
4 Descreva como uma solicitação de repetição automática (ARQ) pode ser usada para estabelecer que os dados foram recebidos sem erros
• Incluindo o uso de: – confirmações positivas/negativas – timeout
Fonte: Programa Cambridge International
Enquanto os dados viajam, interferência pode alterá-los. Três coisas podem dar errado:
perda de dados — alguns bits não chegam;
ganho de dados — bits extras são adicionados;
alteração de dados — alguns bits são invertidos.
Assim, o destinatário verifica se os dados chegaram corretamente.
Uma verificação de paridade adiciona um bit extra, o bit de paridade, a cada byte. Existem dois tipos:
paridade par — o número total de 1s no byte (incluindo o bit de paridade) deve ser par;
paridade ímpar — o número total de 1s deve ser ímpar.
Exemplo (paridade par): os dados 1011001 têm quatro 1s, que já é par, então o bit de paridade é 0:
parity bit + data
0 1011001
Um bit de paridade é adicionado para tornar o número de 1s par (ou ímpar)
Para encontrar um erro: o destinatário conta os 1s. Se foi acordada paridade par, mas um byte chega com um número ímpar de 1s, ocorreu um erro durante a transmissão.
Uma verificação de paridade não consegue detectar todos os erros. Se dois bits forem invertidos, a contagem ainda pode parecer correta.
Exemplo resolvido. Um único bit de paridade indica que ocorreu um erro, mas não onde. Um bloco de paridade pode localizar o bit exato. Vários bytes são enviados juntos, cada um com um bit de paridade na linha, e um byte de paridade adicional na parte inferior armazena um bit de paridade para cada coluna. Usa-se paridade par abaixo, e um bit foi invertido durante a transmissão. Encontre-o.
A linha byte 3 viola a paridade par, e a coluna b3 viola a paridade par. O bit invertido está onde elas se cruzam: byte 3, bit b3. Alterá-lo novamente de 1 para 0 corrige os dados. Com a suposição de erro de único bit declarada, a linha e a coluna falhadas localizam o bit, permitindo que o receptor o corrija. Erros de múltiplos bits podem passar despercebidos ou produzir resultados ambíguos.
Soma de verificação
Um soma de verificação é um valor calculado a partir de todos os dados antes do envio. O receptor recalcula a soma de verificação a partir dos dados recebidos. Se os valores não coincidirem, ocorreu um erro e os dados são reenviados.
As etapas:
o remetente calcula a soma de verificação a partir do bloco de dados, usando um algoritmo previamente acordado;
a soma de verificação é enviada com os dados;
o destinatário calcula novamente a soma de verificação a partir dos dados recebidos, usando o mesmo algoritmo;
ele compara os dois valores: se forem iguais, os dados são aceitos; caso contrário, solicita que os dados sejam enviados novamente.
Verificação por eco
Em uma verificação por eco, o receptor envia os dados de volta ao remetente. O remetente compara com o original. Se diferirem, houve um erro. (Isso exige que os dados sejam enviados duas vezes, sendo lento.)
Automatic Repeat reQuest (ARQ)
Requisição Automática de Repetição (ARQ) usa mensagens chamadas confirmações.
O programa de estudos chama isso de requisição automática de repetição; requisição automática de repetição é outro nome para o mesmo método. O remetente inicia um temporizador de timeout ao enviar um pacote. O receptor usa uma verificação de erro no pacote recebido. Se a verificação for bem-sucedida, envia uma confirmação positiva. Se um erro for detectado, envia uma confirmação negativa.
ARQ: um reconhecimento positivo avança; um reconhecimento negativo ou um timeout faz o remetente reenviar
Tente — pacote 4. Em três casos separados, o pacote 4 (A) passa na verificação de erro do receptor, (B) falha na verificação ou (C) nunca chega. Para cada caso, escolha a resposta do receptor e a próxima ação do remetente.
Rastreio resolvido.
Caso
Receptor
Remetente
A
Envia uma resposta positiva
Recebe; para o temporizador; pode enviar próximo pacote
B
Envia resposta negativa
Recebe; reenvia pacote 4; reinicia temporizador
C
Não tem pacote para verificar
Tempo esgotado; reenvia pacote 4; reinicia temporizador
Uma resposta negativa pode causar uma repetição antes do temporizador expirar. Se nenhum reconhecimento positivo chegar antes do tempo esgotado, o emissor repete a transmissão. O temporizador trata silêncios, incluindo pacotes ou respostas perdidos.
Transferência — uma resposta perdida. Pacote 4 chega e passa na verificação. O receptor envia um reconhecimento positivo, mas esta resposta é perdida. O que faz o emissor quando seu temporizador expira? A expiração prova que o pacote 4 foi danificado?
Resposta. O emissor reenvia o pacote 4 e reinicia seu temporizador. O receptor sabe que o pacote chegou com sucesso, mas o emissor não tem confirmação. A expiração não informa ao emissor se o pacote ou a resposta foram perdidos ou atrasados. ARQ pede outra transmissão; ele não repara bits danificados. Usa verificação de erro para decidir se aceita um pacote recebido.
Dígito verificador
Um dígito verificador é um dígito adicional colocado no final de um número, calculado a partir dos outros dígitos. É usado para detectar erros quando um número é digitado.
Quando o número é inserido, o dígito verificador é recalculado e comparado. Dependendo do método, pode detectar alguns desses erros; nenhum dígito verificador garante que todos os erros de entrada sejam encontrados:
um dígito incorreto digitado,
um erro de transposição (dois dígitos trocados, ex: 21 digitado como 12),
um dígito omitido ou um dígito extra adicionado,
um erro fonético (um dígito que soa similar, ex.: 13 e 30).
Dígitos verificadores são usados em códigos de barras e ISBNs (números de livros).
Exemplo resolvido (ISBN-13). Os primeiros 12 dígitos do número de um livro são 978034083988. Calcule o dígito verificador. O método ISBN-13 multiplica os dígitos, sucessivamente, por 1, 3, 1, 3, …, soma os resultados e escolhe o dígito verificador que torna o total um múltiplo de 10.
Dígito
9
7
8
0
3
4
0
8
3
9
8
8
Peso
1
3
1
3
1
3
1
3
1
3
1
3
Produto
9
21
8
0
3
12
0
24
3
27
8
24
O total é $139$. Divida por 10: o resto é $9$, e $10 - 9 = 1$, então o dígito verificador é 1 (se o resto for 0, o dígito verificador é 0). O número completo é 9780340839881.
Agora suponha que os dígitos nas posições 9 e 10 sejam trocados durante a digitação: ...8 9 3 8 8.... Os produtos desses dois dígitos passam a ser $9 \times 1 + 3 \times 3 = 18$ em vez de $3 + 27 = 30$, então o total dos primeiros 12 dígitos é $127$, e $127 + 1 = 128$não é múltiplo de 10: o erro de transposição é detectado.
Explorar
Laboratório de conceitos de computação
Classifique exemplos concretos pelo conceito de computação que eles demonstram.
1 Entenda a necessidade e o propósito da criptografia ao transmitir dados
2 Entenda como os dados são criptografados usando criptografia simétrica e assimétrica
• A criptografia assimétrica inclui o uso de chaves pública e privada
Fonte: Programa Cambridge International
Por que precisamos de criptografia
Criptografia embaralha dados para que não possam ser compreendidos se forem interceptados por pessoa indevida. Os dados legíveis são chamados de texto claro; após criptografia tornam-se texto cifrado.
A criptografia não impede que os dados sejam interceptados. Ela apenas impede que os dados sejam compreendidos.
Criptografia simétrica
Criptografia simétrica usa uma única chave tanto para criptografar quanto para descriptografar os dados. O emissor e o receptor devem compartilhar essa mesma chave secreta. O risco é que a própria chave possa ser roubada durante a compartilhamento.
Criptografia assimétrica
Criptografia assimétrica usa duas chaves diferentes:
uma chave pública que qualquer um pode ter, usada para criptografar;
uma chave privada que é mantida em segredo, usada para descriptografar.
Os dados criptografados com a chave pública só podem ser descriptografados com a chave privada correspondente, portanto a chave privada nunca precisa ser compartilhada. Isso é mais seguro do que compartilhar uma única chave secreta.
Simétrica usa uma chave compartilhada; assimétrica usa uma chave pública para criptografar e uma privada para descriptografar
Explorar
A cifra de César
Desloque cada letra para encriptar uma mensagem — a ideia mais simples de uma cifra e a sua chave.
Os dados são enviados em pacotes (um cabeçalho com os endereços e número do pacote, um payload e um trailer). Os pacotes podem seguir rotas diferentes e chegar fora de ordem, sendo depois reordenados pelos seus números de pacote.
Corresponda os tipos de transmissão: serial (um bit por vez, bom para longas distâncias) vs paralelo (vários bits ao mesmo tempo, curtas distâncias); simplex / half-duplex / full-duplex descrevem a direção.
Um bit de paridade detecta um número ímpar de bits invertidos. Um bloco de paridade localiza o bit errado quando exatamente um bit foi invertido — a interseção da linha e coluna falhadas indica a posição.
Aprenda os métodos de detecção de erros e o que cada um faz: verificação de paridade, soma de verificação, verificação por eco, ARQ e dígito verificador (para números digitados).
Simétrica usa uma chave compartilhada; assimétrica usa uma chave pública para criptografar e uma chave privada para descriptografar, evitando o compartilhamento de chaves secretas.