capítulo 5: camada de enlace e redes locais
TRANSCRIPT
5: Camada de Enlace 5a-2
Repetidores, Hubs, Pontes, Switches, Roteadores e Gateways
(a) Qual a camada em que o dispositivo opera?.(b) quadros, pacotes e cabeçalhos
5: Camada de Enlace 5a-3
Camada de Enlace: IntroduçãoAlgumas terminologias: Estações e roteadores são nós
(pontes e comutadores também) Canais de comunicação que conectam
nós adjacentes através de um caminho são enlaces: Enlaces cabeados (wired links) Enlaces sem fio (wireless links) LANs (Local Area Networks)
O PDU (PacketData Unit) é um quadro/frame, que encapsula datagramas
“enlace”
A camada de enlace tem a responsabilidade de transferir datagramas de um nó Para outro adjacente através de um enlace.
5: Camada de Enlace 5a-4
Camada de enlace: contexto
Datagrama transferido por diferentes protocolos através de diferentes enlaces: e.g., Ethernet no primeiro
enlace, frame relay no enlace intermediário, 802.11 no último enlace.
Cada protocolo da camada de enlace fornece serviço diferente e.g., pode ou não fornecer
confiabilidade através do enlace
Analogia com transporte viagem de Caruaru para São
Paulo carro: Caruaru para Recife avião: Recife para Rio trem: Rio para São Paulo
turista = datagrama segmento de transporte =
enlace de comunicação modo de transporte =
protocolo da camada de enlace agente de viagem = algoritmo
de roteamento
5: Camada de Enlace 5a-5
Protocolos da Camada de Enlace
5: Camada de Enlace 5a-6
Serviços da Camada de Enlace Enquadramento (Delimitação do quadro) e acesso ao enlace:
encapsula datagrama num quadro adicionando cabeçalho e cauda,
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
Entrega confiável entre nós adjacentes:Visto no 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?
5: Camada de Enlace 5a-7
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, os nós de cada lado podem transmitir, mas não simultaneamente
5: Camada de Enlace 5a-8
Comunicação entre Adaptadores
camada de enlace implementada no “adaptador” (NIC - Net) placa Ethernet, 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.
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
nótransm.
quadro
nóreceptor
datagrama
quadro
adaptador adaptador
Protocolo da camadade enlace
5: Camada de Enlace 5a-9
Taxonomia 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
RevezamentoNós se alternam em revezamento, mas nós que possuem
mais dados a transmitir podem demorar mais quando chegar a sua vez
5: Camada de Enlace 5a-10
Protocolos de Particionamento do Canal TDMA (Multiplexação por Divisão de
Tempo): canal dividido em N intervalos de
tempo (“slots”), um para cada usuário; ineficiente com usuários de pouco demanda ou quando carga for baixa.
FDMA (Multiplexação por Divisão de Freqüência): freqüência subdividida.
CDMA (Múltiplo Acesso por Divisão por Código): explora esquema de codificação
de espectro espalhado - DS (Direct Sequence) ou FH (Frequency Hopping)
“código” único associado a cada canal; ié, particionamento do conjunto de códigos
5: Camada de Enlace 5a-11
Protocolos de Acesso Aleatório
Uma estação transmite aleatoriamente (ié, semcoordenação a priori entre estações) ocupando toda a capacidade R do canal.
Se houver “colisão” entre as transmissões de duas oumais estações, elas retransmitem depois de esperaaleatória
O protocolo MAC de acesso aleatório especifica comodetectar colisões e como recuperar delas (através de retransmissões retardadas, por exemplo)
Exemplos de protocolos MAC de acesso randômico:CSMA e CSMA/CD
5: Camada de Enlace 5a-12
Protocolos MAC de “revezamento”
Até aqui já vimos:
Protocolos MAC de particionamento de canal (TDMA,
FDMA e CDMA) podem compartilhar o canal eqüitativamente;
porém, uma única estação não consegue usar toda a
capacidade do canal
Protocolos MAC de acesso aleatório permitem que um único
usuário utilize toda a capacidade do canal; entretanto, eles
não conseguem compartilhar o canal de maneira justa
Também existem protocolos de “revezamento”...
5: Camada de Enlace 5a-13
Protocolos MAC de “revezamento” Protocolos MAC de revezamento conseguem tanto justiça
como acesso individual a toda a capacidade do enlace, ao custo de maior complexidade de controle
(a) Polling: uma estação Mestre numa rede local “convida” em ordem as estações escravas a transmitir seus pacotes (até algum Máximo).
Problemas: latência, ponto único de falha (Mestre)
(b) Passagem de ficha de permissão: a ficha de permissão é passada seqüencialmente de estação a estação. É possível aliviar a latência e melhorar tolerância a falhas (numa configuração de barramento de fichas). Entretanto, procedimentos complexos para recuperar de perda de ficha,etc.
5: Camada de Enlace 5a-14
Sumário de protocolos MAC
O que se pode fazer com um meio compartilhado? Particionamento do canal, por tempo, freqüência ou código
• TDMA, FDMA, CDMA, WDMA (wave division) Particionamento randômico (dinâmico),
• ALOHA, S-ALOHA, CSMA, CSMA/CDRevezamento
• polling de um nó central, passagem de ficha de permissão
5: Camada de Enlace 5a-15
Endereços físicos e ARP Endereço IP: usado para levar o pacote à rede destino Endereço físico (ou MAC): usado para levar o pacote até o cartão
de interface de rede local (cartão de adaptador) da estação de destino na rede local
Endereço MAC de 48 bits
Vendor Code Serial Number
24 bits 24 bits
0000.0c12. 3456ROM
RAM
5: Camada de Enlace 5a-16
Endereço físico (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 (flat)=> portabilidade endereço IP hierárquico NÃO é portátil (requer IP
móvel) endereço MAC de difusão (broadcast): 1111………….1111
5: Camada de Enlace 5a-17
ARP: Address Resolution Protocol Cada nó IP (Estação, Roteador) na rede local possui módulo e
Tabela ARP Tabela ARP (cache): mapeamento entre endereços IP/MAC
para alguns nós na rede local< endereço IP; endereço MAC; TTL>< ………………………….. >
TTL (Time To Live):temporizador, tipicamente algunspoucos minutos (<5)
5: Camada de Enlace 5a-18
ARP (cont)
Nó A quer enviar pacote para endereço IP de destino XYZ na mesma rede local
Nó de origem primeiro verifica se sua própria Tabela ARP contém o endereço IP XYZ
Se XYZ não estiver na Tabela ARP, o módulo ARP difunde pacote ARP:
< XYZ, MAC (?) > TODOS nós na rede local aceitam e inspecionam o
pacote ARPNó XYZ responde ao nó A com pacote ARP unicast
(ponto a ponto) informando seu próprio endereço MAC :
< XYZ, MAC (XYZ) > Endereço MAC de XYZ guardado na Tabela ARP
5: Camada de Enlace 5a-19
Ethernet Muitíssimo difundida porque:
Muito barata! R$30 para 100Mbps!A mais antiga das tecnologias de rede localMais simples e menos cara que redes usando ficha ou ATMAcompanhou o aumento de velocidade: 10, 100, 1000 MbpsMuitas tecnologias E-net (cabo, fibra, etc). Mas todas
compartilham características comuns
Metcalfe’s Ethernetsketch
5: Camada de Enlace 5a-20
Ethernet
1976 - Desenvolvido pela XEROX nos anos 70 Bob Metcalfe – Fundador da 3COM Taxa original - 2,94 Mbps
1980 - Definido como um padrão pela DIGITAL, INTEL e XEROX, chamado padrão DIX – Ethernet a 10Mbps
1985 - Tornou-se padrão IEEE 802.3 1995 – Fast Ethernet 100Mbps 1998 – Gigabit Ethernet 1Gbps 1999 – 10 Gigabit Ethernet 10Gbps Diferentes formatos de quadro entre o Ethernet e o
802.3
5: Camada de Enlace 5a-21
Estrutura de Quadro Ethernet
Adaptador remetente encapsula datagrama IP (ou pacote de outro protocolo da camada de rede) num Quadro Ethernet que contém campos de Preâmbulo, Cabeçalho, Dados e CRC
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)
5: Camada de Enlace 5a-22
Estrutura de Quadro Ethernet (cont)
Cabeçalho contém Endereços de Destino e Origeme um campo Tipo
Endereços: 6 bytes, o quadro é recebido por todosadaptadores numa rede local e descartado se nãocasar o endereço de destino com o do receptor
Tipo: indica o protocolo da camada superior, usualmente IP, mas existe suporte para outros
CRC: verificado pelo receptor: se for detetado um erro, o quadro será descartado
5: Camada de Enlace 5a-23
01010101 ... SOH dest addr data FCS
7 sync bytes
length
Data, padded to at least 46 B
src addr
32-bit CRC
Type field in Ethernet
Length of data in IEEE 802.3 (Length at most 1500).
Bytes: 7 1 6 6 2 446 to 1500
In Ethernet: 01010101
In IEEE 802.3: 01010111
Source and destination addresses
6 byte ethernet addr
Escrito usualmente: 00:02:4b:c6:90:f1
broadcast: ff:ff:ff:ff:ff:ff
Formato do quadro Ethernet e 802.3
5: Camada de Enlace 5a-24
Codificação Manchester de Banda Básica
Banda-base: adaptador envia um sinal digital diretamente no canal broadcast. significa que não se usa modulação de portador(interface
não faz deslocamento do sinal para outra banda de freqüência); ao invés disto, bits são codificados usando codificação Manchester e transmitidos diretamente, modificando a voltagem de sinal de corrente contínuo
5: Camada de Enlace 5a-25
Codificação Manchester de Banda Básica
Codificação Manchester (camada física) garante que ocorra uma transição de voltagem a cada intervalo de bit, ajudando sincronização entre relógios do remetente e receptor
5: Camada de Enlace 5a-26
Thick (Cabo coaxial grosso) 10Base5, 10Mbps/Banda Base/500m
Thin (Cabo coaxial fino) 10Base2, 10Mbps/Banda Base/185m
Cabeamento Ethernet
Taxa de dadosem Mbps10 Mbps
SinalizaçãoBanda Base
Comprimento máximo do segmento em centenasde metros ou tecnologia
10 Base X
5: Camada de Enlace 5a-27
Tecnologias Ethernet: 10Base2
10=>10Mbps; 2=> comprimento máximo de segmento de menos de 200 metros; também chamada de “Cheapernet”
Utiliza cabo coaxial fino em topologia de barramento Repetidores são usados para interligar múltiplos segmentos (até 5
em qualquer caminho); um repetidor repete os bits escutados emuma interface para sua(s) outra(s) interface(s), ié, ele é apenas um dispositivo da camada física!
5: Camada de Enlace 5a-28
10Base5
Distância mínima entre as estações = 2,5 m
Terminador
Repetidor
Comprimento máximo do segmento = 500 mNúmero máximo de estações por segmento = 100
Distância máxima entre duas estações = 2.500 m
Coaxial 0,5”
vampire tap
transceiver
Cabo AUI
transceiver : envia/recebe, detecção decolisão AUI : Attachment Unit Interface
Network Interface Card - NIC
50m
5: Camada de Enlace 5a-29
10Base2Coaxial 0.25 “
Conector T BNC
Network Interface Card - NIC
conector BNC(Bayonet-Neill-Concelman) Uso em escritórios
Comprimento máximo do segmento = 185mNúmero máximo de estações por segmento = 30
Distância mínima entre as estações = 0.5 m
Distância máxima entre duas estações = 925m
Terminador
Repetidor
5: Camada de Enlace 5a-30
10BaseT e 100BaseT
Taxas de transmissão de 10 e 100 Mbps; este último é chamado de “fast ethernet”
T significa Par Trançado Usa concentrador (“hub”) ao qual os nós estão ligados por
cabos individuais de 2 pares trançados, mostrando, portanto uma “topologia em estrela”
Distância máxima do nó ao hub é de 100 metros Hub pode desligar da rede um adaptador falho (“jabbering”);
10Base2 não funcionaria se um adaptador não pára de transmitir no cabo
Hub pode coletar informação e estatísticas de monitoramento para administradores da rede
5: Camada de Enlace 5a-31
10BaseT e 100BaseT (Qual o limite?)
5: Camada de Enlace 5a-32
10BaseT e 100BaseT
5: Camada de Enlace 5a-33
Gbit Ethernet Usa formato do quadro Ethernet padrão Admite enlaces ponto-a-ponto e canais de difusão
compartilhados
Em modo compartilhado, usa-se CSMA/CD; para ser eficiente, as distâncias entre os nós devem ser curtas(poucos metros)
Full-Duplex em 1 Gbps para enlaces ponto-a-ponto
5: Camada de Enlace 5a-34
CSMA – Carrier Sense Multiple Access
Controle descentralizado
Carrier sense – todos os computadores podem distinguir entre um link ocioso ou ocupado
Acesso múltiplo – vários computadores disputam o acesso ao meio
Presença da Portadora – os computadores que desejam transmitir escutam o meio antes de transmitir e se não sentirem a presença da portadora transmitem
5: Camada de Enlace 5a-35
Deteção de Colisão - CD Mesmo com CSMA dois computadores podem transmitir ao
mesmo tempo A estação transmite um frame e continua a escutar o meio
para notar se houve colisão Se o nível médio de tensão excede um limiar, a colisão é
percebida
5: Camada de Enlace 5a-36
Recuperação da Colisão A estação que percebe a colisão envia um sinal especial para
forçar todas as outras interfaces também perceberem a colisão
Os computadores esperam por um tempo aleatório antes de tentar transmitir novamente
Após esse tempo o computador escuta o meio novamente antes de transmitir para evitar colisões sucessivas
Mesmo com esse tempo aleatório colisões ainda podem acontecer
As estações dobram o tempo de espera a cada colisão sucessiva
5: Camada de Enlace 5a-37
Transmissão do quadro
composição quadro
Portadora presente ?
Espere o intervalo de tempo entre quadrosInício transmissão
colisão detectada?
N
N
Y
Y envio seqüência JAMIncrementa tentativa
Limite tentativa ?
Descarte frame
N
Y
Computador parae espera tempo
de retransmissão
transmissão feita?
transmissão OK
N
Y
5: Camada de Enlace 5a-38
Recepção do Frame
Recepção ok ?
Passa frame próximo nível
Y
Y
N
N
Descarta frame
Y
N
Início recepção
Confere DA
FCS e frame size OK?
5: Camada de Enlace 5a-39
Backoff Binário
detectada colisão?
Y
envia frame
descarte quadro
Y
Espera aleatória entre 0 e atraso-1
dobra atraso
limitadoatraso <1024
N
Atraso máximo é limitado a1023*51.2 µs=52.4 ms
>16 tentativa
atraso= 2
transmissão feita?
transmissão OK
NY
N
1a espera 0 ou 1 slot de tempo2a espera 0,1,2 or 3 slots de tempo3a espera 0,1,2,..7 slots tempoka espera 0.. 2k slots de tempo
Após 10ª. colisão o intervalo é congelado em 1023 slots Após 16ª. colisões , frame é descartado e a falha é
reportada ao nível superior
5: Camada de Enlace 5a-40
Tamanho mínimo do quadro
(1) pacote inicia no tempo 0
(2) Pacote quase em B em t-α
(3) B envia pacote; colisão ocorre em t
(4) Sinal jam chegade volta A em 2t
O quadro deve levar mais que 2t para ser enviado a fim de prevenir a situação que o transmissor conclui incorretamente que o frame foi transmitido com sucesso. A faixa de tempo é = 51,2 µs correspondente a 512 bit = 64 bytes O tamanho mínimo do quadro é 64 bytes (excluindo o preâmbulo) Isto responde porque o campo de dados deve ter no mínimo 46 bytes
A e B estão nas extremidades do cabo
A B A B
A B A B
5: Camada de Enlace 5a-41
Tempo de colisão no pior caso
2.500 metros
500 metros
5: Camada de Enlace 5a-42
Código Polinomial ou Código de Redundância Cíclica (CRC)
Polinômio• 110001 → x5 + x4 + x0 (6 bits → grau n
= 5)A subtração corresponde ao ou exclusivo
01010101
10101111
11111010---------------
-
5: Camada de Enlace 5a-43
ProcedimentoSeja G(x) o gerador polinomial de grau r. Acrescente r
bits ao quadroDivida o novo quadro pelo geradorAcrescente ao quadro original o resto da divisão
Código Polinomial ou Código de Redundância Cíclica (CRC)
mensagem M
T = quadro transmitido
n+1 bits
CRC
k bits
5: Camada de Enlace 5a-44
5: Camada de Enlace 5a-45
Interconnecting LANs Q: Why not just one big LAN? Limited amount of supportable traffic: on single
LAN, all stations must share bandwidth limited length: 802.3 specifies maximum cable
length large “collision domain” (can collide with many
stations) limited number of stations: 802.5 have token
passing delays at each station
5: Camada de Enlace 5a-46
Repetidores, Hubs, Pontes, Switches, Roteadores e Gateways
(a) Qual a camada em que o dispositivo opera?.(b) quadros, pacotes e cabeçalhos
5: Camada de Enlace 5a-47
RepeaterTransmits data to
all connected computers
HubTransmits data to all connected
computers in a star topology
Repeaters and Hubs
Repeater
Hub
5: Camada de Enlace 5a-48
Hubs Physical Layer devices: essentially repeaters
operating at bit levels: repeat received bits on one interface to all other interfaces
Hubs can be arranged in a hierarchy (or multi-tier design), with backbone hub at its top
5: Camada de Enlace 5a-49
Hubs (more)
Each connected LAN referred to as LAN segment Hubs do not isolate collision domains: node may collide
with any node residing at any segment in LAN Hub Advantages:simple, inexpensive deviceMulti-tier provides graceful degradation: portions
of the LAN continue to operate if one hub malfunctions
extends maximum distance between node pairs (100m per Hub) Qual o limite?
5: Camada de Enlace 5a-50
Hub limitations
single collision domain results in no increase in max throughputmulti-tier throughput same as single segment
throughput individual LAN restrictions pose limits on number
of nodes in same collision domain and on total allowed geographical coverage
cannot connect different Ethernet types (e.g., 10BaseT and 100baseT)
5: Camada de Enlace 5a-51
Bridges
Bridge
5: Camada de Enlace 5a-52
Endereço MAC
Vendor Code Serial Number
24 bits 24 bits
0000.0c12. 3456ROM
RAM
• Endereço MAC é gravado na ROM da placa de rede
5: Camada de Enlace 5a-53
Bridges
Link Layer devices: operate on Ethernet frames, examining frame header and selectively forwarding frame based on its destination
Bridge isolates collision domains since it buffers frames
When frame is to be forwarded on segment, bridge uses CSMA/CD to access segment and transmit
5: Camada de Enlace 5a-54
Características
5: Camada de Enlace 5a-55
Bridges (more)
Bridge advantages:Isolates collision domains resulting in higher
total max throughput, and does not limit the number of nodes nor geographical coverage
Can connect different type Ethernet since it is a store and forward device
Transparent: no need for any change to hosts LAN adapters
5: Camada de Enlace 5a-56
Bridges: frame filtering, forwarding bridges filter packets same-LAN -segment frames not forwarded onto
other LAN segments forwarding: how to know which LAN segment on which to
forward frame?looks like a routing problem (more shortly!)
5: Camada de Enlace 5a-57
Bridge Filtering
filtering procedure:if destination is on LAN on which frame was
receivedthen drop the frameelse { lookup filtering table
if entry found for destinationthen forward the frame on interface
indicated;else flood; /* forward on all but the
interface on which the frame arrived*/}
5: Camada de Enlace 5a-58
Operação da ponte
A ponte “aprende” endereços de rede das estações em cada porta da LAN observando o endereço fonte no pacote.
Endereços “aprendidos” (backward learning) são mantidos em uma tabela na memória.
Endereços antigos são descartados após um intervalo de tempo pré-configurado para permitir mudança dinâmica da topologia.
5: Camada de Enlace 5a-59
LAN A LAN B
Inicializa - -U ⇒ V U -V ⇒ U U, V -Z ⇒ Broadcast U, V Z Y ⇒ V U, V Z, YY ⇒ X U, V Z, YX ⇒ W U, V Z, Y, XW ⇒ Z U, V, W Z, Y,X
Funcionamento das Pontes
Ponte
U V W X Y Z
LAN A LAN B
5: Camada de Enlace 5a-60
Operação da ponte
src hub
LAN B
. . .
LAN C
LAN A
Endereço Porta001048cda9 LAN B 004a43f5b2 LAN B00752cd033 LAN A0266f1b208 LAN B026934bb76 LAN C0467024b8c LAN A
. . .
dest
bridge
5: Camada de Enlace 5a-61
Pontes transparentes
Sempre que um quadro chega em uma porta, a ponte procura pelo endereço de destino na tabela.
A ponte encaminha o quadro somente para a porta (i.e., LAN C) contendo o destino.
Se as portas da fonte e destino são as mesmas,a ponte não faz nada.
5: Camada de Enlace 5a-62
Pontes transparentes
src hub
LAN B
. . .
LAN C
LAN A
dest
bridge
Endereço Porta001048cda9 LAN B 004a43f5b2 LAN B00752cd033 LAN A0266f1b208 LAN B026934bb76 LAN C0467024b8c LAN A
5: Camada de Enlace 5a-63
Pontes transparentes
Se o endereço de destino não é conhecido, encaminha o quadro para todas as portas, isto é chamado flooding.
Quadros de difusão (broadcast ) também são encaminhados para todas portas.
5: Camada de Enlace 5a-64
Pontes transparentes
Endereço Porta001048cda9 LAN B 004a43f5b2 LAN B00752cd033 LAN A0266f1b208 LAN B026934bb76 LAN C0467024b8c LAN A
src hub
LAN B
. . .
LAN C
LAN A
dest
bridge
?
5: Camada de Enlace 5a-65
Armazenamento na ponte
Uma ponte pode armazenar (buffer) quadros porque:•Porta de saída pode estar ocupada•Em redes token ring, deve aguardar pelo token•Diferenças de velocidade•Conversão de protocolos: armazena quadro para mudar seu formato.
•Armazenar para eliminar fragmentos e quadros com erro (detecção de erros)
5: Camada de Enlace 5a-66
Armazenamento na ponte
hub
LAN B
. . .
LAN C
LAN A
Endereço Porta001048cda9 LAN B 004a43f5b2 LAN B00752cd033 LAN A0266f1b208 LAN B026934bb76 LAN C0467024b8c LAN A
Buffer
5: Camada de Enlace 5a-67
Bridges Spanning Tree for increased reliability, desirable to have
redundant, alternate paths from source to dest with multiple simultaneous paths, cycles result -
bridges may multiply and forward frame forever solution: organize bridges in a spanning tree by
disabling subset of interfaces
Disabled
5: Camada de Enlace 5a-68
Um ciclo de Pontes
Para aumentar a confiabilidade, utilizar duas ou mais pontes em paralelo entre os pares de LANs
Pode haver laços infinitos na topologia – loop ⇒ um problema
5: Camada de Enlace 5a-69
Um ciclo de Pontes
5: Camada de Enlace 5a-70
Pontes Spanning Tree Prevenir o problema de laços infinitos (loop) Árvore geradora (LANs = vértice e Pontes = arestas)
5: Camada de Enlace 5a-71
Construindo uma Spanning Tree
Utilizam um protocolo para estabelecer uma spanning tree802.1D
Escolhe-se uma ponte para ser a raiz da árvoreBroadcast do número de sérieA ponte com menor número de série é a raiz da
árvore Calcula o menor caminho de cada ponte/LAN até a raizGera a árvore de cobertura/amplitude/geradoraRecalculado se uma ponte/LAN falhar
Algumas pontes podem ficar fora da spanning tree e fora de operação
5: Camada de Enlace 5a-72
Algoritmo Spanning Tree
Cada nó mantém 3 pedaços de informação para cada porta:
R = ID do nó raiz atual
d = distância do nó raiz
N = nó mais próximo do nó raiz
Denote isto como (R, d, N):
(Root-ID, dist, NextNode)
5: Camada de Enlace 5a-73
Algoritmo Spanning Tree
Inicialmente, cada nó designa a si próprio como o nó raiz!
10
20
40
75 80
(20,0,-)
(10,0,-)
(80,0,-)(75,0,-)
(40,0,-)
(40,0,-)
(80,0,-)
(75,0,-)
(40,0,-)(10,0,-)
5: Camada de Enlace 5a-74
Algoritmo Spanning Tree
Nós enviam atualizações de árvore geradora em cada porta.Por exemplo, nó 40 enviaria as atualizações mostradas à direita.
5: Camada de Enlace 5a-75
Algoritmo Spanning Tree
10
20
40
75 80
(40,0,40)
(40,0,40)
(40,0,40)
5: Camada de Enlace 5a-76
Algoritmo Spanning Tree
Outros nós também enviam atualizações de configuração.A figura mostra as atualizações enviadas pelos nós 10 e 75.
5: Camada de Enlace 5a-77
Algoritmo Spanning Tree
10
20
40
75 80
(10,0,10)
(75,0,75)(10,0,10)
(75,0,75)
5: Camada de Enlace 5a-78
Algoritmo Spanning Tree
Quando um nó recebe uma atualização de um outro nó, ele atualiza a informação de sua própria porta se:• atualização identifica um nó raiz com um ID menor• atualização identifica um nó raiz com mesmo ID mas com uma distância menor• nó raiz e distância são os mesmos, mas nó que enviou tem um menor ID
5: Camada de Enlace 5a-79
Algoritmo Spanning Tree
10
20
40
75 80
(20,0,-)
(10,0,-)
(10,1,10)(40,1,40)
(40,0,-)
(20,1,20)
(75,1,75)
(75,0,-)
(10,1,10)
(10,0,-)
Durante a primeira iteração, os links atualizariam suas informações desta forma.
5: Camada de Enlace 5a-80
Algoritmo Spanning Tree
Depois que um nó recebe as atualizações de configuração, seleciona a melhor configuração e descarta as demais.
5: Camada de Enlace 5a-81
Algoritmo Spanning Tree
10
20
40
75 80
(20,0,-)
(10,0,-)
(10,1,10)(40,1,40)
(40,0,-)
(20,1,20)
(75,1,75)
(75,0,-)
(10,1,10)
(10,0,-)
5: Camada de Enlace 5a-82
Algoritmo Spanning Tree
Quando nó recebe uma mensagem de configuração que contém um ID de raiz menor, então ele conclui que não é o nó raiz da árvore.
Dessa forma, pára de enviar suas próprias mensagens de configuração e encaminha apenas as mensagens recebidas (com a distância incrementada e nó upstream modificado).
5: Camada de Enlace 5a-83
Algoritmo Spanning Tree
10
20
40
75 80
(20,0,-)
(10,0,-)
(10,1,10)(40,1,40)
(10,1,10)
(10,0,-)
Depois de 1 iteração, nós 40, 75 e 80 ficam sabendo que eles não são o nó raiz. Nó 20 ainda pensa que é o raiz.
5: Camada de Enlace 5a-84
Algoritmo Spanning Tree
Na próxima iteração, nós que concluíram que não eram o nó raiz, encaminham atualizações do raiz para outros nós.
5: Camada de Enlace 5a-85
Algoritmo Spanning Tree
Nó 40 e 80 encaminham atualizações do raiz. Nó 75 também encaminha uma atualização para o nó 80, mas o nó 80 a descarta.
10
20
40
75 80
(10,1,40)
(10,0,-)
(10,1,10)
(10,1,40)
(10,1,10)(10,0,-)
(10,1,80)
(40,1,75)
5: Camada de Enlace 5a-86
Algoritmo Spanning Tree
Quando as atualizações estabilizam, apenas o nó raiz gera mensagens de atualização.
Outros nós estão encaminhando mensagens apenas sobre os enlaces que fazem parte da árvore geradora -- ponte designada
Enlaces não usados na árvore geradora, não encaminham quadros; estes enlaces são denominados de bloqueados.
5: Camada de Enlace 5a-87
Algoritmo Spanning Tree
Quando o algoritmo estabiliza, os enlaces ativos formam uma árvore geradora.
10
20
40
75 80
(10,2,40)
(10,0,-)
(10,1,10)(10,2,40)
(10,1,10)(10,0,-)
Enlace bloqueado : não utilizado
5: Camada de Enlace 5a-88
Atualizações Spanning Tree
Nós continuam enviando atualizações spanning treeocasionalmente.
Recuperação de falha: se um nó não recebe uma atualização dentro de um intervalo de tempo, ele novamente afirma ser um nó raiz e o algoritmo se repete.
10
20
40
75 80
(10,1,40)
(10,0,10)(10,1,40)
(10,0,10)
5: Camada de Enlace 5a-89
Interconexão com Switches
Aumento da largura de Banda disponível por usuário Switches são similares às pontes com alta
densidade de portas Provêem um único segmento de rede em cada porta,
separando os domínios de colisão Alta velocidade de processamento (Hardware)Modo de operação Store and Forward ou Cut
Through (comutação acelerada) Transparente aos protocolos de nível superior Spanning Tree (eliminar loops)
5: Camada de Enlace 5a-90
Switches
Switch
5: Camada de Enlace 5a-91
Hubs e comutadores Ethernet
Hubs de meio compartilhado
Comutadores/Switches
5: Camada de Enlace 5a-92
Ethernet Switches
Transmissão em camada 2 (quadros) com filtragem usando endereços de LAN
Switching: A-para-B a A’-para-B’ simultaneamente, sem colisões
grande número de interfaces muitas vezes: hosts individuais
são conectados em estrela no switch (1 host para cada porta)Ethernet, mas sem
colisões!
5: Camada de Enlace 5a-93
Ethernet Switches cut-through switching: o quadro é enviado da entrada para a
saída sem esperar pela montagem do quadro inteiropequena redução da latência
combinações de interfaces de 10/100/1000 Mbps, dedicadas e compartilhadas
5: Camada de Enlace 5a-94
Switch Store-and-Forward
SuperStack II Switch 3300
R
Pacote enviadode A para B
O Switch recebe o pacotecompleto e depois reenvia
AB
5: Camada de Enlace 5a-95
Switch Cut-Through
SuperStack II Switch 3300
R
Pacote enviadode A para B
O Switch recebe o cabeçalhodo pacote e inicia o envio aestação destino.H
A B
5: Camada de Enlace 5a-96
Ethernet Switches (mais)
Dedicated
Shared
Para InternetExterna
5: Camada de Enlace 5a-97
Routers
RouterRouter
RouterRouter
5: Camada de Enlace 5a-98
Interconexão com Roteadores
Conecta múltiplas LANsÉ um dispositivo que opera na camada de rede do
modelo OSICria domínios de broadcastDependente de protocoloFunção de enviar pacotes entre redesControla o fluxo entre duas estaçõesUtiliza o endereço de rede e não de host para
rotear a informaçãoBaseia-se na Tabela de Roteamento
5: Camada de Enlace 5a-99
Switches vs. Routers
both store-and-forward devicesrouters: network layer devices (examine network
layer headers)bridges are Link Layer devices
routers maintain routing tables, implement routing algorithms
switches maintain filtering tables, implement filtering, learning and spanning tree algorithms
5: Camada de Enlace 5a-100
Routers vs. Switches
Switches + and -+ Switch operation is simpler requiring less
processing bandwidth- Topologies are restricted with switches: a spanning
tree must be built to avoid cycles - switches do not offer protection from broadcast
storms (endless broadcasting by a host will be forwarded by a bridge)
5: Camada de Enlace 5a-101
Routers vs. switches
Routers + and -+ arbitrary topologies can be supported, cycling is
limited by TTL counters (and good routing protocols)+ provide firewall protection against broadcast storms- require IP address configuration (not plug and play)- require higher processing bandwidth
switches do well in small (few hundred hosts) while routers used in large networks (thousands of hosts)
5: Camada de Enlace 5a-102
Comparação resumo
hubs roteadores comutadores
isolamento de tráfego
não sim sim
Plug-and-play
sim não sim
roteamento ótimo
não sim não
comutação acelerada
sim não sim
5: Camada de Enlace 5a-103
Interconexão com GatewaysConexão de redes que executam protocolos
diferentes, atuando como conversores de protocolosÉ um dispositivo que opera em todas as
camadas do modelo OSI, principalmente, na camada de aplicação, conectando aplicações em ambientes diferenciadosInterconexão de mundos incompatíveis por
exemplo: entre redes proprietárias ou proprietárias e abertas - DEC e IBM ou TCP/IP/Ethernet e SNA/IBMPreservar investimentos (legado)
5: Camada de Enlace 5a-104
Interconexão com Gateways Exemplo:
Ligação de uma rede ethernet a um mainframe IBM
TCP/IP Mainframe
IBM
Controladorade
Comunicação
Gateway
SDLC
SDLC - Synchronous Data Link ControlSNA - Systems Network Architecture Rede SNA
5: Camada de Enlace 5a-1055: Camada de Enlace 5c-105
Camada de Enlace
5.1 Introdução e serviços 5.2 Detecção e correção de erros 5.3 Protocolos de Acesso Múltiplo 5.4 Endereçamento da Camada de Enlace 5.5 Ethernet 5.6 Interconexões: Hubs e switches 5.7 PPP 5.8 Virtualização do enlace: ATM e MPLS
5: Camada de Enlace 5a-1065c-106
Controle 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”)
5: Camada de Enlace 5a-1075c-107
Requisitos de Projeto do PPP [RFC 1557] delimitação dos pacotes: encapsulamento de
datagramas da camada de rede em quadro da camada de enlacetransporta dados da camada de rede de qualquer
protocolo de camada de rede (não apenas do IP) simultaneamente
habilidade de demultiplexar para cima transparência de bits: deve transportar qualquer
padrão de bits no campo de dados detecção de erros (sem correção) manutenção da conexão: detecta, indica falhas do
enlace para a camada de rede Negociação do endereço da camada de rede: pontos
terminais podem aprender/configurar o endereço de rede do outro
5: Camada de Enlace 5a-1085c-108
não-requisitos do PPP
não faz correção/recuperação de erros sem controle de fluxo entrega fora de ordem OK sem necessidade de dar suporte a canais
multiponto (ex., polling)
Recuperação de erros, controle de fluxo e reordenamento dos dados todos relegados a camadas superiores!
5: Camada de Enlace 5a-1095: Camada de Enlace 5c-109
Quadro 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)
5: Camada de Enlace 5a-1105: Camada de Enlace 5c-110
Quadro 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
5: Camada de Enlace 5a-1115c-111
Enchimento de Bytes (Byte Stuffing)
requisito de “transparência dos dados”: campo de dados deve poder incluir o padrão do flag <01111110> P: o <01111110> recebido é dados ou flag?
Transmissor: adiciona (“enche”) com byte <01111110> extra após cada byte < 01111110> de dados
Receptor:dois bytes 01111110 em seqüência: descarta o primeiro
byte, continua com a recepção dos dados apenas um 01111110: byte de flag
5: Camada de Enlace 5a-1125: Camada de Enlace 5c-112
Enchimento de Bytes
padrão dobyte de flag nos dados aseremtransmitidos
padrão de byte do flag mais o byte extra nos dados transmitidos
5: Camada de Enlace 5a-1135: Camada de Enlace 5c-113
Protocolo de Controle de Dados PPP
Antes de trocar dados da camada de rede, os parceiros do enlace de dados devem
configurar o enlace PPP (compr. max. quadro, authentication)
Obtém/configura informações da camada de rede para IP: transporta msgs do
Protocolo de Controle IP (IPCP) (campo de protocolo: 8021) para configurar/obter o endereço IP
5: Camada de Enlace 5a-114
Virtualização das redes/camada de enlace
Virtualização dos recursos: uma abstração poderosa para a engenharia de sistemas:
Exemplos em computação: memória virtual, dispositivos virtuaisMáquinas virtuais: ex., java
Abstrações em camadas: não apresenta os detalhes das camadas inferiores, lida com as camadas inferiores apenas de forma abstrata
5: Camada de Enlace 5a-115
A Internet: virtualizando as redes
1974: múltiplas redes desconectadasARPAnetredes de dados sobre cabosredes de pacotes via satélites (Aloha)redes de pacote via rádio
… com diferenças em:convenções de endereçamentoformato dos pacotesrecuperação de errosroteamento
ARPAnet rede de satélites"A Protocol for Packet Network Intercommunication", V. Cerf, R. Kahn, IEEE Transactions on Communications,May, 1974, pp. 637-648.
5: Camada de Enlace 5a-116
A Internet: virtualizando as redes
ARPAnet rede de satélites
gateway
Camada Interedes (IP - Internetwork layer ):
endereçamento: rede interconectada aparece como uma entidade única, uniforme, apesar da heterogeneidade das redes locais
rede de redes
Gateway: “encapsula os pacotes interredes no
formato do pacote local” encaminha (na camada interrede)
para o próximo gateway
5: Camada de Enlace 5a-117
Arquitetura Interredes de Cerf & Kahn
O que foi virtualizado? duas camadas de endereçamento: interrede e rede local nova camada (IP) torna tudo homogêneo na camada interrede tecnologia de rede local
CaboSatéliteModem de 56KbpsX.25 e Frame-relayHoje: ATM e MPLS
… “invisível” para a camada interrede. Para o IP parecem como tecnologias da camada de enlace!
5: Camada de Enlace 5a-118
ATM 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 IPda mesma forma que um enlace discado é na verdade parte
de uma rede separada (a telefônica) ATM e MPLS: interesse técnico por seus próprios
méritos A seguir uma revisão sobre comutação de pacotes
baseadas em circuitos virtuais ...
5: Camada de Enlace 5a-119
Virtual Circuit Tables
Each node maintains a table of virtual circuit identifiers and associated ports.Examples:A frame arriving on port 0, VC 8 will be forwarded to port 2, using VC 6.A frame arriving on port 1, VC 2 will be forwarded to port 3 using VC 2.
VC identifiers do not have to be unique: different ports can use same VCI w/o confusion.
0
13
2
Switch 1
Input OutputPort VC Port VC0 11 1 70 12 2 50 8 2 61 2 3 22 4 3 9
etc.
Virtual Circuit Forwarding Table
5: Camada de Enlace 5a-120
Virtual Circuit Identifiers
Incoming and outgoing VCI may be different. VCI is the same on both switches connected by a link. When a frame arrives on an incoming VC, the switch looks
up outgoing VC in a VCI table. It changes the frame’s VCI to the outgoing VCI.
0
13
2
Switch 1
Input OutputPort VC Port VC3 11 1 7
etc.
0
13
2
Switch 2
Input OutputPort VC Port VC3 7 1 5
etc.
VCI=11 VCI=7 VCI=5
5: Camada de Enlace 5a-121
Virtual Circuit Identifiers
VCI do not have global significance -- each switch chooses its own VCI.
Two switches connected by a link agree on a VCI during circuit setup (e.g., the downstream switch tells the VCI to upstream switch).
A virtual circuit can be unidirectional or bidirectional.
Input OutputPort VC Port VC3 11 1 72 5 0 8
Switch 2
Input OutputPort VC Port VC3 7 1 51 8 0 12
Switch 1
Different switches can use same VCI number for different circuits
5: Camada de Enlace 5a-122
Virtual Circuit Setup
Suppose host A wants to communicate with host B. How does it establish a virtual circuit?
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 7
Input OutputPort VC Port VC2 7 1 5
Input OutputPort VC Port VC0 8 1 9
5: Camada de Enlace 5a-123
Virtual Circuit Setup
Host A sends a VC request to Switch 1. The request includes A and B’s complete global address.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 7
Input OutputPort VC Port VC2 7 1 5
Input OutputPort VC Port VC0 8 1 9
VC Request: A B
5: Camada de Enlace 5a-124
Virtual Circuit Setup (cont.)
Switch 1 gets the request and (tentatively) creates a new VCI #9 from port 2 to port 1. It forwards request and VCI to Switch 2. It doesn’t yet know the VCI for this link.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 72 10 1 x
Input OutputPort VC Port VC2 7 1 5
Input OutputPort VC Port VC0 8 1 9
VC Request: A B
5: Camada de Enlace 5a-125
Virtual Circuit Setup (cont.)
Switch 2 determines (somehow) that the request must go to Switch 3. It chooses VCI 9 for the incoming link and forwards the request to Switch 3.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 72 10 1 x
Input OutputPort VC Port VC2 7 1 53 9 1 y
Input OutputPort VC Port VC0 8 1 9
VC Request: A B
5: Camada de Enlace 5a-126
Virtual Circuit Setup (cont.)
Switch 3 determines (somehow) that Host B is on port 1 It chooses VCI 8 for the incoming link and forwards the request to Host B.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 72 10 1 x
Input OutputPort VC Port VC2 7 1 53 9 1 x
Input OutputPort VC Port VC0 8 1 93 8 1 x
VC Request: A B
5: Camada de Enlace 5a-127
Virtual Circuit Setup (cont.)
Host B accepts the connection and chooses VCI 7 for the connection to Host A, which it records in its own table. It sends a reply back to Host A using VCI #7.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 72 10 1 x
Input OutputPort VC Port VC2 7 1 53 9 1 x
Input OutputPort VC Port VC0 8 1 93 8 1 x
Reply on VC#7
5: Camada de Enlace 5a-128
Virtual Circuit Setup (cont.)
Now Switch 3 learns the VCI chosen by Host B.Switch 3 forwards the reply to Switch 2 on VCI 8.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 72 10 1 x
Input OutputPort VC Port VC2 7 1 53 9 1 x
Input OutputPort VC Port VC0 8 1 93 8 1 7
Reply on VC#8
5: Camada de Enlace 5a-129
Virtual Circuit Setup (cont.)
Now Switch 2 learns the VCI chosen by Switch 3. Switch 2 forwards the reply to Switch 1 on VCI 9.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 72 10 1 x
Input OutputPort VC Port VC2 7 1 53 9 1 8
Input OutputPort VC Port VC0 8 1 93 8 1 7
Reply on VC#9
5: Camada de Enlace 5a-130
Virtual Circuit Setup (cont.)
Now Switch 1 learns the VCI chosen by Switch 2. It records this and forwards the reply to Host A on VCI 10.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 72 10 1 9
Input OutputPort VC Port VC2 7 1 53 9 1 8
Input OutputPort VC Port VC0 8 1 93 8 1 7
Reply on VC#10
5: Camada de Enlace 5a-131
Virtual Circuit Setup (cont.)
Now Host A knows that it can communicate with Host B, and the VCI it should use (VCI 10).
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 72 10 1 9
Input OutputPort VC Port VC2 7 1 53 9 1 8
Input OutputPort VC Port VC0 8 1 93 8 1 7
Reply on VC#10
5: Camada de Enlace 5a-132
Virtual Circuit Use
Host A can send frames to Host B using only the VCI in the address (doesn’t need to use B’s global address).
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 72 10 1 9
Input OutputPort VC Port VC2 7 1 53 9 1 8
Input OutputPort VC Port VC0 8 1 93 8 1 7
Frame on VC#10
5: Camada de Enlace 5a-133
Virtual Circuit Use (cont.)
Switches forward frames and change the VCI on each link according to their own VC table.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 72 10 1 9
Input OutputPort VC Port VC2 7 1 53 9 1 8
Input OutputPort VC Port VC0 8 1 93 8 1 7
Frame on VC#9 Frame on VC#8
5: Camada de Enlace 5a-134
Virtual Circuit Teardown
When Host A and Host B are done communicating, they exchange “close” messages and send a request to tear down the VCI.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 72 10 1 9
Input OutputPort VC Port VC2 7 1 53 9 1 8
Input OutputPort VC Port VC0 8 1 93 8 1 7
Close VCI 10
5: Camada de Enlace 5a-135
Virtual Circuit Teardown
Switch 1 forwards the tear down request on VCI 9, then deletes the VCI from its table.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 7
Input OutputPort VC Port VC2 7 1 53 9 1 8
Input OutputPort VC Port VC0 8 1 93 8 1 7
Close VCI 9
5: Camada de Enlace 5a-136
Virtual Circuit Teardown
Switch 2 also forwards the tear down request and deletes it from its VCI table.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 7
Input OutputPort VC Port VC2 7 1 5
Input OutputPort VC Port VC0 8 1 93 8 1 7
Close VCI 8
5: Camada de Enlace 5a-137
Virtual Circuit Teardown
Switch 3 forwards the tear down message to Host B, and the VCI is history.
0
13
2Host A
Switch 20
13
2
Switch 1 0
13
2
Switch 3
Host B
Input OutputPort VC Port VC
0 11 3 7
Input OutputPort VC Port VC2 7 1 5
Input OutputPort VC Port VC0 8 1 9
Close VCI 7
5: Camada de Enlace 5a-138
ATM: Asynchronous Transfer Mode
padrão de alta velocidade dos anos 1990’s/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 telefoniaComutação de pacotes (pacotes de comprimento fixos,
denominados de “células”) usando circuitos virtuais
5: Camada de Enlace 5a-139
Evolução das redes de telecomunicações (no início )
Rede Telefônica
(comutada por circuitos)
Rede de Dados
(comutada por pacotes)
Enlace privado de microondasou satélite
5: Camada de Enlace 5a-140
Rede Digital de Serviços Integrados (RDSI-FE)
Rede Telefônica
(comutada por circuitos)
Rede de Dados
(comutada por pacotes)
Enlace privado de microondasou satélite
5: Camada de Enlace 5a-141
Rede Digital de Serviços Integrados de Faixa Larga
ATM
5: Camada de Enlace 5a-142
Arquitetura ATM
camada de adaptação (AAL): 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 (PHY)
5: Camada de Enlace 5a-143
ATM: camada de rede ou de enlace?
Visão: transporte fim-a-fim: “ATM entre mesas de trabalho”ATM é uma tecnologia
de redeRealidade: usada para conectar
roteadores de um backbone IP “IP sobre ATM”ATM como uma camada
de enlace comutada, conectando roteadores IP
redeATM
redeIP
5: Camada de Enlace 5a-144
Camada de Adaptação ATM (AAL – ATM Adaptation Layer)
A Camada de Adaptação ATM (AAL): “adapta” as camada superiores (IP ou aplicações nativas ATM) à camada ATM abaixo
AAL está presente apenas nos sistemas finais, não nos comutadores (switches)
Segmento AAL (campos de cabeçalho/cauda, dados) são fragmentados em múltiplas células ATM analogia: segmento TCP em muitos pacotes IP
5: Camada de Enlace 5a-145
Camada de Adaptação ATM (AAL) [mais]
Diferentes versões de camadas AAL, dependendo da classe de serviço ATM: AAL1: para serviços CBR (Constant Bit Rate), ex. emulação de circuitos AAL2: para serviços VBR (Variable Bit Rate), ex., vídeo MPEG AAL5: para dados (ex, datagramas IP)
PDU AAL
célula ATM
Dados do usuário
5: Camada de Enlace 5a-146
Camada ATMServiço: transporta células através da rede ATM análoga à camada de rede IP serviços muito diferentes aos da camada IP
Arquiteturade Rede
Internet
ATM
ATM
ATM
ATM
Modelo deserviço
melhoresforçoCBR
VBR
ABR
UBR
Banda
nenhuma
taxaconstantetaxagarantidamínimagarantidanenhuma
Perdas
não
sim
sim
não
não
Ordem
não
sim
sim
sim
sim
Tempo
não
sim
sim
não
não
Informa s/congestion.?
não (inferidovia perdas)semcongestion.semcongestion.sim
não
Garantias ?
5: Camada de Enlace 5a-147
Identificadores• VCI (Virtual Channel Identifier)• VPI (Virtual Path Identifier)
5: Camada de Enlace 5a-148
Identificadores
VPI = 11VCI = 86
VPI = 15VCI = 84
VPI = 15VCI = 86
VPI = 17VCI = 95
VPI = 15VCI = 84
VPI = 17VCI = 95
VPI = 12VCI = 86
VPI = 25VCI = 84
VPI = 35VCI = 84
VPI = 25VCI = 86
VPI = 25VCI = 90
VPI = 25VCI = 90
Conexão Entrada SaídaEnlace VPI VCI Enlace VPI VCI
1
2
3
4
5
1
1
1
2
2
15
15
11
17
15
86
84
86
95
84
4
4
4
3
4
25
25
12
25
35
86
84
86
90
84
5: Camada de Enlace 5a-149
Camada ATM: Circuitos Virtuais
Transporte em CVs: células transportadas em CVs da origem ao destino estabelecimento de conexão para cada chamada antes que os
dados possam fluir cada pacote carrega o identificador do CV (e não a ID do destino) cada comutador no caminho entre origem e destino mantém o
“estado” para cada conexão que passa por ele recursos de enlace, comutação (largura de banda, buffers) podem
ser alocados ao CV: para obter desempenho do tipo circuito CVs Permanentes (PVCs)
conexões de longa duração típico: rota “permanente” entre roteadores IP
CVs Comutados (SVC – Switched VC): estabelecimento dinâmico a cada chamada
5: Camada de Enlace 5a-150
CVs ATM
Vantagens da abordagem de CVs do ATM: garantia de desempenho de QoS para a conexão é
mapeada no CV (largura de banda, atraso, variação do atraso – jitter)
Desvantagens da abordagem de CVs do ATM:Suporte ineficiente ao tráfego de datagramas um PVC para cada par origem/destino não é escalável (são
necessárias N2 conexões)SVCs introduzem atraso de estabelecimento de conexões,
overhead de processamento para conexões de curta duração
5: Camada de Enlace 5a-151
Camada ATM: célula ATM
cabeçalho da célula ATM de 5 bytes carga útil (payload) de 48 bytes
Por que?: pequena carga -> curto tempo de criação de célula para voz digitalizada
metade entre 32 e 64 (compromisso!)
Cabeçalho
Formato dacélula
5: Camada de Enlace 5a-152
Formato das CélulasUNI - User Network Interface
NNI - Network Network Interface
5: Camada de Enlace 5a-153
Cabeçalho da célula ATM
VCI: ID do circuito virtualmudará a cada enlace através da rede
PT: Tipo da carga (ex. células RM ou célula de dados) CLP: bit de prioridade de perda de célula (Cell Loss Priority)CLP = 1 indica célula de baixa prioridade, pode
ser descartada em caso de congestionamento HEC: Header Error Checksum – soma de verificação do
cabeçalhoVerificação de redundância cíclica
5: Camada de Enlace 5a-154
Repasse
Comutação baseada em Canais/Circuitos Virtuais Comutação baseada em Caminhos Virtuais
VPI VCI VPI VCI
5: Camada de Enlace 5a-155
Camada Física ATMSubcamada Dependente do Meio Físico (PMD) SONET/SDH: estrutura de quadro de transmissão (como um
container transportando bits); sincronização de bits; particionamento da largura de banda (TDM); diversas velocidades: OC3/STM-1 = 155,52 Mbps;
OC12/STM-4 = 622,08 Mbps; OC48/STM-16 = 2,45 Gbps, OC192/STM-64 = 9,6 Gbps
T1/T3: estrutura de quadro de transmissão (antiga hierarquia de telefonia usada nos EUA): 1,5 Mbps/ 45 Mbps
E1/E3: estrutura de quadro de transmissão (antiga hierarquia de telefonia usada no Brasil): 2 Mbps/ 34 Mbps
5: Camada de Enlace 5a-156
IP-Sobre-ATMApenas IP Clássico 3 “redes” (ex,
segmentos de LAN) endereços MAC (802.3)
e IP
IP sobre ATM substitui uma “rede” (ex.,
segmento LAN) por uma rede ATM
endereços ATM e endereços IP
RedeATM
LANs Ethernet
LANs Ethernet
5: Camada de Enlace 5a-157
IP-Sobre-ATM
AALATMfisfis
EthIP
ATMfis
ATMfis
aplictransporte
IPAALATMfísica
aplictransporte
IPEth
física
5: Camada de Enlace 5a-158
Jornada do Datagrama numa Rede IP-sobre-ATM
no Hospedeiro origem: camada IP faz o mapeamento entre endereços destino IP e ATM
(usando ARP) passa o datagrama para a AAL5 a AAL5 encapsula os dados, segmenta em células e passa para a
camada ATM rede ATM: encaminha a célula através do CV até o destino no Hospedeiro destino:a AAL5 junta as células para montar o datagrama
originalse CRC estiver OK, datagrama é passado para o IP
5: Camada de Enlace 5a-159
IP-Sobre-ATM
Questões: datagramas IP convertidos
em PDUs da AAL5 de endereços IP para
endereços ATM exatamente como
conversão de endereços IP para endereços MAC 802.3!
RedeATM
LANs Ethernet
5: Camada de Enlace 5a-160
IP sobre ATM
5: Camada de Enlace 5a-161
Sub-rede lógica IP clássica com servidor ATMARP
Protocolo ATMARP ATMARP Request
• Enviada do cliente para o servidor para obter o endereço ATM destino. Contém: endereço IP do cliente, endereço ATM, endereço IP do destino
ATMARP Reply• Resposta do servidor para o cliente IP com endereço de
destino ATM.• Contém: endereços IP e ATM do cliente de destino
ComutadorATMCliente IP #1 Cliente IP #2
ServidorATMARP
Endereço IP = 176.13.11.99
Endereço ATM=ZZZ
Endereço IP = 176.13.11.1Endereço ATM=AAA
Endereço IP = 176.13.11.2Endereço ATM=BBB
5: Camada de Enlace 5a-162
Protocolo ATMARP InATMARP Request
• Enviada do servidor para o cliente IP sobre VC para obter o endereço IP
• Contém: endereço ATM do cliente, endereços IP e ATM do servidor ATMARP
InATMARP Reply• Resposta do cliente IP sobre um VC com o endereço IP.• Contém: endereços IP e ATM dos cliente e servidor
ATMARP NAK• Resposta negativa para o pedido ATMARP enviado do
servidor para o cliente IP
5: Camada de Enlace 5a-163
Processo de registro de endereço RFC1577
ComutadorATM
Cliente IP #1 Cliente IP #2
ServidorATMARP
Endereço IP = 176.13.11.99
Endereço ATM=ZZZ
Endereço IP = 176.13.11.1Endereço ATM=AAA
Endereço IP = 176.13.11.2Endereço ATM=BBB
Configurar VC
InATMARP_Req(End. IP do cliente #1???)
InATMARP_Reply(176.13.11.1)
5: Camada de Enlace 5a-164
Processo de resolução de endereço ATMARP RFC1577
ComutadorATM
Cliente IP #1 Cliente IP #2
ServidorATMARP
Endereço IP = 176.13.11.99
Endereço ATM=ZZZ
Endereço IP = 176.13.11.1Endereço ATM=AAA
Endereço IP = 176.13.11.2Endereço ATM=BBB
ATMARP_Req(End. IP do cliente #2, End. ATM?)
ATMARP_Reply(End. ATM = BBB)
Configurar VC e enviar dados
5: Camada de Enlace 5a-165
NHRP - Next Hop Resolution ProtocolTécnica para resolver endereço IP com endereço ATM em
um ambiente de múltiplas sub-redesTerminologia
• Nonbroadcast Multiaccess Network (NBMA)• Não suporta, inerentemente, broadcast ou
multicast• ATM, SMDS (Switched Multimegabit Data
Service)• Next Hop Server (NHS)
• Provê o serviço NHRP para os clientes em uma rede NBMA
• Deve executar em um roteador• Responde a consultas de clientes
• Next Hop Client (NHC)
5: Camada de Enlace 5a-166
NHRP - Next Hop Resolution ProtocolRegistro de cliente NHRP
• Configuração manual• Pacotes de registro NHRP
• {EndATM do NHC, EndIP do NHC, EndIP do NHS}
Subrede X Subrede Y Subrede Z
X.1
Z.3
Pedido de registro NHRP
Resposta de registro NHRP
NHS X NHS Z
Pedido de registro NHRP
Resposta de registro NHRP
5: Camada de Enlace 5a-167
NHRP - Next Hop Resolution ProtocolResolução de endereço
Subrede X Subrede Y Subrede Z
X.1
Z.3
Pedido de resolução NHRP
Resposta de resolução NHRP
NHS X NHS Z
Endereço IP = X.1 Endereço ATM = AAA
Primeiro pacotePrimeiro pacote
Pedido de resolução NHRPResposta de resolução NHRP
Endereço IP = Z.3 Endereço ATM = BBB
Primeiro pacote
Configuração SVC
Dados
5: Camada de Enlace 5a-168
MultiProtocol 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çalhoPPP ou Ethernet
cabeçalhoIP restante do quadro
CabeçalhoMPLS
rótulo (label) Exp S TTL
20 3 1 5
5: Camada de Enlace 5a-169
Roteador com suporte a MPLS
LSR = label-switched router: roteador de comutação de rótulos encaminha os pacotes para a interface de saída baseada apenas
no valor do rótulo (não inspeciona o endereço IP) a tabela de repasse do MPLS é distinta da tabela de repasse
do IP é necessário protocolo de sinalização para criar as rotas (LSPs –
Label Switched Paths)RSVP-TE repasse possível através de caminhos que o IP sozinho não
permitiria (ex., roteamento específico da origem)!! usa MPLS para realizar engenharia de tráfego
deve coexistir com roteadores apenas IP
5: Camada de Enlace 5a-170
Tabelas de repasse MPLS