Capítulo 5: A Camada de Enlace - di.ufpe.brdi.ufpe.br/~suruagy/cursos/redes/cap5-  · correção de…

  • View
    212

  • Download
    0

Embed Size (px)

Transcript

  • 5: Camada de Enlace 5-1

    Captulo 5: A Camada de Enlace

    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

    redes locais (LANs): Ethernet, VLANs

    instanciao e implementao de diversas tecnologias de camada de enlace

  • 5: Camada de Enlace 5-2

    Camada de Enlace

    5.1 Introduo e servios

    5.2 Deteco e correo de erros

    5.3 Protocolos de acesso mltiplo

    5.4 Redes Locais Endereamento,

    ARP

    Ethernet

    Switches

    VLANs

    5.5 Virtualizao do enlace: MPLS

    5.6 Redes de centros de dados

    5.7 Um dia na vida de uma solicitao de pgina Web

  • 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 fisicamente adjacentes atravs de um enlace

  • 5: Camada de Enlace 5-4

    Camada de Enlace: Contexto

    um 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

    modo de transporte = protocolo da camada de enlace

    agente de viagens = algoritmo de roteamento

  • 5: Camada de Enlace 5-5

    Servios da Camada de Enlace enquadramento (delimitao do quadro) e acesso ao enlace:

    encapsula datagrama num quadro adicionando cabealho e cauda (trailer).

    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?

  • 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

  • 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, placa 802.11;

    chipset Ethernet

    implementa as camadas de enlace e fsica

    conecta ao barramento do sistema hospedeiro

    combinao de hardware, software e firmware

    controlador

    Transmisso

    fsica

    cpu memria

    barramento

    do hospedeiro

    (ex., PCI)

    placa de rede

    aplicao

    transporte

    rede

    enlace

    enlace

    fsica

  • 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 datagrama

    datagrama

    quadro

  • 5: Camada de Enlace 5-9

    Camada de Enlace

    5.1 Introduo e servios

    5.2 Deteco e correo de erros

    5.3 Protocolos de acesso mltiplo

    5.4 Redes Locais Endereamento,

    ARP

    Ethernet

    Switches

    VLANs

    5.5 Virtualizao do enlace: MPLS

    5.6 Redes de centros de dados

    5.7 Um dia na vida de uma solicitao de pgina Web

  • 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 a deteco de erros no 100% confivel;

    protocolos podem deixar passar alguns erros, mas raro quanto maior for o campo EDC, melhor ser a capacidade de deteco e correo de erros

  • 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

  • 5: Camada de Enlace 5-12

    Soma de verificao da Internet

    Transmissor: trata o contedo do

    segmento como uma sequncia 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 ainda pode conter erros?

    Objetivo: detectar erros (ex., bits trocados) no segmento transmitido (nota: usado apenas na camada de transporte)

  • 5: Camada de Enlace 5-13

    Verificao de redundncia cclica (CRC)

    codificao para deteco de erro mais poderosa v os bits de dados, D, como um nmero binrio escolhido um polinmio Gerador, (G), (=> r+1 bits) objetivo: escolher r bits CRC, R, de modo que

    seja exatamente divisvel por G (mdulo 2) 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)

  • 5: Camada de Enlace 5-14

    Exemplo de CRC

    Queremos:

    D.2r XOR R = nG de forma equivalente:

    D.2r = nG XOR R de forma equivalente :

    se dividirmos D.2r por G, queremos o resto R que satisfaa:

    G

    DR

    r2resto

    101110000 1001

    1001 101011

    1010

    1001

    1100

    1001

    1010

    1001

    011

    D G

    R

    r = 3

  • 5: Camada de Enlace 5-15

    Implementao em Hardware

    G=1001

    D.2r=101110000

  • 5: Camada de Enlace 5-16

    Camada de Enlace

    5.1 Introduo e servios

    5.2 Deteco e correo de erros

    5.3 Protocolos de acesso mltiplo

    5.4 Redes Locais Endereamento,

    ARP

    Ethernet

    Switches

    VLANs

    5.5 Virtualizao do enlace: MPLS

    5.6 Redes de centros de dados

    5.7 Um dia na vida de uma solicitao de pgina Web

  • 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.

  • 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

  • 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

  • 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, frequncia, 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 um n que possui mais dados a transmitir pode demorar mais quando chegar a sua vez

  • 5: Camada de Enlace 5-21

    Protocolos MAC de diviso de canal: