1.15k likes | 1.31k Views
Camada de Enlace de Dados Capítulo 3. Obter uma linha de transmissão e oferecê-la livres de erros para o nível 3. Questões típicas: Quantos bits serão transmitidos de cada vez? (Definição dos quadros de dados) Como delimitar estes bits? Se um quadro foi destruído como corrigir? (Retransm.)
E N D
Camada de Enlacede DadosCapítulo 3 • Obter uma linha de transmissão e oferecê-la livres de erros para o nível 3. • Questões típicas: • Quantos bits serão transmitidos de cada vez? (Definição dos quadros de dados) • Como delimitar estes bits? • Se um quadro foi destruído como corrigir? (Retransm.) • Se o reconhecimento de um quadro for destruído como corrigir? (Lidar com duplicação de quadros) • Como regular o tráfego se o tx é mais rápido que o rx? • Como controlar o acesso a um canal compartilhado em redes de difusão? Nível Enlace
Papel do Nível Enlace • Nível enlace – Fornece ao nível superior (Rede) a capacidade de pedir o estabelecimento ou liberação dos meios físicos associados ao Nível Físico. • Permite comunicação eficiente e confiável entre dois computadores adjacentes, ou conectados por meio de um canal de comunicação que funciona conceitualmente como um fio (pode ser cabo coaxial, ou canal sem fio): os bits são entregues na ordem exata em que são enviados. Nível Enlace
3.1 - Quadro • As unidades de informação transferidas chamam-se quadros. Cada protocolo tem um formato de quadro próprio. Relação entre pacotes (N3) e quadros (N2): • Dividir um fluxo de bits em quadros: permitir que o receptor encontre o início de um quadro sem gastar muita banda para isto. Nível Enlace
3.1.1- Serviços fornecidos a camada de Rede • Fluxo de dados em um roteador. Nível Enlace
Serviços fornecidos a camada de Rede Serviços oferecidos com freqüência pelo Nível 2: • Serviço sem conexão e sem confirmação; Ex: Ethernet. • Serviço sem conexão com confirmação; Ex: WiFi • Serviço com conexão e confirmação. (Quando enlaces são longos, não confiáveis); Ex: Satélites C O N F I A B I L I D A D E Nível Enlace
Serviços oferecidos - 2 • Controle de erro:Detecta e possivelmente corrige erros que possam ocorrer na troca de informações do Nível Físico. O nível de Rede é notificado de erros não recuperáveis. Tarefas importantes: gerência de timers e número de seqüência de quadro; • Controle de fluxo: manter regras bem definidas sobre quando o transmissor pode enviar o quadro seguinte. Controla a taxa de transferência na interface com o Nível de Rede. Ex: smartphone pede página a servidor Web potente Nível Enlace
3.2 - Detecção e Correção de Erros Há 2 estratégias para tratar erros: • Incluir informação redundante em cada bloco de dados para que o receptor possa deduzir quais devem ter sido os dados transmitidos –código de correção de errosoucorreção adiantada de erros (FEC-ForwardErrorCorrection). Em canais que geram muitos erros, é melhor a correção (Ex: wireless). • Incluir redundância suficiente apenas para permitir que o receptor deduza que houve um erro, mas sem identificar qual, solicite uma retransmissão– código de detecção de erros.Em canais altamente confiáveis basta detectar o erro (Ex: fibra); Nível Enlace
3.2.2 - Detecção de Erros • Paridade: Um único bit é acrescentado. O valor do bit é escolhido de modo que o número de bits 1 na palavra de código seja par (ou ímpar). Ex: para enviar 1011010 com paridade par, enviar 10110100. Detecta erros de um único bit; inconveniente para erros de rajada (que são comuns). • Checksum: baseado na soma acumulada dos bits de dados da mensagem. Colocado no fim como complemento da soma. Ao receber a mensagem a soma dos dados + checksum deve ser 0 (RFC 791 define checksum do IP). • CRC (Cyclic Redundancy Check) método de detecção de erros mais forte que os anteriores, muito difundido. Nível Enlace
CRC (Cyclic Redundancy Check) • É acrescentada à mensagem, um código de 2 bytes montado a partir de uma combinação polinomial de dados que compõem o quadro. O código é transmitido junto ao quadro. • O recebedor confere o CRC, realizando a mesma combinação polinomial e comparando o CRC obtido com o CRC recebido. • Em caso de erro se solicita uma retransmissão do quadro. • O polinômio gerador G(x) de grau r é combinado com antecedência. Opera-se sobre o quadro encarado como um polinômio M(x) de grau m. Nível Enlace
Divisão de Polinômios Exemplo: No caso do número binário, considera-se o coeficiente sempre 0 ou 1. Ex: o polinômio correspondente a 10011 é x4+x1+1. Se escolhermos este polinômio como G(x), r = 4. Seja a mensagem M(x)=1101011111. O polinômio a operar com G(x) será xrM(x) ou 11010111110000. Divida este polinômio por G(x), obtenha o resto R(x). Nível Enlace
R(x) = 10, Compl 2=10 Subtraia o resto R(x) do polinômio estendido (subtração de módulo 2) e transmita. CRC (Cyclic Redundancy Check) Nível Enlace 11
Protocolos Básicos Uma implementação comum: • na NIC (Network Interface Card) funcionam o processo da camada física e parte da camada de enlace. • O restante da camada de enlace e rede são parte do SO. Nível Enlace
Protocolo Básico – exemplo (1) Nível Enlace
Protocolo Básico – exemplo (2) Nível Enlace
Protocolos de Janela Deslizante Para transmitir nos dois sentidos, num mesmo canal é possível que a confirmação de uma transmissão seja enviado em um campo Ack de carona no quadro de dados do outro sentido (Piggybacking). E se outroladonãotransmitir nada, comoconfirmar? Manter timeouts paraenviarconfirmaçãosemcarona. Manter um número de sequencianosquadrosvariando de 0 a um númeromáximo. Emqualquerinstante o transmissormantém um conjunto de números de sequenciaquepodeenviar(Janela de Transmissão); devemanteremmemóriaparaeventualidadedaretransmissão. O receptor mantémconjuntoqueestáapto a aceitar(Janela de recepção). Nível Enlace
Janela Deslizante de Tamanho 1 Número de sequência de 3 bits.(a) Inicialmente não há qdrs pendentes. (b) Após o envio do primeiro quadro. (c) Após receber o primeiro quadro; (d) Após receber primeiro reconhecimento. Nível Enlace
Estratégia go-back-n (Janela Rx tam 1) Paralelismo e recuperação de erros. Efeito do erro quando o tamanho da janela do receptor é unitário (1). Desperdiça grande quantidade de largura de banda se a taxa de erros for alta. Nível Enlace
EstratégiaRetransmissãoSeletiva (Janela Rx >1) Paralelismo e recuperação de erros. Efeito do erro quando o tamanhodajanela do receptor é grande. Aproveitamelhor a largura de bandaporémrequermaisespaçonos buffers dacamada de enlace. Nível Enlace
Quantos quadros cabem no canal? Produto Largura de Banda-atraso (BD): largura da banda em bits/s vezes o tempo de trânsito (s); Para enviar o máximo de quadros, o buffer do receptor deveria ser capaz de conter todos os quadros enviados até a chegada da confirmação de volta ao transmissor. Janela > 2BD + 1. O “+1” é porque um quadro de confirmação não será enviado antes que um quadro completo seja recebido. Utilização do enlace: fração do tempo que em que o transmissor não está bloqueado: Utilização do enlace <= Janela (2BD+1) Capacidade do canal Nível Enlace 19
Exemplos de protocolos de Enlace • A infraestrutura de rede de longa distância na Internet é montada a partir de linhas ponto-a-ponto, há 2 situações comuns de uso na Internet que utilizam o protocolo de enlace chamado PPP – Point-to-PointProtocol. : • Sobre fibra (SONET – SynchronousOptical Network) conectam roteadores do ISP: PPP manipula o quadro para permitir sincronização física • Nos enlaces ADSL no circuito terminal da rede telefônica. Nível Enlace
Sub-Camada de Controle de Acesso ao Meio – Capítulo 4 • Em redes de difusão, normalmente utilizadas em LANs, é necessário determinar quem tem direito de usar o canal quando há uma disputa por ele. • A subcamada da Camada de Enlace que cuida desta tarefa é chamada de subcamada MAC (Medium Access Control). Nível Enlace
Alocação Estática de canais • Que tal alocar o único canal para usuários concorrentes de forma estática? • FDM (FrequencyDivisionMultiplexing): Dividir a largura de banda em N partes. Com N usuários, dar uma parte da banda para cada um; Se houver menos de N usuários há desperdício de banda – se houver mais de N usuários, alguns terão acesso negado. • TDM (Time DivisionMultiplexing): Cada usuário recebe o N-ésimoslot de tempo; Se o usuário não empregar o slot alocado, este será desperdiçado. Nenhum dos métodos estáticos tradicionais de alocação de canais funciona bem com tráfego de rajadas. Nível Enlace
Alocação Dinâmica de canais Premissas fundamentais para formular problema de alocação: • Tráfego Independente: Há N estações independentes que geram quadros para transmissão. Seja λ a taxa de chegada de novos quadros. Supor que a aleatoriedade da chegada segue uma distribuição exponencial (Poisson) torna o problema tratável embora não exato; modelar o tráfego é um difícil problema de pesquisa. • Canal Único: Todas as estações podem transmitir e receber por um único canal; • Colisão: Dois quadros transmitidos simultaneamente se sobrepõem no tempo, e o sinal resultante é adulterado. Os quadros que sofreram colisões devem ser retransmitidos; Nível Enlace
Alocação Dinâmica de canais Premissas fundamentais para formular problema de alocação: • Tempo: Contínuo – tx começa a qualquer instante Segmentado – tx começam no início de um slot (Tempo dividido em intervalos discretos); • Detecção de portadora: As estações podem ou não detectar se o canal está sendo usado. Estas premissas estão envolvidas nos métodos de alocação de canais, dos quais veremos apenas dois: CSMA/CD e CSMA/CA. Nível Enlace
CSMA / CD - Apresentação CSMA/CD – Carrier SenseMultiple Access withCollisionDetection. Comparação: Um jantar em uma sala escura. As pessoas ao redor da mesa devem escutar, aguardando um período de silêncio, antes de falar (Carrier Sense). Quando há espaço, qualquer pessoa tem chance igual de falar (Multiple Access). Se duas pessoas falarem ao mesmo tempo, detectam o fato (CollisionDetection) e param de falar. Quando uma estação detecta uma colisão e interrompe a transmissão, deve esperar um tempo aleatório para tentar retransmitir o pacote. Nível Enlace
CSMA / CD • O CSMA/CD pode estar em um destes tres estados: disputa, transmissão ou inatividade. • As colisões podem ser detectadas verificando-se a potência e a largura do pulso do sinal recebido e comparando-o com o sinal transmitido. Nível Enlace
IEEE 802 • O IEEE padronizou várias redes locais e metropolitanas com o nome de IEEE 802. • Alguns sobreviveram, outros não. Difícil prever: • Entre os sobreviventes: • 802.3 (Ethernet), • 802.11 (WiFi). • 802.15 (Bluetooth) • 802.16 (WiMax). Nível Enlace
Alguns padrões 802 A interface com a camada de rede é a mesma, definida pela subcamada de Enlace Lógico: LLC – Logical Link Control-802.2. As camadas física e MAC diferenciam-se. Nível Enlace
A LAN mais popular. A história começa no Havaí da necessidade de conectar ilhas remotas. A experiência foi feita com rádio de ondas curtas (ALOHANET).Bob Metcalfe passou o verão no Havaí... Ethernet Clássica Após o verão, já trabalhando na Xerox, nasceu o sistema Ethernet; 1978: DIX - criado pela DEC, Intel e Xerox. 1983: tornou-se o padrão IEEE 802.3. Metcalfe formou a 3Com e vendeu mais de 100.000.000 de adaptadores para PCs. Nível Enlace
802.3 – O quadro • Endereço Ethernet – (MAC address) – contém 6 bytes: • Os 3 primeiros atribuídos pela IEEE às organizações que constroem interfaces Ethernet; • Os 3 últimos bytes são atribuídos pela organização. • Exemplo: 06-0A-00-19-BC-24 • O primeiro bit é 0 para endereços comuns e 1 para endereços de grupos (Multicast). • Endereço com todos os bits em 1 são recebidos por todas as estações (Broadcast). Nível Enlace
802.3 – O quadro (1) • Formato do quadro (a) Formato Ethernet (DIX) (b) Formato 802.3. (as 2 maneiras podem ser usadas pois muito difundidas) • Preâmbulo: 7 bytes 10101010 – sinalização de ocupação do meio. Permite sincronização entre clock do receptor e do transmissor (a nível de bit). • IdQ (Início de quadro) – 1 byte para sincronismo a nível de quadro. Nível Enlace
802.3 – O quadro (2) • Felizmente, todos os valores do campo tipo usados até 1997, eram maiores que 1500, o tamanho máximo do quadro, e assim, IEEE padronizou que se o campo contiver um número menor ou igual a 0x600 (1536) bytes é interpretado como tamanho • Checksum é o CRC já estudado Nível Enlace
802.3 - Colisão Há um comprimento mínimo de quadro Nível Enlace
802-3 –Recuo Binário Exponencial • O tempo é dividido em slots discretos de tamanho igual ao pior tempo de propagação de viagem de ida e volta (2t). • Depois da primeira colisão, cada estação espera 0 ou 1 slot antes de tentar novamente. • Depois da segunda colisão, cada estação espera 0,1,2 ou 3 tempos de slot. • Se ocorrer uma terceira colisão (cuja probabilidade é 0,25), na próxima vez o número de slots que deverá esperar é escolhido ao acaso entre 0 e 23-1. • Após i colisões, é escolhido um número aleatório entre 0 e 2i-1. Acontece um congelamento em 1023 após 10 colisões. Nível Enlace
Ethernet Comutada • Hub – equivalente a um cabo longo: quanto mais máquinas ligadas menor a banda recebida; • Switch: melhora o desempenho: • Se 2 estações querem transmitir ao mesmo tempo, o quadro é armazenado na porta do switch, e após totalmente recebido é encaminhado ao destino. Assim várias estações podem transmitir simultaneamente sem a ocorrência de colisões. • Hubs estão em extinção... Nível Enlace
O Switch • Possui backplane de alta velocidade. • Realiza processamento do cabeçalho de enlace para identificar para qual porta encaminhar o quadro; • Se full-duplex, CSMA/CD não é necessário. • Se ligado a hub, recebe o quadro que ganhou a disputa CSMA/CD no domínio do hub. • Conveniente para segurança. Nível Enlace
Fast Ethernet – 802.3u • Decisão IEEE: Manter o 802.3 apenas tornando-o mais rápido. Motivação: • Manter o cabeamento existente – compatibilidade com as redes existentes; • Medo de protocolo novo trazer problemas inesperados; • Manter o emprego. • Assim, mantém o formato dos pacotes, interfaces, regras e reduz o tempo do bit. Nível Enlace
802.3u – Cabeamento Diferentespadronizaçõesvisavamdisponibilizar o protocolonosmaisvariadosambientesexistentes. Cabeamentopara Fast Ethernet : Para garantirque CSMA/CD continue funcionando, deve se manterumarelação entre tamanhomínimo do quadro e tamanhomáximo do cabo. Opção: diminuirtamanho do cabo. No casodafibranãoadmitir hub. Nível Enlace
Fast Ethernet - Autonegociação • Para não abandonar as placas existentes de 10Mbps, o switch adotou mecanismo de autonegociação que permite que duas estações negociem automaticamente a velocidade ideal ou o tipo de duplex => Switches 10/100. • O comum hoje é o switch 10/100/1000. Nível Enlace
GigabitEthernet • Objetivo: tornar a Ethernet 10 vezes mais rápida, mantendo a compatibilidade retroativa com os padrões Ethernet existentes. A padronização mais popular foi chamada IEEE 802.3ab • Configurações ponto-a-ponto e não multiponto como no padrão original. Nível Enlace
802.3ab – Modos de Operação • Full-duplex: o modo normal – um switch central conectado a computadores. Não é necessário o CSMA/CD • Half-duplex: computadores ligados a hub. CSMA/CD é necessário. Como a velocidade é 100 vezes maior que a Ethernet clássica, a distância máxima seria 100 vezes menor (25 metros). Para aumentar este limite: • Extensão da portadora: o hardware adiciona um preenchimento, aumentando o tamanho do quadro para 512 bytes, ou • Rajada de quadros: transmissor concatena quadros para enviá-los juntos. Quem usaria hubs em rede gigabit? Nível Enlace
802.3ab – Cabeamento • Esta tabela se refere ao melhor caso: • Vale a pena aproveitar a fiação de cobre se a distância é pequena Nível Enlace
802.3ab – Controle de Fluxo • Se o receptor estiver ocupado com alguma outra tarefa, mesmo durante 1ms e não esvaziar o buffer de entrada em alguma linha, poderão se acumular até 1953 quadros neste intervalo. • E quando um computador em gigabit estiver transmitindo a um computador na Ethernet clássica? • É necessário controle de fluxo: quadros PAUSE (tipo=0x8808), informando quanto tempo deve durar a pausa. • Extensão do padrão permite quadros jumbo: até 9KB. Nível Enlace
802.3ae – 10Gigabit Ethernet • Funciona apenas em fibra, só opera em modo full-duplex, os protocolos de detecção de colisão são desnecessários; • Expandiu o padrão Ethernet para uso em redes metropolitanas (MAN) e redes de longa distância (WAN), mantendo princípios de operação e administração de redes; • Ainda há autonegociação para ser flexível Nível Enlace
802.3ae – Cabeamento IEEE estápadronizando 40Gbps e 100Gbps (802.3ba-2010). Causas do sucesso Ethernet: simplicidade, fácilmanutenção, baixocusto, compatibilidade com IP. Nível Enlace
ARP – Address Resolution ProtocolProtocolo de controle entre nível 2 e 3 ARP mapeia endereços IP em endereços de enlace. Responde à pergunta: A quem pertence tal endereço IP? Há broadcast na rede perguntando o MAC de tal IP. Caso 1: Hosts na mesma rede. Ex: Host 1 tx para Host 2 Nível Enlace
ARP em redes diferentes Caso 2: Hosts em redes diferentes. Ex: Host 1 (65.7) tx para Host 4 (63.8): não é IP de sua rede, coloca MAC do rot. • Roteador pega o quadro e procura IP em suas tabelas, descobre para que roteador mandar (talvez ARP na sua rede para descobrir o MAC deste roteador); • Último roteador troca seu MAC pelo MAC de destino do host 4 (talvez ARP na sua rede para descobrir). Nível Enlace
Redes sem Fio • Tipos de Redes • Redes Infra-estruturadas • A Estação Móvel está em contato direto com um Ponto de Acesso. • Redes Ad-Hoc • Os nós são capazes de trocar, diretamente, informações entre si. • Redes Mesh • Os nós são capazes de trocar, diretamente, informações entre si, mas contam com uma infraestrutura de apoio. Nível Enlace
MH FH FH MH AP FH MH MH – Mobile Host FH – Fixed Host AP – Access Point Redes Infra-Estruturadas Nível Enlace
Redes Ad-hoc Nível Enlace