5: Camada de Enlace 5-1 Capítulo 5: A Camada de Enlace e Redes Locais Nossos objetivos: Entender os princípios por trás dos serviços da camada de enlace

  • View
    106

  • Download
    3

Embed Size (px)

Transcript

  • Slide 1
  • 5: Camada de Enlace 5-1 Captulo 5: A Camada de Enlace e Redes Locais Nossos objetivos: Entender os princpios por trs dos servios da camada de enlace de dados: deteco e correo de erros compartilhamento de canal de broadcast: acesso mltiplo endereamento da camada de enlace transferncia confivel de dados, controle de fluxo: feito! instanciao e implementao de diversas tecnologias de camada de enlace
  • Slide 2
  • 5: Camada de Enlace 5-2 Camada de Enlace 5.1 Introduo e servios 5.2 Tcnicas de deteco e correo de erros 5.3 Protocolos de acesso mltiplo 5.4 Endereamento na Camada de Enlace 5.5 Ethernet 5.6 Comutadores de camada de enlace 5.7 PPP: o protocolo ponto-a-ponto 5.8 Virtualizao de enlace: uma rede como camada de enlace 5.9 Um dia na vida de uma solicitao de pgina Web
  • Slide 3
  • 5: Camada de Enlace 5-3 Camada de Enlace: Introduo Terminologia: hospedeiros e roteadores so ns canais de comunicao que conectam ns adjacentes ao longo de um caminho de comunicao so enlaces (links) enlaces com fio (cabeados) enlaces sem fio (no cabeados) LANs Pacote da camada 2 um quadro (frame), encapsula o datagrama a camada de enlace responsvel por transferir os datagramas entre ns adjacentes atravs de um enlace
  • Slide 4
  • 5: Camada de Enlace 5-4 Camada de Enlace: Contexto Datagrama transferido por diferentes protocolos de enlace em diferentes enlaces: Ex.: Ethernet no primeiro enlace, frame relay em enlaces intermedirios e 802.11 no ltimo enlace Cada protocolo de enlace prov diferentes servios ex.: pode ou no prover transporte confivel de dados atravs do enlace Analogia com um sistema de transporte Viagem de Princeton at Lausanne taxi: Princeton at JFK avio: JFK at Genebra Trem: Genebra at Lausanne turista = datagrama segmento de transporte = enlace de comunicao meio de transporte = protocolo da camada de enlace agente de viagens = algoritmo/protocolo de roteamento
  • Slide 5
  • 5: Camada de Enlace 5-5 Servios da Camada de Enlace Enquadramento (Delimitao do quadro): encapsula datagrama num quadro adicionando cabealho e cauda (trailer). Acesso ao enlace: implementa acesso ao canal se meio for compartilhado, endereos fsicos (MAC) so usados nos cabealhos dos quadros para identificar origem e destino de quadros em enlaces multiponto Diferente do endereo IP! Entrega confivel entre ns adjacentes: J aprendemos como fazer isto (Captulo 3) raramente usada em canais com baixas taxas de erro (fibra ptica, alguns tipos de pares tranados) Canais sem fio: altas taxas de erros P: para que confiabilidade na camada de enlace e fim- a-fim?
  • Slide 6
  • 5: Camada de Enlace 5-6 Servios da Camada de Enlace (mais) Controle de Fluxo: compatibilizar taxas de produo e consumo de quadros entre remetentes e receptores Deteco de Erros: erros so causados por atenuao do sinal e por rudo receptor detecta presena de erros receptor sinaliza ao remetente para retransmisso, ou simplesmente descarta o quadro em erro Correo de Erros: mecanismo que permite que o receptor localize e corrija o(s) erro(s) sem precisar da retransmisso Half-duplex e full-duplex com half duplex um n no pode transmitir e receber pacotes ao mesmo tempo
  • Slide 7
  • 5: Camada de Enlace 5-7 Onde a camada de enlace implementada? em cada um dos hospedeiros camada de enlace implementada no adaptador (NIC Network Interface Card) placa Ethernet, carto PCMCIA, carto 802.11 implementa as camadas de enlace e fsica conecta ao barramento de sistema do hospedeiro combinao de hardware, software e firmware controlador Transmisso fsica cpu memria barramento do hospedeiro (ex., PCI) placa de rede Diagrama de blocos do hospedeiro aplicao transporte rede enlace fsica
  • Slide 8
  • 5: Camada de Enlace 5-8 Comunicao entre Adaptadores lado transmissor: Encapsula o datagrama em um quadro Adiciona bits de verificao de erro, transferncia confivel de dados, controle de fluxo, etc. lado receptor verifica erros, transporte confivel, controle de fluxo, etc. extrai o datagrama, passa- o para o n receptor Controla- dora Controla- dora transmissor receptor datagrama quadro
  • Slide 9
  • 5: Camada de Enlace 5-9 Camada de Enlace 5.1 Introduo e servios 5.2 Tcnicas de deteco e correo de erros 5.3 Protocolos de acesso mltiplo 5.4 Endereamento na Camada de Enlace 5.5 Ethernet 5.6 Comutadores da camada de enlace 5.7 PPP: o protocolo ponto-a-ponto 5.8 Virtualizao de enlace: uma rede como camada de enlace 5.9 Um dia na vida de uma solicitao de pgina Web
  • Slide 10
  • 5: Camada de Enlace 5-10 Deteco de Erros EDC= bits de Deteco e Correo de Erros (redundncia) D = Dados protegidos por verificao de erros, podem incluir alguns campos do cabealho deteco de erros no 100% confivel; protocolos podem deixar passar alguns erros, mas raro quanto maior o campo EDC melhor ser a capacidade de deteco e correo de erros
  • Slide 11
  • 5: Camada de Enlace 5-11 Verificaes de Paridade Paridade de 1 Bit: Detecta erros em um nico bit Paridade Bidimensional: Detecta e corrige erro em um nico bit
  • Slide 12
  • 5: Camada de Enlace 5-12 Soma de verificao da Internet Transmissor: trata o contedo do segmento como uma seqncia de inteiros de 16 bits Soma de verificao: adio (complemento de 1 da soma ) do contedo do segmento transmissor coloca o valor do checksum no campo de checksum UDP Receptor: calcula a soma de verificao do segmento recebido verifica se o resultado igual ao valor do campo da soma de verificao: NO - erro detectado SIM - nenhum erro foi detectado. Mas pode conter erros? Mais sobre isto posteriormente . Objetivo: detectar erros (ex., bits trocados) no segmento transmitido (nota: usado apenas na camada de transporte)
  • Slide 13
  • 5: Camada de Enlace 5-13 Verificao de redundncia cclica (CRC) Dados considerados como a seqncia de coeficientes de um polinmio (D) escolhido um polinmio Gerador, (G), (=> r+1 bits) Divide-se (mdulo 2) o polinmio D*2 r por G. Acrescenta-se o resto (R) a D. Observa-se que, por construo, a nova seqncia agora exatamente divisvel por G Receptor conhece G, divide por G. Caso o resto seja diferente de zero: detectado erro! Pode detectar todos os erros em rajadas menores do que r+1 bits Largamente usado na prtica (Ethernet, 802.11 WiFi, ATM)
  • Slide 14
  • 5: Camada de Enlace 5-14 Exemplo de CRC Queremos: D. 2 r XOR R = nG de forma equivalente: D. 2 r = nG XOR R de forma equivalente : se dividirmos D. 2 r por G, queremos o resto R 101110000 1001 1001 101011 1010 1001 1100 1001 1010 1001 011 DG R
  • Slide 15
  • 5: Camada de Enlace 5-15 Implementao em Hardware G=1001 D.2 r =101110000
  • Slide 16
  • 5: Camada de Enlace 5-16 Camada de Enlace 5.1 Introduo e servios 5.2 Tcnicas de deteco e correo de erros 5.3 Protocolos de acesso mltiplo 5.4 Endereamento na Camada de Enlace 5.5 Ethernet 5.6 Comutadores da camada de enlace 5.7 PPP: o protocolo ponto-a-ponto 5.8 Virtualizao de enlace: uma rede como camada de enlace 5.9 Um dia na vida de uma solicitao de pgina Web
  • Slide 17
  • 5: Camada de Enlace 5-17 Enlaces e Protocolos de Acesso Mltiplo Dois tipos de enlaces: Ponto-a-ponto: PPP para acesso discado Conexo entre switch Ethernet e hospedeiro broadcast (cabo ou meio compartilhado); Ethernet tradicional Upstream HFC 802.11 LAN sem fio Satlite Etc.
  • Slide 18
  • 5: Camada de Enlace 5-18 Protocolos de Acesso Mltiplo canal de comunicao nico de broadcast interferncia: quando dois ou mais ns transmitem simultaneamente coliso se um n receber dois ou mais sinais ao mesmo tempo Protocolo de acesso mltiplo algoritmo distribudo que determina como os ns compartilham o canal, isto , determina quando um n pode transmitir comunicao sobre o compartilhamento do canal deve usar o prprio canal! no h canal fora da faixa para coordenar a transmisso
  • Slide 19
  • 5: Camada de Enlace 5-19 Protocolo Ideal de Acesso Mltiplo Para um canal de broadcast com taxa de R bps: 1. Quando apenas um n tem dados para enviar, esse n obtm uma vazo de R bps. 2. Quando M ns tm dados para enviar, cada um desses ns poder transmitir em mdia a uma taxa de R/M bps. 3. Completamente descentralizado nenhum n especial (mestre) para coordenar as transmisses nenhuma sincronizao de relgios ou slots 4. Simples para que sua implementao seja barata
  • Slide 20
  • 5: Camada de Enlace 5-20 Taxonomia dos Protocolos MAC Trs categorias gerais: Diviso de Canal divide o canal em pequenos pedaos (slots/compartimentos de tempo, freqncia, cdigo) aloca pedao a um dado n para uso exclusivo deste Acesso Aleatrio canal no dividido, podem ocorrer colises recuperao das colises Revezamento Ns se alternam em revezamento, mas ns que possuem mais dados a transmitir podem demorar mais quando chegar a sua vez
  • Slide 21
  • 5: Camada de Enlace 5-28 Eficincia do Aloha puro P(sucesso por um dado n) = P(n transmita). P(nenhum outro n transmita em [t 0 -1,t 0 ]. P(nenhum outro n transmita em [t 0,t 0 +1] = p. (1-p) N-1. (1-p) N-1 = p. (1-p) 2(N-1) escolhendo o valor timo de p e deixando n -> infinito... = 1/(2e) = 0,18 Ainda pior do que o Slotted Aloha!
  • Slide 29
  • 5: Camada de Enlace 5-29 CSMA (Acesso mltiplo com deteco de portadora) CSMA (Carrier Sense Multiple Access): Escuta antes de transmitir (deteco de portadora): Se o canal estiver livre: transmite todo o quadro Se o canal estiver ocupado, adia a transmisso Analogia humana: no interrompa outros!
  • Slide 30
  • 5: Camada de Enlace 5-30 Colises no CSMA colises ain