Baixe o app para aproveitar ainda mais
Prévia do material em texto
Redes de Computadores Prof. Me. Anderson Bessa da Costa Camada Física & Camada de Enlace Camada Física Visão geral da Internet Teorema de Shannon-Hartley n Dá um limite superior da capacidade do link em termos de bits por segundo (bps) como uma função de razão sinal-ruído do link medido em decibéis (dB). n C = Blog2(1+S/N) n Onde B = 3300 – 300 = 3000Hz, S é a potência do sinal, N é o ruído médio; n A razão sinal-ruído (S/N) é medida em decibéis é relacionada a dB = 10 x log10(S/N). Se existem 30dB de ruído então S/N = 1000; n Agora C = 3000 x log2(1001) = 30kbps; n Como conseguimos 56kbps? Enlaces n Todos os enlaces (links) contam com algum t i p o d e p r o p a g a ç ã o d e r a d i a ç ã o eletromagnética em algum meio; n Meios Guiados: Os sinais se propagam em meios sólidos; n cobre, fibra; n Meios Não Guiados: Os sinais se propagam livremente (através do ar); n rádio; Meios Físicos n Cabos: n Enlaces locais: n pares trançados, cabos coaxiais e fibras óticas .. n Linhas alugadas das operadoras: n E1, T1, T3 .. n Enlaces para residências: n POTS, ISDN, xDSL, CATV, ATM .. n Sem fio (Wireless): n rádio, microondas, infravermelho, luz .. Meios Físicos n Par Trançado (TP – Twisted Pair) n Possui pares de fios entrelaçados um ao redor do outro para cance lar as interferências eletromagnéticas de fontes externas e interferências múltiplas; n A taxa de giro (normalmente giro por metro) é parte da especificação de certo tipo de cabo; n Quanto maior o número de giros/metro, mais o ruído é cancelado; Visão geral de um par trançado Meios Físicos n Par Trançado (TP – Twisted Pair) n Categoria 3: n Usado nas redes ethernet criado nos anos noventa; n 10Mbps n Categoria 5: n Usado em redes fast ethernet; n 100Mbps; Meios Físicos n Cabo Coaxial (Coaxial Cable) n Fio de cobre condutor revestido por um material isolante e rodeado duma blindagem; n Fio (transporta o sinal) dentro de outro fio (blindagem) Estrutura do cabo coaxial Meios Físicos n Cabo de Fibra Ótica n fibra de vidro transporta pulsos de luz n opera em alta velocidade n Ethernet 100Mbps n transmissão ponto a ponto de alta velocidade (ex. 10Gbps) n baixa taxa de erros Propagação da luz através da fibra ótica Enlaces n Outra característica importante link é a frequência n Medida em hertz, com o qual as ondas eletromagnéticas oscilam n Distância entre o par adjacente do máxima ou mínima de uma onda, medido em metros é chamado de comprimento de onda n Velocidade da luz dividida pela frequência dá o comprimento de onda. n Frequência em uma faixa de cabo de cobre de 300Hz a 3300Hz; Comprimento de onda para onda de 300Hz através de cobre é a velocidade da luz em um cobre / frequência de n 2/3 x 3 x 108 300 = 667 x 103 metros. n Colocação de dados binários em um sinal é chamado de codificação. n Modulação envolve modificar os sinais em termos de sua frequência, amplitude e fase para transmitir. Espectro eletromagnético Geralmente, as ondas eletromagnéticas se espalham por um intervalo de frequência muito mais amplo, variando desde ondas de rádio até luz infravermelha, luz visível, raios x e raios gama. CODIFICAÇÃO Codificação n O primeiro passo para transformar nós e enlaces em blocos de montagem utilizáveis é entender como conectá-los de modo que os bits possam ser transmitidos de um nó para o outro; n Objetivo: n Codificar os dados binários que o nó de origem deseja enviar em sinais que os enlaces sejam capazes de transportar; Os sinais viajam entre componentes de sinalização; fluxo de bits entre adaptadores A maioria das funções discutidas nesta aula é realizado por um adaptador de rede – uma peça de hardware que conecta um nó a um enlace. O adaptador de rede contém um componente de sinalização que realmente codifica os bits em sinais no nó emissor e decodifica os sinais em bits no nó receptor. NRZ (Não Retorno a Zero) n 0 como sinal baixo e 1 como sinal alto Codificação NRZ de um fluxo de bits Problema?????? NRZ (Não Retorno a Zero) Problemas: n Perda da linha de base n O receptor mantém uma média dos sinais vistos; n Utiliza a média para distinguir entre o sinal baixo e alto; n Quando o sinal é significativamente abaixo da média, considera-se como bit 0, caso contrário como bit 1; n Muitos 0’s e 1’s consecutivos causam uma mudança na média, tornando-se difícil a detecção; NRZ (Não Retorno a Zero) Problemas: n Recuperação do clock n Transição frequente de alto para baixo ou vice- versa são necessárias para permitir a recuperação do clock; n Tanto o processo de envio e decodificação é impulsionado por um clock; n Cada ciclo de clock, o remetente transmite um bit e o receptor recupera um bit; n O remetente e o receptor precisam estar sincronizados; NRZ (Não Retorno a Zero) Problemas: n Recuperação do clock n Se o c lock do receptor fo i ligeiramente mais rápido ou mais lento que o clock do emissor, então ele não decodificará o sinal corretamente; NRZI (Não Retorno a Zero Invertido) n Remetente faz a transição do sinal corrente para codificar 1, e mantém no sinal corrente para codificar 0; n Resolve o problema de 1’s consecutivos; n Não resolve o problema dos 0 ’s consecutivos; Codificação Manchester n Une o clock com o sinal sendo transmitido Ex-OR do NRZ codificando dados e o clock n Clock é um sinal interno que alterna de baixo para alto, um par baixo/alto é considerado como um ciclo de clock n Na codificação Manchester n 0: transição baixo à alto n 1: transição alto à baixo Codificação Manchester n Problemas: n Duplica a taxa na qual as transições são feitas no enlace n Significa que o receptor tem a metade do tempo para detectar cada pulso de sinal n A taxa na qual o sinal muda é chamado taxa de baud; n Em Manchester a taxa do bit é metade da taxa de baud (o que é ruim); Diferentes estratégias de codificação Codificação 4B/5B n Insere bits extras no fluxo de bits para quebrar longas sequências de 0’s e 1’s; n Cada 4-bits de dados são codificados como um código de 5-bits que é transmitido para receptor; n Códigos de 5-bits são selecionados de tal modo que um não tenha um 0 no início e dois 0 no final; n Nenhum par de código de 5-bits resulta em mais do que 3 0’s consecutivos; n Alcança 80% de eficiência; C a m a d a d e Enlace Introdução à Camada de Enlace Terminologia n Enlace (ou link) c a n a l d e c o m u n i c a ç ã o en t re do i s ou mais hosts n Dedicado n Compartilhado Obje%vo: transportar um datagrama de uma ponta do enlace a outra. Comunicação entre Interfaces n Camada de en l a ce i m p l e m e n t a d a n a Interface n I n t e r f a c e é s e m i - autônoma (responde sozinha) n Camada de enlace e física n Transmissor n Encapsula pacote em quadro n Adiciona endereço das interfaces, bits, para detecção de erros, etc. n Receptor n Verifica endereço destino, procura por erros n Extrai pacote e passa para a camada de redes. Enquadramento n Camada física aceita um fluxo de bits bruto e tenta entregá-lo no destino. n O número de bits recebidos pode ser menor, igual ou maior do que onúmero de bits transmitido, e eles podem ter valores diferentes dos bits originalmente transmitidos. n Estratégia n Dividir o fluxo de bits em quadros n Problema: n Projeto deve tornar fácil para o receptor encontrar o início de novos quadros. Camada de Enlace n Gerencia a transmissão, transporta quadro de bits, detecta e opcionalmente corrige os erros de transmissão; n a cadeia de bits enviada ao nível de enlace é organizada em conjuntos de bits denominados quadros; Camada de Enlace n D e l i m i t a ç ã o d e Q u a d r o s (Enquadramento) n como identificar os limites entre quadros? n Detecção e Correção de Erros n como detectar quando saiu algo errado? o que fazer neste caso? n Controle de Fluxo n Computador Super Poderoso x 486 ENQUADRAMENTO Enquadramento n Nos concentramos em redes de comutação de pacotes, o que significa que os blocos de fluxos de dados (chamados de quadros a este nível), não fluxo de bits, são trocados entre nós; Fluxo de bits entre os adaptadores, quadros entre os hosts Enquadramento n Quando o nó A deseja transmitir um quadro ao nó B, diz a seu adaptador para transmitir um quadro da memória do nó. Isto resulta em uma sequência de bits sendo enviada pelo link; n O adaptador no nó B então coleta juntamente a sequência de bits chegando no link e deposita o respectivo quadro na memória de B; n Reconhecer exatamente o conjunto de bits que constituem um quadro – isto é, determinar onde o quadro começa e termina – é desafio central do adaptador; Enquadramento Existem várias maneiras de resolver o problema do enquadramento .. Enquadramento n Protocolos orientados a byte n Visualiza cada quadro como uma coleção de bytes (caracteres) ao invés de bits; n Dois protocolos principais: n B I S Y N C ( B i n a r y S y n c h r o n o u s Communication) : n Desenvolvido pela IBM (final de 1960) n DDCMP (Digital Data Communication Protocol) n Utilizado na DECNet B I S Y N C – A b o r d a g e m Sentinela n Quadros transmitidos a partir do campo mais à esquerda; n Início de um quadro é denotado enviando um caractere especial SYN (synchronize) n Porção de dados do quadro é contido entre o caractere sentinela especial STX (start of text) e ETX (end of text) n SOH : Start of Header n DLE : Data Link Escape n CRC: Cyclic Redundancy Check Formato de quadro BISYNC n Comumente é executado através de links de Internet usa a abordagem de sentinela n Caractere especial start of text como Flag n 0 1 1 1 1 1 1 0 n Endereço, controle: valores default n Protocolo para demux: IP / IPX n Payload : negociável (1500 bytes) n Checksum : para detecção de erros PPP (Point to Point Protocol) Formato de quadro PPP n Abordagem contagem de bytes n Count: quantos bytes estão contidos no corpo do quadro n Se Count está corrompido n Erro de enquadramento DDCMP Formato do Quadro DDCMP n HDLC : High Level Data Link Control n Começando e terminando em sequências 0 1 1 1 1 1 1 0 Formato do Quadro HDLC Protocolos Orientados a Bit n No lado de envio, qualquer hora que está sendo transmitido cinco 1’s consecutivos no corpo da mensagem n O remetente insere 0 antes de transmitir o próximo bit HDLC HDLC n Protocolo HDLC n No lado do receptor n 5 1’s consecutivos n Próximo bit n 0: Stuffed, então descarte n 1: ou marcador de FIM DE QUADRO, ou ERRO foi introduzido no fluxo de bits n Olhe para o próximo bit n Se 0 (01111110) à Marcador FIM DE QUADRO n Se 1 (01111111) à ERRO, descarte todo o quadro n O receptor precisa aguardar pelo próximo 01111110 antes de começar a receber novamente; CONTROLE DE FLUXO Controle de Fluxo n Como fazer com que um transmissor rápido não mande quadros a uma taxa mais alta do que o receptor pode tratar? n Controle de fluxo baseado em feedback → o receptor envia informações de volta ao transmissor permitindo o envio de novos dados n Controle de fluxo baseado na velocidade → o protocolo tem um mecanismo interno que limita a velocidade dos transmissores. DETECÇÃO DE ERROS Detecção de Erros n Enlace não é confiável n Bits podem mudar de valor n Atenuação do sinal, ruído externo (fio muito longo, velho, interferência) n Duas estratégias básicas n códigos de detecção de erros n códigos de correção de erros Detecção de Erros n Enlace não é confiável n Bits podem mudar de valor n Atenuação do sinal, ruído externo (fio muito longo, velho, interferência) Como detectar que houve um erro? Detecção de Erros de BITS Ideia n Gerar um “resumo” dos bits e enviar juntamente com o pacote n Verificar se o “resumo” dos bits que chegaram confere com o “resumo” que chegou. Detecção de Erros de BITS Detecção de Erros de BITS n Resumo: bits para detecção de erros (redundância) n Redundânc i a p ro tege somen te cabeçalho ou cabeçalho + dados n Não é 100% confiável n Resumo pode ser o mesmo, mas bits foram alterados n Muito difícil de ocorrer na prática n Maior redundância, detecção mais confiável Bit de Paridade n Bit para indicar se o número de 1s em uma sequência de bits é par ou ímpar n Paridade par: bit de paridade é 1 se a sequência possui um número ímpar de 1s (fazendo o total de bits ser par) n Paridade ímpar: bit de paridade é 1 se a sequência possui um número par de 1s (fazendo o total de bits ser ímpar) n Bit de paridade é um “resumo” de uma sequência de bits! n Resumo com tamanho de 1 Bit. Calculando Bit de Paridade Paridade par Usando bit de paridade Transmissão OK? Transmissão OK? Usando bit de paridade Transmissão OK? Paridade calculada: 1 Paridade Pacote: 1 Transmissão OK. Transmissão OK? Usando bit de paridade Transmissão OK? Paridade calculada: 1 Paridade Pacote: 1 Transmissão OK. Transmissão OK? Paridade calculada: 0 Paridade Pacote: 1 Transmissão com ERRO. Usando bit de paridade Transmissão OK? Usando bit de paridade Transmissão OK? Paridade calculada: 1 Paridade Pacote: 1 Transmissão OK? Erro não detectado... Bit de paridade: erros detectados com somente um erro. Paridade Bidimensional Paridade de Linha Paridade de Coluna n Pode detectar e corrigir erros isolados n Pode detectar erros duplos Paridade bidimensional - Exemplo S o m a d e V e r i f i c a ç ã o (Checksum) n Método simples n Normalmente implementado em software n Bits de dados tratados como uma sequência de números inteiros de k bits n Consiste na transmissão de todas as palavras juntamente com o resultado da sua soma binária. n Receptor pode recalcular o checksum e compará-lo com o transmitido n Se diferente → erro n Usado no TCP, no UDP e no IP S o m a d e V e r i f i c a ç ã o (Checksum) n Dados: 00111101 e 00001101 n Checksum: 01001010 Outra solução é utilizar o código polinomial (ou código de redundância cíclica ou CRC) ... CRC n A esta altura deverá estar claro que um objetivo importante no projeto de algoritmos de detecção de erro é maximizara probabilidade de detectar erros usando apenas um número pequeno de bits redundantes; CRC n CRC utilizam uma matemática bastante poderosa para conseguir esse objetivo; n Por exemplo, um CRC de 32 bits oferece forte proteção contra erros de bits comuns nas mensagens com milhares de bytes de extensão; CRC n Emissor/receptor concordam num polinômio gerador G(x), em que quanto maior for o seu grau maior será a capacidade de detecção de erros. n Neste polinômio tanto o bit de maior ordem quanto o de menor ordem devem ser iguais a 1 n Palavra inicial de k bits é representado por um polinômio de X de ordem k-1 n Palavra inicial = 10110001 n Polinômio = X7+X5+x4+1 CRC n Execução: o pol inômio p(x) é representado pela palavra inicial somada aos bits de paridade e deve ser divisível por G(x); n O receptor tenta dividir p(x) por G(x). Se houver resto ≠ 0, houve um erro de transmissão; CRC n Exemplo: Mensagem a transmitir 10111011 n Polinômio gerador G(X) = x4+x+1 -> 10011 n Acrescenta-se à mensagem inicial, a quantidade de zeros equivalentes ao grau de G(x), ficando: n Seguidamente divide-se a mensagem (ponto anterior) pelo polinômio gerador n A divisão de dois polinômios (na sua forma binária) é feita recorrendo à operação XOR (⊕) CRC O resto que da divisão é finalmente adicionado à mensagem original: CRC O resto que da divisão é finalmente adicionado à mensagem original: Mensagem a ser transmi%da... CRC Para descodificar a mensagem, o procedimento deve ser repe;do. ≠ 0, logo a mensagem foi recebida com erro Referências n Slides Prof. Hana Karina S. Rubinsztejn; n Slides Prof. Willian Amorin; n T a n e n b a u m , A . S . R e d e s d e Computadores; n Peterson, L. L.; Davie, B. S. Redes de Computadores: Uma Abordagem de Sistemas;
Compartilhar