cap tulo 5 a camada de enlace e redes locais n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Capítulo 5: A Camada de Enlace e Redes Locais PowerPoint Presentation
Download Presentation
Capítulo 5: A Camada de Enlace e Redes Locais

Loading in 2 Seconds...

play fullscreen
1 / 45

Capítulo 5: A Camada de Enlace e Redes Locais - PowerPoint PPT Presentation


  • 82 Views
  • Uploaded on

Nossos objetivos: Entender os princípios por trás dos serviços da camada de enlace de dados: detecção e correção de erros compartilhamento de canal de broadcast : acesso múltiplo endereçamento da camada de enlace transferência confiável de dados, controle de fluxo: feito!

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Capítulo 5: A Camada de Enlace e Redes Locais' - jacie


Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
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 de dados:

detecção e correção de erros

compartilhamento de canal de broadcast: acesso múltiplo

endereçamento da camada de enlace

transferência confiável de dados, controle de fluxo: feito!

instanciação e implementação de diversas tecnologias de camada de enlace

Capítulo 5: A Camada de Enlace e Redes Locais
camada de enlace
Camada de Enlace

5.1 Introdução e serviços

5.2 Técnicas de detecção e correção de erros

5.3 Protocolos de acesso múltiplo

5.4 Endereçamento na Camada de Enlace

5.5 Ethernet

5.6 Comutadores de camada de enlace

5.7 PPP: o protocolo ponto-a-ponto

5.8 Virtualização de enlace: uma rede como camada de enlace

5.9 Um dia na vida de uma solicitação de página Web

camada de enlace introdu o
Camada de Enlace: Introdução

Terminologia:

  • hospedeiros e roteadores são nós
  • canais de comunicação que conectam nós adjacentes ao longo de um caminho de comunicação são enlaces (links)
    • enlaces com fio (cabeados)
    • enlaces sem fio (não cabeados)
    • LANs
  • Pacote da camada 2 é um quadro (frame),encapsula o datagrama

a camada de enlace é responsável por transferir os datagramas entre nós adjacentes através de um enlace

camada de enlace contexto
Datagrama é transferido por diferentes protocolos de enlace em diferentes enlaces:

Ex.: Ethernet no primeiro enlace, frame relay em enlaces intermediários e 802.11 no último enlace

Cada protocolo de enlace provê diferentes serviços

ex.: pode ou não prover transporte confiável de dados através do enlace

Analogia com um sistema de transporte

Viagem de Princeton até Lausanne

taxi: Princeton até JFK

avião: JFK até Genebra

Trem: Genebra até Lausanne

turista = datagrama

segmento de transporte = enlace decomunicação

meio de transporte = protocolo da camada de enlace

agente de viagens = algoritmo/protocolo deroteamento

Camada de Enlace: Contexto
servi os da camada de enlace
Serviços da Camada de Enlace
  • Enquadramento (Delimitação do quadro):
    • encapsula datagrama num quadro adicionando cabeçalho e cauda (trailer).
  • Acesso ao enlace:
    • implementa acesso ao canal se meio for compartilhado,
    • ‘endereços físicos (MAC)’ são usados nos cabeçalhos dos quadros para identificar origem e destino de quadros em enlaces multiponto
      • Diferente do endereço IP!
  • Entrega confiável entre nós adjacentes:
    • Já aprendemos como fazer isto (Capítulo 3)
    • raramente usada em canais com baixas taxas de erro (fibra óptica, alguns tipos de pares trançados)
    • Canais sem fio: altas taxas de erros
      • P: para que confiabilidade na camada de enlace e fim-a-fim?
servi os da camada de enlace mais
Serviços da Camada de Enlace (mais)
  • Controle de Fluxo:
    • compatibilizar taxas de produção e consumo de quadros entre remetentes e receptores
  • Detecção de Erros:
    • erros são causados por atenuação do sinal e por ruído
    • receptor detecta presença de erros
      • receptor sinaliza ao remetente para retransmissão, ou simplesmente descarta o quadro em erro
  • Correção de Erros:
    • mecanismo que permite que o receptor localize e corrija o(s) erro(s) sem precisar da retransmissão
  • Half-duplex e full-duplex
    • com half duplex um nó não pode transmitir e receber pacotes ao mesmo tempo
onde a camada de enlace implementada
em cada um dos hospedeiros

camada de enlace implementada no “adaptador” (NIC – Network Interface Card)

placa Ethernet, cartão PCMCIA, cartão 802.11

implementa as camadas de enlace e física

conecta ao barramento de sistema do hospedeiro

combinação de hardware, software e firmware

aplicação

transporte

rede

enlace

enlace

física

Onde a camada de enlace é implementada?

Diagrama de blocos do hospedeiro

cpu

memória

barramento

do hospedeiro

(ex., PCI)

controlador

Transmissão

física

placa de rede

comunica o entre adaptadores
lado transmissor:

Encapsula o datagrama em um quadro

Adiciona bits de verificação de erro, transferência confiável de dados, controle de fluxo, etc.

lado receptor

verifica erros, transporte confiável, controle de fluxo, etc.

extrai o datagrama, passa-o para o nó receptor

Comunicação entre Adaptadores

datagrama

datagrama

Controla-

dora

Controla-

dora

receptor

transmissor

datagrama

quadro

camada de enlace1
Camada de Enlace

5.1 Introdução e serviços

5.2 Técnicas de detecção e correção de erros

5.3 Protocolos de acesso múltiplo

5.4 Endereçamento na Camada de Enlace

5.5 Ethernet

5.6 Comutadores da camada de enlace

5.7 PPP: o protocolo ponto-a-ponto

5.8 Virtualização de enlace: uma rede como camada de enlace

5.9 Um dia na vida de uma solicitação de página Web

detec o de erros
Detecção de Erros
  • EDC= bits de Detecção e Correção de Erros (redundância)
  • D = Dados protegidos por verificação de erros, podem incluir alguns campos do cabeçalho
  • detecção de erros não é 100% confiável;
    • protocolos podem deixar passar alguns erros, mas é raro
    • quanto maior o campo EDC melhor será a capacidade de detecção e correção de erros
verifica es de paridade
Verificações de Paridade

Paridade Bidimensional:

Detecta e corrige erro em um único bit

Paridade de 1 Bit:

Detecta erros em um único bit

soma de verifica o da internet
Transmissor:

trata o conteúdo do segmento como uma seqüência de inteiros de 16 bits

Soma de verificação: adição (complemento de 1 da soma ) do conteúdo do segmento

transmissor coloca o valor do checksum no campo de checksum UDP

Receptor:

calcula a soma de verificação do segmento recebido

verifica se o resultado é igual ao valor do campo da soma de verificação:

NÃO - erro detectado

SIM - nenhum erro foi detectado. Mas pode conter erros? Mais sobre isto posteriormente ….

Soma de verificação da Internet

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

verifica o de redund ncia c clica crc
Verificação de redundância cíclica (CRC)
  • Dados considerados como a seqüência de coeficientes de um polinômio (D)
  • É escolhido um polinômio Gerador, (G), (=> r+1 bits)
    • Divide-se (módulo 2) o polinômio D*2r por G. Acrescenta-se o resto (R) a D. Observa-se que, por construção, a nova seqüência <D,R> agora é exatamente divisível por G
    • Receptor conhece G, divide <D,R> 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 prática (Ethernet, 802.11 WiFi, ATM)
exemplo de crc
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

D

G

101110000 1001

1001 101011

1010

1001

1100

1001

1010

1001

011

R

implementa o em hardware
Implementação em Hardware

D.2r=101110000

G=1001

Å

camada de enlace2
Camada de Enlace

5.1 Introdução e serviços

5.2 Técnicas de detecção e correção de erros

5.3 Protocolos de acesso múltiplo

5.4 Endereçamento na Camada de Enlace

