Title: A Camada de Enlace de Dados
1A Camada de Enlace de Dados
- 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 difusão acesso
múltiplo - endereçamento da camada de enlace
- instanciação e implementação de diversas
tecnologias de camada de enlace
2Camada de Enlace Introdução
- Alguma terminologia
- hosts 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/link - enlaces cabeados
- enlaces sem fio (não cabeados)
- LANs
- Pacote da camada 2 é um quadro/frame, encapsula
datagramas
a camada de enlace é responsável por transferir
os datagramas entre nós adjacentes através do
enlace
3Camada 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
4Protocolos da Camada de Enlace
5Serviços da Camada de Enlace
- Enquadramento (Delimitação do quadro) e acesso ao
enlace - encapsula datagrama num quadro adicionando
cabeçalho (header) e cauda (tail), - 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
- Raramente usada em canais com baixas taxas de
erro (fibra óptica, alguns tipos de pares
trançados) - Canais sem fio altas taxas de erros
6Serviç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, os nós de cada lado podem
transmitir, mas não simultaneamente
7Comunicação entre Adaptadores
datagrama
Protocolo da camada de enlace
nó receptor
nó transm.
adaptador
adaptador
- Lado receptor
- verifica erros, transporte confiável, controle de
fluxo, etc. - extrai o datagrama, passa-o para o nó receptor
- adaptador é semi-autônomo
- camadas de enlace e física
- camada de enlace implementada no adaptador
(NIC) - placa Ethernet, cartão PCMCIA, cartão 802.11
- 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.
8Enlaces e Protocolos de Acesso Múltiplo
- Três tipos de enlace
- (a) Ponto-a-ponto (um cabo único)
- (b) Difusão (cabo ou meio
compartilhado p.ex., Ethernet, rádio, etc.) - (c) Comutado (p.ex., E-net
comutada, ATM, etc) - Começamos com enlaces com Difusão. Desafio
principal Protocolo de Múltiplo Acesso
9Protocolos de Acesso Múltiplo
- canal de comunicação único de difusão
- 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
10Taxonomia dos Protocolos MAC
- Três classes gerais
- Particionamento do Canal
- divide o canal em pequenos pedaços (slots 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
11Protocolos 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 MAC de acesso aleatório especifica
- como detectar colisões
- como se recuperar delas (através de
retransmissões retardadas, por exemplo) - Exemplos de protocolos MAC de acesso aleatório
- ALOHA
- CSMA, CSMA/CD, CSMA/CA
12CSMA (Carrier Sense Multiple Access Acesso
Múltiplo com Detecção de Portadora)
- CSMA escuta antes de transmitir
- Se o canal estiver livre transmite todo o quadro
- Se o canal estiver ocupado, adia a transmissão
13CSMA/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
14Detecção de colisões em CSMA/CD
15Tecnologias de LAN
- Tecnologias de redes locais (LAN)
- Endereçamento
- Ethernet
- Hubs e switches
- PPP
16Endereços MAC e ARP
- Endereço IP de 32 bits
- Endereços da camada de rede
- usado para levar o datagrama à subrede IP destino
- Endereço MAC (ou LAN, ou físico, ou Ethernet)
- usado para levar o datagrama de uma interface até
outra interface conectada fisicamente (da mesma
rede) - Endereço MAC de 48 bits (para a maioria das
redes) queimado na ROM do adaptador
17Endereços LAN e ARP
Cada adaptador na LAN possui um endereço LAN único
Endereço de Difusão FF-FF-FF-FF-FF-FF
adaptador
18Endereço LAN (cont)
- Alocação de endereços MAC administrada 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
- endereço MAC sem estrutura gt 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
19ARP 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 - lt endereço IP endereço MAC TTLgt
- 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
20Protocolo ARP Mesma LAN (rede)
- Uma cache (salva) o par de endereços IP-para-MAC
na sua tabela ARP até que a informação fique
antiquada (expire) - soft state informação que expira (vai embora)
a menos que seja renovada - ARP é plug-and-play
- os nós criam suas tabelas ARP sem a intervenção
do administrador da rede
- A deseja enviar datagrama para B, e o endereço
MAC de B não está na tabela ARP. - A difunde o pacote de solicitação ARP, que contém
o endereço IP de B - Endereço MAC destino FF-FF-FF-FF-FF-FF
- todas as máquinas na LAN recebem a consulta do
ARP - B recebe o pacote ARP, responde a A com o seu (de
B) endereço MAC - Quadro enviado para o endereço MAC (unicast) de A
21Roteando um pacote para outra LAN
- passo a passo envio de datagrama de A para B via
R - assuma que A conhece o
endereço IP de B - Duas tabelas ARP no roteador R, uma para cada
rede IP (LAN) - In routing table at source Host, find router
111.111.111.110 - In ARP table at source, find MAC address
E6-E9-00-17-BB-4B, etc
A
R
B
22- A cria datagrama com origem A, destino B
- A usa ARP para obter o endereço MAC de R para
111.111.111.110 - A cria quadro da camada de enlace com o endereço
MAC de R como destino, quadro contém datagrama IP
de A para B - O adaptador de A envia o quadro
- O adaptador de R recebe o quadro
- R remove o datagrama IP do quadro Ethernet,
verifica que é destinado para B - R usa ARP para obter o endereço MAC de B
- R cria quadro contendo datagrama IP de A para B e
o envia para B
A
R
B
23Ethernet
- Muitíssimo difundida porque
- Muito barata! R30 para placas 10/100Mbps!
- A mais antiga das tecnologias de rede local
- Mais simples e menos cara que redes usando ficha
ou ATM - Acompanhou o aumento de velocidade 10 Mbps 10
Gbps
Rascunho de Metcalfe sobre o Ethernet
24Topologia em Estrela
- Topologia de barramento popular até meados dos
anos 90 - Agora prevalência de topologia estrela
- Escolhas de conexão hub ou switch
hub ou switch
25Estrutura de Quadro Ethernet
- Adaptador remetente encapsula datagrama IP (ou
pacote de outro protocolo da camada de rede) num
Quadro Ethernet - Preâmbulo
- 7 bytes com o padrão 10101010 seguidos por um
byte com o padrão 10101011 - usado para sincronizar receptor ao relógio do
remetente (relógios nunca são exatos, é muito
provável que exista algum desvio entre eles)
26Estrutura de Quadro Ethernet (cont)
- Endereços 6 bytes para cada endereço MAC
- se o adaptador recebe um quadro com endereço
destino igual ao seu, ou com endereço de difusão
(ex., pacote ARP), ele passa os dados do quadro
para o protocolo da camada de rede - caso contrário, o adaptador descarta o quadro
- Tipo indica o protocolo da camada superior,
usualmente IP, mas existe suporte para outros
(tais como IPX da Novell e AppleTalk) - CRC verificado pelo receptor se for detectado
um erro, o quadro será descartado
27Serviço não confiável e sem conexões
- Sem conexões Não há estabelecimento de conexão
(saudação) entre os adaptadores transmissor e
receptor. - Não confiável o adaptador receptor não envia
ACKs ou NACKs para o adaptador transmissor - fluxo de datagramas passados para a camada de
rede pode conter falhas na seqüência - falhas serão preenchidas se aplicação estiver
usando o TCP - caso contrário, a aplicação verá as falhas
28Ethernet usa o CSMA/CD
- O adaptador não transmite se perceber que algum
outro adaptador está transmitindo, isto é, escuta
antes de transmitir (carrier sense) - O adaptador transmissor aborta quando percebe que
outro adaptador está transmitindo, isto é,
detecção de colisão
- Antes de tentar uma retransmissão, o adaptador
espera um tempo aleatório, isto é, acesso
aleatório
2910BaseT e 100BaseT
- Taxas de transmissão de 10 e 100 Mbps esta
última é chamado de fast ethernet - T significa Par Trançado (Twisted pair)
- Nós são conectados a um hub topologia estrela
distância máxima entre os nós e o hub de 100m.
30Gbit Ethernet
- Usa formato padrão do quadro Ethernet
- Admite enlaces ponto-a-ponto e canais de difusão
compartilhados - Em modo compartilhado, usa CSMA/CD para ser
eficiente, as distâncias entre os nós devem ser
curtas (poucos metros) - Os Hubs usados são chamados de Distribuidores com
Buffers (Buffered Distributors) - Full-Duplex a 1 Gbps para enlaces ponto-a-ponto
- Agora temos também 10 Gbps!
31Codificação de Manchester
- Usado no 10BaseT
- Cada bit possui uma transição
- Permite que os relógios nos nós transmissor e
receptor entrem em sincronismo - não há necessidade de um clock global,
centralizado - Mas, isto é assunto para a camada física!
32Hubs
- Hubs são essencialmente repetidores de camada
física - bits vindos de um link são repetidos em todos os
demais links - na mesma taxa
- sem bufferização de quadros
- não há CSMA/CD no hub os adaptadores detectam as
colisões - provê funcionalidade de gerenciamento da rede
33Interconexão com hubs
- Hub no backbone interconecta segmentos de LAN
- Estende a distância máxima entre nós
- Mas os domínios de colisão de segmentos
individuais tornam-se um grande domínio de
colisão - Não dá para interligar 10Base T com 100BaseT
hub
hub
hub
hub
34Switch (comutador)
- Dispositivo da camada de enlace
- armazena e retransmite quadros Ethernet
- examina o cabeçalho do quadro e seletivamente
encaminha o quadro baseado no endereço MAC do
destino - quando o quadro deve ser encaminhado num
segmento, usa o CSMA/CD para acessá-lo - transparente
- hosts ignoram a presença dos switches
- plug-and-play, self-learning (auto aprendizado)
- switches não necessitam ser configurados
35Encaminhamento
1
3
2
- Como determina em que segmento de LAN deve
encaminhar o quadro? - Parece um problema de roteamento...
36Auto aprendizado
- Um switch possui uma tabela de comutação
- entrada na tabela de comutação
- (Endereço MAC, Interface, Carimbo de tempo)
- entradas antigas na tabela são descartadas (TTL
pode ser de 60 min) - switch aprende que hosts podem ser alcançados
através de quais interfaces - quando um quadro é recebido, o switch aprende a
localização do transmissor segmento de LAN de
onde ele veio - registra o par transmissor/localização na tabela
de comutação
37Exemplo com Switch
- Suponha que C envia quadro para D
endereço
interface
switch
1
A B E G
1 1 2 3
3
2
hub
hub
hub
A
I
F
D
G
B
C
H
E
- Switch recebe o quadro vindo de C
- anota na tabela de comutação que C está na
interface 1 - dado que D não se encontra na tabela, encaminha o
quadro para as demais interfaces 2 e 3 - quadro é recebido por D
38Exemplo com Switch
- Suponha que D responde com um quadro para C.
endereço
interface
switch
A B E G C
1 1 2 3 1
hub
hub
hub
A
I
F
D
G
B
C
H
E
- Switch recebe o quadro vindo de D
- anota na tabela de comutação que D está na
interface 2 - dado que C está na tabela, encaminha o quadro
apenas na interface 1 - quadro é recebido por C
39Switch isolamento de tráfego
- Instalação do switch quebra a subrede em diversos
segmentos de LAN - switch filtra os pacotes
- quadros do mesmo segmento de LAN não são
normalmente encaminhados para os outros segmentos - segmentos tornam-se domínios de colisão separados
domínio de colisão
domínio de colisão
domínio de colisão
40Switches acesso dedicado
- Switch com diversas interfaces
- Hosts têm conexão direta com o switch
- Sem colisões full duplex
- Comutação A-para-A e B-para-B simultaneamente,
sem colisões
A
C
B
switch
C
B
A
41Rede Institucional/corporativa
servidor de mail
para a rede externa
servidor web
roteador
switch
subrede IP
hub
hub
hub
42Switches vs. Roteadores
- ambos são dispositivos do tipo armazena-e-encaminh
a - roteadores dispositivos da camada de rede
(examinam os cabeçalhos da camada de rede) - switches são dispositivos da camada de enlace
- roteadores mantêm tabelas de roteamento,
implementam algoritmos de roteamento - switches mantêm tabelas de comutação, implementam
filtragem, algoritmos de aprendizado
43Controle de Enlace de Dados Ponto a Ponto
- um transmissor, um receptor, um canal mais fácil
que um canal de difusão - sem controle de acesso ao meio (MAC)
- sem necessidade de endereçamento MAC explícito
- ex. canal discado, canal ISDN/RDSI
- protocolos de enlace ponto a ponto populares
- PPP (point-to-point protocol)
- HDLC High level data link control - Controle de
Enlace de Dados de Alto Nível (enlace de dados
era considerado alto nível na pilha de
protocolos)
44Quadro de Dados do PPP
- Flag delimitador (enquadramento)
- Endereço não faz nada (apenas uma opção)
- Controle não faz nada no futuro pode ter
múltiplos campos de controle - Protocolo protocolo da camada superior para o
qual o quadro deve ser entregue (ex. PPP-LCP,
IP, IPCP, etc)
45Quadro de Dados do PPP
- info dados da camada superior que estão sendo
transportados - verificação (check) código de redundância
cíclica para verificação de erros
46ATM e MPLS
- ATM e MPLS são redes separadas com tudo o que têm
direito! - modelos de serviços, endereçamento e roteamento
diferentes dos usados na Internet - vistos pela Internet como sendo um enlace lógico
interconectando roteadores IP - da mesma forma que um enlace discado é na verdade
parte de uma rede separada (a telefônica)
47ATM Asynchronous Transfer Mode
- padrão de alta velocidade dos anos 1990s/00
(155Mbps a 622 Mbps e superiores) arquitetura da
RDSI-FL (Broadband Integrated Service Digital
Network) - Objetivo transporte fim-a-fim integrado para
voz, vídeo e dados - atendendo os requisitos de sincronismo e QoS para
voz e vídeo (versus o modelo de melhor esforço da
Internet) - próxima geração da telefonia raízes técnicas
no mundo da telefonia - Comutação de pacotes (pacotes de comprimento
fixos, denominados de células) usando circuitos
virtuais
48Arquitetura ATM
- camada de adaptação apenas nas bordas de uma
rede ATM - segmentação e remontagem dos dados
- analogia com a camada de transporte da Internet
- camada ATM camada de rede
- comutação de células, roteamento
- camada física
49ATM camada de rede ou de enlace?
- Visão transporte fim-a-fim ATM entre mesas de
trabalho - ATM é uma tecnologia de rede
- Realidade usada para conectar roteadores de um
backbone IP - IP sobre ATM
- ATM como uma camada de enlace comutada,
conectando roteadores IP
rede IP
rede ATM
50X.25 e Frame Relay
- Tecnologias de Longa Distância (como ATM)
também, ambos orientados a Circuito Virtual, como
ATM - X.25 foi criado nos anos 70, com o apoio das
Operadoras de Telecomunicações, como resposta à
tecnologia de datagrama da ARPANET (guerra
religiosa.) - Frame Relay surgiu da tecnologia RDSI (no final
dos anos 80) - Tanto X.25 como Frame Relay podem ser usados para
transportar datagramas IP por isto, são vistos
como Camadas de Enlace pela camada de protocolo
IP (e, portanto, são tratados aqui neste
capítulo)
51MultiProtocol Label Switching (MPLS)
- Comutação de rótulos multiprotocolo
- Objetivo inicial acelerar o encaminhamento IP
através do uso de rótulo de comprimento fixo (ao
invés de endereço IP) - empresta idéias da abordagem de circuitos
virtuais (CVs) - mas os datagramas ainda mantêm o endereço IP!
Cabeçalho MPLS
cabeçalho IP
cabeçalho PPP ou Ethernet
restante do quadro
rótulo (label)
Exp
S
TTL
5
20
3
1
52Redes Sem Fio e Móveis
53Elementos de uma rede sem fio
- Hosts sem fio
- laptop, PDA, IP phone
- Rodam Aplicações
- podem ser móveis ou não
- sem fio nem sempre significa mobilidade
54Elementos de uma rede sem fio
- estação base
- Tipicamente conectada a uma rede c/ fio
- Responsável pela comunicação entre os hosts
móveis da sua área e os hosts das redes
infra-estruturadas - e.g., cell towers e 802.11 access points
55Elementos de uma rede sem fio
- enlace sem fio
- usado para conectar os disp. móveis às estações
base - Usado como enlace de backbone
- Controlado por protocolos de múltiplo acesso
- Várias taxas de transmissão e distâncias máximas
56Elementos de uma rede sem fio
- Modo Infra-estruturado
- Estação base conecta os disp. móveis na rede com
fio - handoff disp. móvel muda de estação base, se
conectando à nova rede com fio
57Elementos de uma rede sem fio
- Modo Ad hoc
- não existem estações base
- nós podem transmitir para outros somente dentro
de uma determinada cobertura - nós se organizam em uma rede e o roteamento só
pode ser feito entre eles
58Características de enlaces sem fio
- Diferenças para os enlaces com fio
- Decremento na potência do sinal sinais de rádio
se atenuam ao longo do caminho (path loss) - Interferência de outras fontes freqüências
padronizadas para redes sem fio (por ex. 2.4 GHz)
são compartilhadas por outros disp. (por ex.,
telefone) motores também interferem - Propagação multipath sinal de rádio reflete em
obstáculos terrestres, chegando no destino com
pequenas diferenças de tempo - ? Faz da comunicação sobre um enlace sem fio
(mesmo um ponto a ponto) muito mais difícil
59Características das redes sem fio
- A existência de múltiplos transmissores e
receptores sem fio cria problemas adicionais,
que vão além do múltiplo acesso
- Probl. terminal escondido
- B, A escutam um ao outro
- B, C escutam um ao outro
- A, C não podem escutar um ao outro ? A e C não
podem prever uma interf. em C
- Atenuação do sinal
- B, A escutam um ao outro
- B, C escutam um ao outro
- A, C não podem escutar um ao
- outro ? interf. em C
60IEEE 802.11 Wireless LAN
- 802.11b
- 2.4-5 GHz unlicensed radio spectrum
- up to 11 Mbps
- direct sequence spread spectrum (DSSS) in
physical layer - all hosts use same chipping code
- widely deployed, using base stations
- 802.11a
- 5-6 GHz range
- up to 54 Mbps
- 802.11g
- 2.4-5 GHz range
- up to 54 Mbps
- All use CSMA/CA for multiple access
- All have base-station and ad-hoc network versions
61IEEE 802.11 LAN - arquitetura
- Um host sem fio se comunica com a estação base
- estação base access point (AP)
- Basic Service Set (BSS) (célula)
- no modo infra-estruturado contém
- Hosts sem fio
- access point (AP) estação base
- no modo ad hoc somente hosts sem fio
hub, switch ou roteador
BSS 1
BSS 2
62IEEE 802.11 múltiplo acesso
- Evita colisões (CSMA/CA) (Collision Avoidance)
dois ou mais nós transmitindo ao mesmo tempo - 802.11 CSMA escuta o meio antes de
transmitir - para não colidir com outras transmissões em
andamento - 802.11 não realiza detecção de colisão!
- Dificuldade de receber (escutar colisões)
quando está transmitindo devido à fraqueza dos
sinais recebidos (fading) - Não pode escutar todas as colisões terminal
escondido, fading
63IEEE 802.11 Evitando colisões
- idéia permitir ao emissor reservar o canal ao
invés de realizar um acesso aleatório dos
quadros, evitando colisões de quadros longos - Emissor primeiramente envia pequenos pacotes de
controle request-to-send (RTS) para o AP usando o
CSMA, mas que é ouvido por todas as estações ao
seu alcance (inclusive o AP) - Obs os pacotes RTS podem ainda colidir uns com
os outros, mas como eles são pequenos, não causam
longos atrasos - AP envia um pct clear-to-send (CTS) para todas as
estações que estão ao seu alcance, em resposta ao
RTS - Emissor transmite o quadro de dados
- Outras estações bloqueiam suas transmissões
Evita completamente as colisões de quadros de
dados usando pequenos pcts de reserva!
64Evitando Colisões troca de RTS-CTS
A
B
AP
bloqueio
tempo