5.5 Ethernet

5.6 Comutadores da camada de enlace

5.7 PPP: o protocolo ponto-a-ponto

5.8 Virtualização de enlace: uma rede como camada de enlace

5.9 Um dia na vida de uma solicitação de página Web

enlaces e protocolos de acesso m ltiplo
Enlaces e Protocolos de Acesso Múltiplo

Dois tipos de enlaces:

  • Ponto-a-ponto:
    • PPP para acesso discado
    • Conexão entre switch Ethernet e hospedeiro
  • broadcast (cabo ou meio compartilhado);
    • Ethernet tradicional
    • Upstream HFC
    • 802.11 LAN sem fio
    • Satélite
    • Etc.
protocolos de acesso m ltiplo
Protocolos de Acesso Múltiplo
  • canal de comunicação único de broadcast
  • interferência: quando dois ou mais nós transmitem simultaneamente
    • colisão se um nó receber dois ou mais sinais ao mesmo tempo

Protocolo de acesso múltiplo

  • algoritmo distribuído que determina como os nós compartilham o canal, isto é, determina quando um nó pode transmitir
  • comunicação sobre o compartilhamento do canal deve usar o próprio canal!
    • não há canal fora da faixa para coordenar a transmissão
protocolo ideal de acesso m ltiplo
Protocolo Ideal de Acesso Múltiplo

Para um canal de broadcast com taxa de R bps:

1. Quando apenas um nó tem dados para enviar, esse nó obtém uma vazão de R bps.

2. Quando M nós têm dados para enviar, cada um desses nós poderá transmitir em média a uma taxa de R/M bps.

3. Completamente descentralizado

  • nenhum nó especial (mestre) para coordenar as transmissões
  • nenhuma sincronização de relógios ou slots

4. Simples para que sua implementação seja barata

taxonomia dos protocolos mac
Taxonomia dos Protocolos MAC

Três categorias gerais:

  • Divisão de Canal
    • divide o canal em pequenos “pedaços” (slots/compartimentos de tempo, freqüência, código)
    • aloca pedaço a um dado nó para uso exclusivo deste
  • Acesso Aleatório
    • canal não é dividido, podem ocorrer colisões
    • “recuperação” das colisões
  • Revezamento
    • Nós se alternam em revezamento, mas nós que possuem mais dados a transmitir podem demorar mais quando chegar a sua vez
protocolos mac de divis o de canal tdma
Protocolos MAC de divisão de canal: TDMA

TDMA: Acesso Múltiplo porDivisão deTempo

  • acesso ao canal em “turnos"
  • cada estação recebe um comprimento fixo de compartimento (comprimento = tempo de tx do pacote) em cada turno
  • compartimentos não usados permanecem ociosos
  • Exemplo: LAN com 6 estações: compartimentos 1, 3 e 4 com pacotes, compartimentos 2, 5 e 6 ociosos
protocolos de acesso aleat rio
Protocolos de Acesso Aleatório
  • Quando nó tem um pacote para transmitir
    • transmite na taxa máxima R.
    • nenhuma coordenação a priori entre os nós
  • dois ou mais nós transmitindo ➜ “colisão”,
  • O protocolo MACde acesso aleatórioespecifica:
    • como detectar colisões
    • como se recuperar delas (através de retransmissões retardadas, por exemplo)
  • Exemplos de protocolos MAC de acesso aleatório:
    • slotted ALOHA
    • ALOHA
    • CSMA, CSMA/CD, CSMA/CA
csma acesso m ltiplo com detec o de portadora
CSMA (Acesso múltiplo com detecção de portadora)

CSMA (Carrier SenseMultiple Access):

Escuta antes de transmitir (detecção de portadora):

    • Se o canal estiver livre: transmite todo o quadro
    • Se o canal estiver ocupado, adia a transmissão
  • Analogia humana: não interrompa outros!
colis es no csma
Colisões no CSMA

Disposição espacial dos nós

colisões ainda podem acontecer:

atraso de propagação significa que dois nós podem não ouvir

a transmissão do outro

colisão:

todo o tempo de transmissão é desperdiçado

nota:

papel da distância e atraso de propagação na determinação da probabilidade de colisão

csma cd detec o de colis es
CSMA/CD (Detecção de Colisões)

CSMA/CD: detecção da portadora, adia a transmissão como no CSMA

    • As colisões são detectadas em pouco tempo
    • Transmissões que sofreram colisões são abortadas, reduzindo o desperdício do canal
  • Detecção de colisões:
    • Fácil em LANs cabeadas: mede a potência do sinal, compara o sinal recebido com o transmitido
    • Difícil em LANs sem fio: o receptor é desligado durante a transmissão
  • Analogia humana: bate papo educado!
protocolos mac de revezamento
Protocolos MAC de “revezamento”

Protocolos MAC de divisão de canal:

  • Compartilha o canal eficientemente e de forma justa em altas cargas
  • Ineficiente em baixas cargas: atraso no canal de acesso, alocação de 1/N da largura de banda mesmo com apenas 1 nó ativo!

Protocolos MAC de acesso aleatório:

  • eficiente em baixas cargas: um único nó pode utilizar completamente o canal
  • Altas cargas: overhead com colisões

Protocolos de revezamento:

Procura oferecer o melhor dos dois mundos!

protocolos mac de revezamento1

dados

dados

poll

Protocolos MAC de “revezamento”

Seleção (Polling):

  • Nó mestre “convida” nós escravos a transmitir em revezamento
  • Usado tipicamente com dispositivos escravo burros.
  • Preocupações:
    • Overhead com as consultas (polling)
    • Latência
    • Ponto único de falha (mestre)

mestre

escravos

protocolos mac de revezamento2
Protocolos MAC de “revezamento”

Passagem de permissão (token):

  • controla permissão passada de um nó para o próximo de forma sequencial.
  • mensagem de passagem da permissão
  • preocupações:
    • overhead com a passagem de permissão
    • latência
    • Ponto único de falha (permissão)

T

(nada para

mandar)

T

dados

resumo dos protocolos mac
Resumo dos protocolos MAC
  • Divisão do canal por tempo, freqüência ou código
    • Divisão de Tempo, Divisão de Freqüência
  • Particionamento Aleatório (dinâmico):
    • ALOHA, S-ALOHA, CSMA, CSMA/CD
    • Escutar a portadora: fácil em algumas tecnologias (cabeadas), difícil em outras (sem fio)
    • CSMA/CD usado na Ethernet
    • CSMA/CA usado no 802.11
  • Revezamento
    • Seleção (polling) a partir de um ponto central, passagem de permissões
    • Bluetooth, FDDI, TokenRing (IBM)
camada de enlace3
Camada de Enlace

5.1 Introdução e serviços

5.2 Técnicas de detecção e correção de erros

5.3 Protocolos de acesso múltiplo

5.4 Endereçamento na Camada de Enlace

5.5 Ethernet

5.6 Comutadores da camada de enlace

5.7 PPP: o protocolo ponto-a-ponto

5.8 Virtualização de enlace: uma rede como camada de enlace

5.9 Um dia na vida de uma solicitação de página Web

endere os mac
Endereços MAC
  • Endereço IP de 32 bits:
    • Endereços da camada de rede
    • usado para levar o datagrama à subredeIP destino
  • Endereço MAC (ou LAN, ou físico, ou Ethernet):
    • levar o datagrama de uma interface até outra interface conectada fisicamente (na mesma rede)
    • Endereço MAC de 48 bits(para a maioria das redes):
      • gravado na ROM do adaptador, ou configurado por software
endere os mac1

1A-2F-BB-76-09-AD

LAN

(cabeada ou

sem fio)

71-65-F7-2B-08-53

58-23-D7-FA-20-B0

0C-C4-11-6F-E3-98

Endereços MAC

Cada adaptador na LAN possui um endereço MAC único

Endereço de Broadcast =

FF-FF-FF-FF-FF-FF

= adaptador

endere o mac cont
Endereço MAC (cont)
  • Alocação de endereços MAC gerenciada pelo IEEE
  • Um fabricante compra uma parte do espaço de endereços (para garantir unicidade)
  • Analogia:

(a) endereço MAC: como número do CPF

(b) endereço IP: como endereço postal (CEP)

  • endereço MAC tem estrutura linear => portabilidade
    • Pode mover um cartão LAN de uma LAN para outra
  • endereço IP hierárquico NÃO é portátil (requer IP móvel)
    • Depende da subrede IP à qual o nó está conectado
arp address resolution protocol protocolo de resolu o de endere os

Pergunta: como obter o

endereço MAC de B a partir

do endereço IP de B?

ARP: Address Resolution Protocol (Protocolo de Resolução de Endereços)
  • Cada nó IP (Host, Roteador) de uma LAN possui tabela ARP
  • Tabela ARP: mapeamento de endereços IP/MAC para alguns nós da LAN

< endereço IP; endereço MAC; TTL>

    • TTL (Time To Live): tempo a partir do qual o mapeamento de endereços será esquecido (valor típico de 20 min)

237.196.7.78

1A-2F-BB-76-09-AD

237.196.7.23

237.196.7.14

LAN

71-65-F7-2B-08-53

58-23-D7-FA-20-B0

0C-C4-11-6F-E3-98

237.196.7.88

camada de enlace4
Camada de Enlace

5.1 Introdução e serviços

5.2 Técnicas de detecção e correção de erros

5.3 Protocolos de acesso múltiplo

5.4 Endereçamento na Camada de Enlace

5.5 Ethernet

5.6 Comutadores da camada de enlace

5.7 PPP: o protocolo ponto-a-ponto

5.8 Virtualização de enlace: uma rede como camada de enlace

5.9 Um dia na vida de uma solicitação de página Web

s ntese um dia na vida de um pedido web
Síntese: um dia na vida de um pedido web
  • jornada completa atravessando toda a pilha de protocolos!
    • aplicação, transporte, rede, enlace
  • colocando tudo junto: síntese!
    • objetivo:identificar, revisar, entender os protocolos (em todas as camadas) envolvidos em um cenário aparentemente simples: solicitação de uma página web
    • cenário:estudante conecta laptop à rede do campus, solicita/recebe www.google.com
um dia na vida cen rio

navegador

Um dianavida: cenário

Servidor DNS

rede da Comcast

68.80.0.0/13

rede da escola

68.80.2.0/24

página web

servidor web

rede do Google

64.233.160.0/19

64.233.169.105

um dia na vida conectando internet

DHCP

UDP

IP

Eth

Fís

DHCP

UDP

IP

Eth

Fís

DHCP

DHCP

DHCP

DHCP

DHCP

DHCP

DHCP

DHCP

DHCP

DHCP

Um dianavida… conectando à Internet
  • o laptop necessitaobter o seuendereço IP, o endereço do primeiroroteadore endereço do servidor DNS: usa o DHCP.
  • Solicitação DHCP encapsuladaemUDP, encapsulada no IP, encapsulada no 802.3Ethernet

roteador

(roda DHCP)

  • quadro Ethernet difundido(dest: FFFFFFFFFFFF) naLAN, é recebidopeloroteadorqueexecuta o servidorDHCP
  • Ethernet demultiplexadopara IP, demultiplexadopara UDP e demultiplexadoparaDHCP
um dia na vida conectando internet1

DHCP

UDP

IP

Eth

Fís

DHCP

UDP

IP

Eth

Fís

DHCP

DHCP

DHCP

DHCP

DHCP

DHCP

DHCP

DHCP

DHCP

Um dianavida… conectando à Internet
  • servidor DHCP preparaACK DHCP contendoendereço IP do cliente, endereço IP do primeiroroteador, nome e endereço IP do servidor DNS
  • encapsulamento no servidor DHCP, quadrorepassado (aprendizado do switch) através da LAN, demultiplexação no cliente

roteador

(roda DHCP)

  • cliente DHCP recebe a respostaACK DHCP

Cliente agora possui um endereço IP, conhece o nome e end. do

servidor DNS, e o endereço IP do seuprimeiroroteador

um dia na vida arp antes do dns antes do http

ARP

ARP

Eth

Phy

ARP query

ARP reply

DNS

UDP

IP

Eth

Phy

DNS

DNS

DNS

Um dianavida… ARP (antes do DNS, antes do HTTP)
  • antes de enviarpedidoHTTP, necessita o endereço IP de www.google.com: DNS
  • consulta DNS criada, encapsulada no UDP, encapsulada no IP, encapsulada no Eth. Para enviarquadroaoroteador, necessita o endereço MAC da interface do roteador: ARP
  • consulta ARP difundida, recebidapeloroteador, queresponde com umaARP replydando o endereço MAC da interface do roteador

roteador

(roda DHCP)

  • o cliente agora conhece o endereço MAC do primeiroroteador; podendo agora enviar o quadrocontendo a consulta DNS
um dia na vida usando dns

DNS

UDP

IP

Eth

Phy

DNS

UDP

IP

Eth

Phy

DNS

DNS

DNS

DNS

DNS

DNS

DNS

DNS

DNS

Um dianavida… usando DNS

servidor DNS

rede da Comcast

68.80.0.0/13

  • datagrama IP repassado da rede do campus para a rede da Comcast, roteado(tabelascriadaspelosprotocolos de roteamentoRIP, OSPF, IS-IS e/ouBGP) para o servidor DNS

roteador

(roda DHCP)

  • datagrama IP contémconsulta DNS encaminhadaatravés do switch LAN do clienteaté o primeiroroteador
  • demultiplexado pelo servidor DNS
  • servidor DNS respondeaocliente com o endereçoIP de www.google.com
um dia na vida conex o tcp transportando http

SYN

SYN

SYN

SYN

SYN

SYN

SYN

HTTP

TCP

IP

Eth

Phy

TCP

IP

Eth

Phy

HTTP

SYNACK

SYNACK

SYNACK

SYNACK

SYNACK

SYNACK

SYNACK

Um dianavida… conexão TCP transportando HTTP
  • paraenviarpedidoHTTP, clienteprimeiroabre um socketTCP para o servidor web

roteador

(roda DHCP)

  • segmentoSYN TCP (passo 1 da saudaçãoem 3 vias) inter-domínioroteadopara o servidor web
  • servidor web responde com TCP SYNACK(passo 2 da saudaçãoem 3 vias)

servidor web

64.233.169.105

  • conexãoTCP estabelecida!
um dia na vida solicita o resposta http

HTTP

TCP

IP

Eth

Phy

HTTP

TCP

IP

Eth

Phy

HTTP

HTTP

HTTP

HTTP

HTTP

HTTP

HTTP

HTTP

HTTP

HTTP

HTTP

HTTP

HTTP

HTTP

Um dianavida… solicitação/respostaHTTP
  • páginaweb finalmente(!!!)apresentada
  • solicitação HTTP enviadapara o socket TCP
  • datagrama IP quecontém a solicitação HTTP é encaminhadopara www.google.com

roteador

(roda DHCP)

  • servidor web responde com respostaHTTP (contendo a página web)

servidor web

  • datagrama IP com a resposta HTTP é encaminhado de voltapara o cliente

64.233.169.105

cap tulo 5 resumo
princípios por trás dos serviços da camada de enlace de dados:

detecção, correção de erros

compartilhamento de canal de difusão: acesso múltiplo

endereçamento da camada de enlace

instanciação e implementação de diversas tecnologias de camada de enlace

Ethernet

LANs comutadas

redes virtualizadas como camada de enlace: MPLS

síntese: um dia na vida de uma solicitação web

Capítulo 5: Resumo