TERRITÓRIO DE ESPERANÇA: tramas territoriais da agricultura ...
Camada de Ligação de Dados - fenix.tecnico.ulisboa.pt · com 0 < S < 1 (se S>1 a taxa de...
Transcript of Camada de Ligação de Dados - fenix.tecnico.ulisboa.pt · com 0 < S < 1 (se S>1 a taxa de...
1º Semestre 2007/2008 Redes de Computadores 5.1
Camada de Ligação de Dados
• Serviços• Detecção e correcção de erros• Protocolos de Acesso Múltiplo• Endereçamento em LANs• “Hubs” e Pontes de interligação• Tecnologias da camada de ligação de dados
– Ethernet– Anel com testemunho– Redes locais sem fios– PPP– ATM
1º Semestre 2007/2008 Redes de Computadores 5.2
Camada de Ligação de Dados
• Os canais de comunicação que interligam dois nós adjacentes serão designados por ligações ou conexões e podem ser de vários tipos
– Cabos eléctricos ou ópticos ponto a ponto
– Canais rádio ponto a ponto
– Canais partilhados com acesso múltiplo (LAN’s)
– …
• Os pacotes do nível de ligação de dados designam-se por tramas. As tramas são usadas para transportar datagramas de um nó para o nó adjacente.
“link”
1º Semestre 2007/2008 Redes de Computadores 5.3
Serviços da camada de ligação de dados
• Construção e delimitação de tramas:– Encapsulamento de datagramas adicionando cabeçalho e terminação
• Acesso ao canal (meio)– Definição dos procedimentos no caso de meio partilhado
– Gestão de identificadores de origem e destino - endereços “MAC”
• Transmissão fiável entre nós adjacentes– Dependendo do tipo de ligação pode ser necessário usar técnicas específicas de
transmissão fiável
1º Semestre 2007/2008 Redes de Computadores 5.4
Serviços da camada de ligação de dados (cont.)
• Controlo de fluxo
• Detecção de erros– Tratamento de erros causados por ruído no canal de comunicação.
• Pedido de repetição de tramas
• Descarte da trama
• Correcção de erros
• Serviço “half-duplex” ou “full-duplex”
1º Semestre 2007/2008 Redes de Computadores 5.5
Realização
• Camada de ligação de dados muitas vezes realizada num adaptador autónomo (“Network Interface Card” – NIC)
– Placa Ethernet, PCMCI ou 802.11
trama
datagrama
trama
adaptador adaptador
Protocolo de nível 2
1º Semestre 2007/2008 Redes de Computadores 5.6
Camada de Ligação de Dados
• Serviços• Detecção e correcção de erros• Protocolos de Acesso Múltiplo• Endereçamento em LANs• “Hubs” e Pontes de interligação• Tecnologias da camada de ligação de dados
– Ethernet– Anel com testemunho– Redes locais sem fios– PPP– ATM
1º Semestre 2007/2008 Redes de Computadores 5.7
Detecção de erros
• Introdução de bits calculados em função dos bits de dados – redundância
• Principais técnicas:- Paridade (uni- ou multidimensional)- Soma de verificação (“checksum”)- Código cíclico de verificação (“Cyclic Redundancy Code” – CRC)
• Os erros só são detectados se no receptor, os bits redundantes calculados, forem diferentes dos inscritos na trama.
Dados Bits Redundantes
Canal com ruído
“Dados” “Bits Redundantes”
1º Semestre 2007/2008 Redes de Computadores 5.8
Paridade
• Bit de paridade
• Detecta um número ímpar de bits errados
• Paridade bidimensional– horizontal
– vertical
• Um erro simples pode ser corrigido
0111000110101011 1 10101 1
11110 0
01110 1
00101 0
1º Semestre 2007/2008 Redes de Computadores 5.9
Código Cíclico de Verificação - CRC
• Mensagem de m bits é interpretada como sendo um polinómio M(x) de grau inferior a m
• Polinómio gerador de grau r
• Cálculo do CRC– Dividendo é xr M(x)
– Divisor é G(x)
– Divisão módulo 2 produz resto R(x), de grau inferior a r
– Mensagem transmitida é T(x) = xr M(x) + R(x)
– Notar que T(x) é divisível por G(x)
• Detecção de erros– Se a mensagem recebida for divisível por G(x) então não se detectam erros
1º Semestre 2007/2008 Redes de Computadores 5.10
CRC - Exemplo
M(x) = x7 + x4 + x3 + x1
G(x) = x3 + x2 + 1
x3 M(x) = x10 + x7 + x6 + x4
R(x) = x2 + 1
x3 M(x) + R(x) = x10 + x7 + x6 + x4 + x2 + 1
1101
10011010
10011010000
101
10011010101
10011010000 11011101 111110011001110110001101
10111101
1100110100100000
0100000010001101101
1º Semestre 2007/2008 Redes de Computadores 5.11
CRC – Propriedades
• Mensagem recebida é T(x) + E(x), em que E(x) é o padrão de erros
• Padrão de erros é detectado se e só se E(x) não é divisível por G(x)
• Erros simples são detectados, se G(x) tiver mais do que um termo
• Número ímpar de erros são detectados, se G(x) tiver x + 1 como factor
• Rajadas de erros de comprimento inferior ou igual a r são detectadas, se G(x) tiver grau r e incluir o termo 1
• Rajadas de erros de comprimento r + 1 só não são detectadas com probabilidade 1 / 2 r – 1, se G(x) tiver grau r e incluir o termo 1
1º Semestre 2007/2008 Redes de Computadores 5.12
CRC – Polinómios utilizados
G(x) = x8 + x2 + x1+ 1G(x) = x10 + x9 + x5+ x4 +x1 + 1G(x) = x12 + x11 + x3 + x2 + 1G(x) = x16 + x12 + x5+ 1G(x) = x32 + x26 + x23 + x22 + x16 + x12 + x11
+ x10 + x8 + x7 + x5 + x4 + x2 + x1+ 1
CRC-8CRC-10CRC-12CRC-CCITTCRC-32
1º Semestre 2007/2008 Redes de Computadores 5.13
CRC - Realização
CRC é fácil de realizar em “hardware” recorrendo a registos de deslocamento
dadosG(x) = x3 + x2 + 1
1xx2
XOR XOR
FFFF FF
1º Semestre 2007/2008 Redes de Computadores 5.14
Camada de Ligação de Dados
• Serviços• Detecção e correcção de erros• Protocolos de Acesso Múltiplo• Endereçamento em LANs• “Hubs” e Pontes de interligação• Tecnologias da camada de ligação de dados
– Ethernet– Anel com testemunho– Redes locais sem fios– PPP– ATM
1º Semestre 2007/2008 Redes de Computadores 5.15
Acesso múltiplo
O problema do acesso múltiplo:
Controlo da comunicação em meios partilhados simultaneamente por mais do que duas estações
Objectivos:
Maximizar o número de mensagens transferidas com sucesso por unidade de tempo (débito);
Minimizar o tempo médio de espera para obter o acesso ao meio.
Objectivos:
Maximizar o número de mensagens transferidas com sucesso por unidade de tempo (débito);
Minimizar o tempo médio de espera para obter o acesso ao meio.
1º Semestre 2007/2008 Redes de Computadores 5.16
Acesso múltiplo
Soluções simples:
• Técnica de atribuição fixa de recursos, por exemplo, TDMA, FDMA, CDMA.
• Técnica de acesso centralizado, em que um moderador interroga cada estação participante àcerca da intenção de transmitir.
Solução alternativa:• Técnica de acesso distribuído – onde todas as estações têm funções idênticas no
processo de comunicação.
Problemas:• Quando existem vários emissores à espera de vez, qual o próximo a transmitir ?
• Como se evitam as colisões (transmissão simultânea) ?
1º Semestre 2007/2008 Redes de Computadores 5.17
Acesso múltiplo
Contexto dos esquemas de acesso múltiplo:
– Redes Locais com Fios
– Redes Locais sem Fios
– Redes de pacotes com acesso rádio
– Telefonia celular
– Comunicações via satélite
1º Semestre 2007/2008 Redes de Computadores 5.18
Acesso múltiplo: métricas de desempenho
• Débito normalizado (Normalized throughput ou goodput )Ritmo utilizado para transferir informação útil.
Exclui o overhead dos protocolos, colisões e retransmissões.
Ritmo utilizado para transferir informação útil.
Exclui o overhead dos protocolos, colisões e retransmissões.
• Atraso médio (Average Delay)Tempo médio que um pacote tem de esperar antes de ser transmitido com sucesso (incluindo o tempo de transmissão)
Tempo médio que um pacote tem de esperar antes de ser transmitido com sucesso (incluindo o tempo de transmissão)
1º Semestre 2007/2008 Redes de Computadores 5.19
Acesso múltiplo: métricas de desempenho
Justiça no acesso (Fairness)
Todas as estações têm de ter igual oportunidade de transmissão num intervalo de tempo finito
Todas as estações têm de ter igual oportunidade de transmissão num intervalo de tempo finito
Estabilidade (Stability)Num meio muito sobrecarregado, as colisões vão originar retransmissões de pacotes que podem novamente colidir, gerando novas retransmissões (o débito normalizado diminui drasticamente);
Um mecanismo de acesso ao meio deve controlar estas situações, garantindo estabilidade mesmo em períodos de carga elevada.
Num meio muito sobrecarregado, as colisões vão originar retransmissões de pacotes que podem novamente colidir, gerando novas retransmissões (o débito normalizado diminui drasticamente);
Um mecanismo de acesso ao meio deve controlar estas situações, garantindo estabilidade mesmo em períodos de carga elevada.
1º Semestre 2007/2008 Redes de Computadores 5.20
Acesso múltiplo: técnicas de acesso distribuído
Algumas das técnicas mais conhecidas:
ALOHA (puro e sincronizado)
Carrier Sense Multiple Access (CSMA)
Polling distribuído
Probing distribuído
Passagem de testemunho (Token Passing)
1º Semestre 2007/2008 Redes de Computadores 5.21
Acesso múltiplo: ALOHA
ALOHA - Características
1970 – Norman Abramson, Universidade do Hawaii
• O método mais simples de acesso ao meio partilhado.
• As estações transmitemtransmitem sempresempre que tiverem informação para enviar.• Quando duas ou mais estações transmitem simultaneamente – i.e. ocorre colisão –nenhum pactote/trama é bem recebido .• Em caso de colisão a estação emissora espera um tempo aleatório antes de enviar novamente a informação.
1º Semestre 2007/2008 Redes de Computadores 5.22
Acesso múltiplo: ALOHA puro
Colisões
Neste esquema (Aloha Puro) os instantes de transmissão são arbitrários.
A
B
C
D
Quando há colisão todo o pacote éperdido
Mesmo em situações que afectem apenas o úúltimoltimo bit dum pacote e o primeiroprimeiro do outro
1º Semestre 2007/2008 Redes de Computadores 5.23
Acesso múltiplo: ALOHA puro
Período de vulnerabilidade
Desde que se inicia a transmissão, quanto tempo se espera até detectar colisões ?
T – tempo de transmissão duma trama
t0 – Início da transmissão da trama
t0 + T – Colisão com o início da trama I
t0 + 2T –Colisão com o fim da trama
t0 t0+T t0+2T t0+3T
T
Período de vulnerabilidade
1º Semestre 2007/2008 Redes de Computadores 5.24
Acesso múltiplo: ALOHA puro
Análise simples de desempenho
Hipóteses (simplificativas) :> geração de tramas novas de acordo com processo de
Poisson com média S tramas/tempo_de_trama;
> modelo de população infinita de utilizadores (estações);com 0 < S < 1 (se S>1 a taxa de geração de tramas seria superior à taxa que o canal poderia escoar);
> tentativas de transmissão (incluindo retransmissões):processo de Poisson, com média G tramas/tempo_de_trama).
1º Semestre 2007/2008 Redes de Computadores 5.25
Acesso múltiplo: ALOHA puro
Análise simples de desempenho (contin.)
> Período vulnerável: 2 x Tempo_de_trama> Débito normalizado:
S = G . P0
com S=throughput; G=tentativas de transmissão; P0 = probabilidade de não haver colisão;
> Probabilidade de serem geradas k tramas durante o período vulnerável (Poisson com parâmetro 2G):
Prob [k] = (2G)k e-2G / k!> Tem-se:
P0 = e-2G
S = G e-2G Smax = 1/(2e) quando G= ½
1º Semestre 2007/2008 Redes de Computadores 5.26
Acesso múltiplo: ALOHA sincronizado
S-ALOHA ou Synchronized ALOHA (variante do anterior )
Objectivo: aumentar a eficiência da rede (relativamente ao esquema ALOHA puro)
Estratégia: Reduzir o período de vulnerabilidade
Método:Dividir o tempo em slots de dimensão T
Quando uma estação pretende enviar um pacote espera o próximo slotPressupostos de implementação:
Sincronização entre as estaçõesExiste uma estação que emite um sinal de relógio
1º Semestre 2007/2008 Redes de Computadores 5.27
Demasiado grande?
Acesso múltiplo: ALOHA puro e sincronizado
Resumo de operações :
BackOff++
Colisão
EsperaBackOff
Desiste
Sim
Não
Não
ALHOA
FimEnviaEspera
Slot Time
Sim
S-ALHOA
Espera RTT
1º Semestre 2007/2008 Redes de Computadores 5.28
Acesso múltiplo: ALOHA sincronizado
Período de vulnerabilidade
A Trama I é atrasada para o próximo slot
Só há colisões para tramas que sejam transmitidas no mesmo slot
Trama I
t0 t0+T t0+2T t0+3T
T
Período de vulnerabilidade
1º Semestre 2007/2008 Redes de Computadores 5.29
Acesso múltiplo: ALOHA sincronizado
Análise simples de desempenho
Hipóteses (simplificativas) :> tal como anteriormente, geração de tramas novas é feita de acordo com
um processo de Poisson com média S tramas/tempo_de_trama;
> modelo de população infinita de utilizadores (estações), com 0 < S < 1 (se S>1 a taxa de geração de tramas seria superior à taxa que o canal poderia escoar)
> tentativas de transmissão (incluindo retransmissões): também um processo de Poisson, com média G (tramas/tempo_de_trama)
1º Semestre 2007/2008 Redes de Computadores 5.30
Acesso múltiplo: ALOHA sincronizado
Análise simples de desempenho (continuação)
> Agora tem-se um período vulnerável igual a Tempo_de_trama> Débito normalizado:
S = G . P0
com S=throughput; G=tentativas de transmissão; P0 = probabilidade de não haver colisão;
> Probabilidade de serem geradas k tramas durante o período vulnerável:
Prob [k] = (G)k e-G / k!(considerando um intervalo equivalente a Tempo_de_trama)
1º Semestre 2007/2008 Redes de Computadores 5.31
Acesso múltiplo: ALOHA sincronizado
Análise simples de desempenho (continuação)
> Portanto
P0 = e-G
S = G e-G Smax = 1/e quando G = 1
Isto é, quando G = 1 (a melhor situação), 37% dos slots estão livres, 37% são sucessos (=1/e) e 26% colisões.
1º Semestre 2007/2008 Redes de Computadores 5.32
Acesso múltiplo: ALOHA sincronizado
Comparação:Comparação:
1º Semestre 2007/2008 Redes de Computadores 5.33
Acesso múltiplo: Carrier Sense Multiple Access (CSMA)
A característica básica introduzida no esquema CSMA consiste nadetecção de portadora (Carrier Sense) - cada estação tem a possibilidade de detectar actividade no meio
• Factor importante: o tempo que uma mensagem demora a ser detectada na estação mais remota
A característica básica introduzida no esquema CSMA consiste nadetecção de portadora (Carrier Sense) - cada estação tem a possibilidade de detectar actividade no meio
• Factor importante: o tempo que uma mensagem demora a ser detectada na estação mais remota
1º Semestre 2007/2008 Redes de Computadores 5.34
Acesso múltiplo: CSMA
Variantes básicas (para efeitos de início de transmissão):
Análise do estado do meioNão persistente – amostra o meio de transmissão em intervalos de tempo aleatórios;Persistente – está continuamente a amostrar o meio;
Minimização de colisões e controlo da estabilidade do sistena (especialmente importante para o esquema persistente):
Algoritmo Binary Exponential Backoff
1º Semestre 2007/2008 Redes de Computadores 5.35
Acesso múltiplo: CSMA
CSMA 1-persistente (designação abreviada: CSMA P1)
Escuta Livre Envia
Ocupado
Procedimento : • Se o meio estiver ocupadomeio estiver ocupado, a estação fica fica continuamente a avaliar o continuamente a avaliar o estado do meio.
• Caso esteja livre, transmite de imediato
Problema: Se existirem várias estações à espera para transmitir, vão iniciar a transmissiniciar a transmissãão em simulto em simultââneoneo
1º Semestre 2007/2008 Redes de Computadores 5.36
Acesso múltiplo: CSMA
CSMA – Não persistente (abreviado: CSMA NP)
Escuta Livre Envia
Ocupado
Espera TAleat
Procedimento:
• Se o meio estiver ocupadomeio estiver ocupado, a estação espera um espera um tempo aleattempo aleatóóriorio antes de voltar a verificar o estado de meio (i.e., antes de escutar de novo) .
• Caso esteja livre, transmite de imediato.
Se existirem várias estações à espera de transmitir, estas podem não detectar o meio livre ao mesmo tempo
5.37
Acesso múltiplo: CSMA
CSMA p-persistente (Pp)
Escuta Livre Envia
Espera1 slot
Ocupado
p
1-p
Procedimento:
• Se o meio estiver ocupadomeio estiver ocupado, a estação espera um tempo fixoespera um tempo fixo antes de voltar a verificar o estado de meio.• Caso esteja livre:
• envia com uma probabilidade p• espera 1 slot com uma probabilidade 1- p
Problema: Qual o valor óptimo de p ? Compromisso entre tempo de espera e desempenho, para situações de carga elevada
1º Semestre 2007/2008 Redes de Computadores 5.38
Acesso múltiplo: CSMA
Tratamento de colisões
Variantes/ExemplosCSMA/CA Collision Avoidance
A estação só transmite quando recebe a confirmação (pacote CTS) da recepção correcta do pacote RTS; depois disso transmite os dados (esquema normalizado: IEEE 802.11)
CSMA/CD Collision DetectionTransmite sempre, detecta colisões e tem mecanismos para as resolver (esquema
usado na Ethernet: IEEE 802.3)
1º Semestre 2007/2008 Redes de Computadores 5.39
Acesso múltiplo: CSMA
CSMA/CD - Collision DetectionO algoritmo opera em três “estados”: contenção, transmissão e inactivo
Acesso múltiplo: CSMA
Um modelo simplificado para a análise de desempenho (idêntico a um dos modelos anteriores no contexto de ALOHA sincronizado):
> assume-se que k estações estão sempre prontas para transmitir, num dado slot de duração 2τ, com probabilidade p (em vez de se considerar binary exponential backoff, para simplificar)
==> probabilidade, A, de que uma estação “capture” o canal: A = k.p (1-p)k-1
O valor de A é máximo quando p = 1/k e vale A=1/e quando k →∞
==> probabilidade de que um intervalo de contenção tenha exactamente j slots: A(1-A)j-1
==> número médio de slots por cada período de contenção : 1/A
==> Utilização do canal:
U = (F/B) / (F/B + 2τ/A)onde F = tamanho das tramas e B = capacidade do canal
1º Semestre 2007/2008 Redes de Computadores 5.41
Acesso múltiplo
•Comparação de desempenho (ALOHA e variantes CSMA) :
1º Semestre 2007/2008 Redes de Computadores 5.42
Acesso múltiplo: Protocolos de atribuição dinâmica
Exemplo de protocolo: Anel de testemunho (testemunho circula entre os nós)
• Nó detém o testemunho– Tem acesso exclusivo ao canal, enquanto detém o testemunho
– Pode transmitir um número máximo, pré-acordado, de tramas ou então deter o testemunho durante um intervalo máximo pré-acordado.
– Depois de usar o canal tem que passar o testemunho ao próximo nó (i.e. repor o testemunho no anel)
• Protocolos de atribuição dinâmica vs. protocolos de acesso aleatório– Protocolos de atribuição dinâmica permitem uma melhor utilização do canal
(principalmente em períodos de carga elevada)
– Protocolos de acesso aleatório impõem atrasos menores em cargas baixas
– Protocolos de atribuição dinâmica requerem gestão do testemunho
– Protocolos de acesso aleatório têm que ser controlados contra comportamentos instáveis
1º Semestre 2007/2008 Redes de Computadores 5.43
Camada de Ligação de Dados
• Serviços
• Detecção e correcção de erros
• Protocolos de Acesso Múltiplo
• Endereçamento em LANs
• “Hubs” e Pontes de interligação
• Tecnologias da camada de ligação de dados– Ethernet
– Anel com testemunho
– Redes locais sem fios
– PPP
– ATM
1º Semestre 2007/2008 Redes de Computadores 5.44
Endereçamento em LANs
• Endereços IP, camada de rede– Servem para expedir um datagrama com destino numa qualquer rede IP– Hierárquicos– Não são portáveis– 32 bits
• Endereços físicos (ou endereços MAC), camada da ligação de dados
– Servem para expedir uma trama com destino na mesma rede IP– Horizontais– Portáveis– 48 bits
1º Semestre 2007/2008 Redes de Computadores 5.45
Expedição de tramas
• A consulta uma tabela para fazer a tradução (Endereço IP, Endereço MAC)
• A encapsula o datagrama numa trama MAC
223.1.1.1
223.1.1.2
223.1.1.3
223.1.1.4
A
B
IP origem IP destino
MAC destino
MAC origem
1A-23-F9-CD-06-9B
5C-66-AB 90-75-B1
1A-23-F9-CD-06-9B
5C-66-AB-90-75-B1
Endereço IP Endereço MAC Tempo
223.1.1.3 1A-23-F9-CD-06-9B 20:15
223.1.1.4 E6-E9-00-17-BB-4B 22:32
E6-E9-00-17-BB-4B
1º Semestre 2007/2008 Redes de Computadores 5.46
Address Resolution Protocol (ARP)
• A sabe o endereço IP de B e pretende saber o seu endereço MAC
• A difunde uma trama ARP de interrogação contendo o endereço IP de B
– Trama é recebida por todas as interfaces na LAN
• B reconhece o seu endereço IP na trama ARP de interrogação e responde a A com uma trama ARP de resposta que contem o seu endereço MAC
– B fica a saber o par (Endereço IP de A, Endereço MAC de A)
• A recebe a trama ARP de resposta e guarda em memória o par (Endereço IP de B, Endereço MAC de B)
• Os pares (Endereço IP, Endereço MAC) são datados
1º Semestre 2007/2008 Redes de Computadores 5.47
Diagrama temporal
A
E
R
A R EARP
interrogação
ARP interrogação
ARP resposta
ARP resposta
Trama de dados
Trama de dados
1º Semestre 2007/2008 Redes de Computadores 5.48
Camada de Ligação de Dados
• Serviços• Detecção e correcção de erros• Protocolos de Acesso Múltiplo• Endereçamento em LANs• “Hubs” e Pontes de interligação• Tecnologias da camada de ligação de dados
– Ethernet– Anel com testemunho– Redes locais sem fios– PPP– ATM
1º Semestre 2007/2008 Redes de Computadores 5.49
Exemplos:• Rede Local (LAN)
– 10Base2 (segmento de cabo coaxial, 10 Mbps – todas as tramas enviadas são recebidas em todas as interfaces)
1º Semestre 2007/2008 Redes de Computadores 5.50
Exemplos• Rede Local (LAN)
– 10BaseT
1º Semestre 2007/2008 Redes de Computadores 5.51
Interligação de redes locais - Pontes (“Bridges”)
• Dispositivos do nível de ligação de dados: operam em tramas examinando os cabeçalhos e expedindo-as de acordo com o seu destino
• Uma Ponte (“Bridge”) isola domínios de colisão uma vez que dispõe de memória para armazenar tramas
• Pode interligar vários tipos de LAN’s
• A existência de uma Ponte numa LAN não envolve nenhuma modificação nos adaptadores dos computadores da LAN
1º Semestre 2007/2008 Redes de Computadores 5.52
Pontes: filtragem de tramas
• As pontes aprendem que computadores estão ligados a cada uma das suas interfaces (construção e actualização de tabelas de filtragem)– quando uma trama é recebida a ponte “aprende” a posição do emissor (endereço
origem da trama)
– memoriza a posição numa tabela de filtragem
• Entradas da tabela de filtragem: – Colecção de 3 valores: endereço LAN, interface, rótulo temporal
– Cada entrada tem um tempo de vida pré-determinado (e.g., 60 m)
• Procedimento de filtragem:if destination is on LAN on which frame was received
then drop the frame
else { lookup filtering table
if entry found for destination
then forward the frame on interface indicated;
else flood; /* forward on all but the interface on which the frame arrived*/
}
1º Semestre 2007/2008 Redes de Computadores 5.53
Pontes: exemplo de aprendizagem C envia uma trama a D e D responde com uma trama para C
• C envia trama e a ponte não tem informação sobre D: a ponte usa a técnica de inundação nas LAN’s que lhe estão ligadas
– a ponte “aprende” que C está no porto 1
– a trama replicada é ignorada na LAN associada ao porto 3
– a trama é recebida em D
1º Semestre 2007/2008 Redes de Computadores 5.54
Pontes: exemplo de aprendizagem
• D responde a C – a ponte “aprende” que D está na LAN associada à interface 2
– a ponte “sabe” que C está na LAN associada à interface 1 e envia a trama apenas para essa interface.
C 1
1º Semestre 2007/2008 Redes de Computadores 5.55
Pontes: árvore geradora (“spanning tree”)• Por uma questão de fiabilidade do sistema é desejável que existam
vários caminhos entre origem e destino
• Com múltiplos caminhos entre origem e destino surge a possibilidade indesejável de que as tramas circulem indefinidamente no sistema
• Solução: organização das pontes em árvore geradora desactivando algumas das suas interfaces
Disabled
1º Semestre 2007/2008 Redes de Computadores 5.56
Árvore geradora
• Hipóteses:– Cada ponte tem um identificador único
– cada porto de uma ponte tem um identificador único
– em cada rede existe um endereço que permite comunicar com todas as pontes ligadas a essa rede
• Definições– Ponte raíz: ponte com o menor valor de identificador
– Custo de um caminho: soma dos custos associados à transmissão de uma trama através de cada porto das pontes nesse caminho
– Porto raíz de uma ponte: porto através do qual o custo do caminho à ponte raíz émenor; em igualdade de custos escolhe-se o porto de menor valor de identificador
– Ponte designada e porto designado: em cada LAN uma ponte é escolhida como a ponte designada e o porto correspondente é o porto designado; a ponte designada éa que proporciona o menor custo até à raíz; em igualdade de custos é escolhida a ponte com menor valor de identificador
1º Semestre 2007/2008 Redes de Computadores 5.57
Árvore geradora
• Construção da árvore geradora– Determinação da ponte raíz
– Determinação do porto raíz em cada ponte
– Determinação do porto e ponte designados em cada LAN
• Algoritmo (Radia Perlman, 1985)– O algoritmo é distribuído e baseia-se na troca de BPDU’s (“Bridge Protocol
Data Units”) entre as pontes; cada BPDU tem a seguinte informação• Identificador da ponte e porto do originador
• Custo do caminho para a ponte raíz do conhecimento actual do originador
• Identificador da ponte raíz do conhecimento actual do originador
– Inicialmente todas as pontes se consideram raíz e difundem essa informação em cada LAN a que estão ligadas
1º Semestre 2007/2008 Redes de Computadores 5.58
Exemplo de construção de árvore geradoraLAN 2
LAN 5
LAN 1
LAN 3 LAN 4
C=10
C=10
B1
C=10
C=10
B3
C=5
C=5
B4
C=5
C=5
B5
C=10
C=
5 B2
C=
5
P1
P2
P2P2
P2
P3
P1
P1
P1P1
P2
BPDU’s na LAN 5(admitindo funcionamento sincronizado)
1. B3-P2; 0; B3B4-P2; 0; B4B5-P1; 0; B5
2. B3-P2; 10; B1B4-P2; 5; B1B5-P1; 5; B1
3. …
B4 é a ponte designada para a LAN 5B3-P2 e B5-P1 ficam bloqueados.
1º Semestre 2007/2008 Redes de Computadores 5.59
Exemplo de árvore geradoraLAN 2
LAN 5
LAN 1
LAN 3 LAN 4
C=10
C=10
B1
C=10
C=10
B3
C=5
C=5
B4
C=5
C=5
B5
C=10
C=
5 B2
C=
5
P1
P2
P2
P2
P3
P1P1
P2
R
D
D
D D
D
R
RR P1
B
B
1º Semestre 2007/2008 Redes de Computadores 5.60
“Bridges” versus “Routers”• Ambos são dispositivos que funcionam no modo “store-and-forward”
– “routers”: dispositivos que funcionam ao nível da camada de rede
– “bridges”: dispositivos que funcionam ao nível da camada de ligação de dados
• “routers” são responsáveis pela construção e manutenção de tabelas de expedição e executam protocolos/algoritmos de encaminhamento
• “bridges” são responsáveis pela construção e manutenção de tabelas de filtragem e executam algoritmos de árvore geradora e de aprendizagem
1º Semestre 2007/2008 Redes de Computadores 5.61
“Bridges” versus “Routers”
“Bridges”
+ Executam operações simples usando pequena largura de banda
- Utilização restrita a algumas topologias: exclusão de redes com caminhos fechados
- Não oferecem, em geral, mecanismos de protecção ao mau/mal-intencionado funcionamento das máquinas interligadas (e.g., emissão contínua de tramas de difusão por parte de uma fonte)
“Routers”
+ Suportam topologias arbitrárias (a existência de caminhos fechados étido em conta limitando o número de saltos de um datagrama)
+ Podem fornecer serviços de protecção (“firewall”)
- Exigem a configuração de endereços (não são “plug and play”)
- Exigem, em geral, maior largura de banda para a troca de mensagens entre si
As “bridges” são adequadas em redes pequenas (algumas centenas de máquinas); os “routers” são usados em redes grandes (milhares de máquinas)
Vantagens (+) e Desvantagens (-)
1º Semestre 2007/2008 Redes de Computadores 5.62
Camada de Ligação de Dados
• Serviços• Detecção e correcção de erros• Protocolos de Acesso Múltiplo• Endereçamento em LANs• “Hubs” e Pontes de interligação• Tecnologias da camada de ligação de dados
– Ethernet– Anel com testemunho– Redes locais sem fios– PPP– ATM
1º Semestre 2007/2008 Redes de Computadores 5.63
Ethernet: formato das tramas
PreambuloEnd.
destinoEnd.
origemTipo Dados CRC
8 6 6 2 46-1500 4
• Preambulo: 7 bytes da forma 10101010, seguidos do byte 10101011• Endereços: origem/destino• Tipo: chave de desmuliplexagem• Dados: MTU entre 46 e 1500 bytes; enchimento• CRC: x32+ x26+ x23+ x22+ x16+ x12+ x11+ x10+ x8+ x7+ x5+ x4+ x2+ x+1
1º Semestre 2007/2008 Redes de Computadores 5.64
Ethernet: acesso ao meio
• Canal livre durante 96 bits– Transmite trama
• Detecta colisão– Aborta transmissão
– Reforça colisão (48-bit jam signal)
– Espera k x 512 bits
• Recuo binário exponencial truncado (binary exponential backoff)– Na n-ésima colisão, o nó escolhe aleatoriamente para k um número natural entre 0
e 2min(n, 10) –1
1º Semestre 2007/2008 Redes de Computadores 5.65
Ethernet: tecnologias
• 10BASE2 (802.3a-1985)– Cabo coaxial fino– Distância máxima sem repetidores é 185 m
• 10BASE-T (802.3i-1990), 100BASE-T (802.3u-1995)– Pares entrelaçados– Nós estão fisicamente ligados a hubs – Distância máxima do nó ao hub é 100 m (i.e. distância máxima entre dois nós é
200 m)
• 100BASE-FX – Como 100BASE-TX mas os cabos são em fibra óptica
• 1000BASE-T (802.3ab-1999)– Usada sobretudo em modo full-duplex
• A distância máxima de um domínio de colisão é de 256 bits para o funcionamento correcto do CSMA/CD
1º Semestre 2007/2008 Redes de Computadores 5.66
Anel de testemunho: formato das tramas
End. destino
End. origem
CRC
6 6 4111 1
FCACSD EDFSDados
111
EDACSD
1
SD e ED delimitam a trama
AC (Access Control)
ontem o bit de testemunho
its de reserva, prioridade e monitorização
FC (Frame Control)
FS (Frame Status)
ndica, por exemplo, se o destino recebeu a trama
1º Semestre 2007/2008 Redes de Computadores 5.67
Anel de testemunho: acesso ao meio
• Testemunho tem que caber no anel
• Nó pode enviar trama quando reconhece o testemunho
• Nó que envia trama retira o testemunho do anel
• Nó que envia a trama repõe o testemunho
– Após envio
– Após recepção
1º Semestre 2007/2008 Redes de Computadores 5.68
Redes sem fios IEEE 802.11 (aka Wi-Fi)
• IEEE 802.11b– 2.4 GHz
– Até 11 Mbps
– DSSS
• IEEE 802.11g– 2.4 GHz
– Até 54 Mbps
– DSSS/OFDM
• IEEE 802.11a– 5 Ghz
– Até 54 Mbps
– OFDM
Todos usam CSMA/CA e a mesma estrutura de trama
1º Semestre 2007/2008 Redes de Computadores 5.69
Arquitecturas
Rede ad hocRede estruturada
BSS=Basic Service Set; AP=Access Point
S/ ligação com o “mundo exterior”. Exemplos: reuniões, conferências, etc.
1º Semestre 2007/2008 Redes de Computadores 5.70
IEEE 802.11: CSMA/CA
• Canal livre durante DIFS– Transmite trama
– Espera pelo ACK
• Canal ocupado– Escolhe aleatoriamente um período de
tempo
– Transmite depois do canal ter estado livre durante esse período de tempo
• Não recepção do ACK– Recuo binário exponencial truncado
Este protocolo utikliza ACKs!
( DIFS=Distributed Inter-Frame Space
SIFS=Short Inter-Frame Space )
A B
ACK
DIFS
SIFS
1º Semestre 2007/2008 Redes de Computadores 5.71
Nós escondidos
• Nós A e C não se conseguem escutar mutuamente
• B está ao alcance de A e C
• Transmissão de A não inibe transmissão de C e vice-versa
• CSMA degenera em ALOHA puro!
obstáculo
Colisão
A
B
C
D
1º Semestre 2007/2008 Redes de Computadores 5.72
RTS-CTS (esquema opcional que pode ser usado pelas estações, típicamente para envio de tramas longas)
• Mini-trama Request-to-Send– Contém tamanho da trama de
dados – Inibe nós na vizinhança da origem
• Mini-trama Clear-to-Send– Contém tamanho da trama de
dados– Inibe nós na vizinhança do destino
• Trama de dados • ACK
obstáculo
A
B
C
D
RTS
CTSTrama de dados
ACK
1º Semestre 2007/2008 Redes de Computadores 5.73
Point to Point Protocol (PPP) (outros protocolos, e.g. HDLC)
• Ligação entre dois nós– Ex: ligação ao ISP via interface série e modem, ou sobre ISDN
• Formatação das tramas– Delimitação de tramas e justificação da informação
– Detecção de erros
• Protocolo de controlo da ligação– Manutenção ligação
– Negociação de parâmetros
• Protocolos de controlo da camada de rede– Várias camadas de rede são suportadas
– Negociação de parâmetros, ex: Endereço IP,
1º Semestre 2007/2008 Redes de Computadores 5.74
PPP: formato das tramas
• Delimitador: 01111110
• Endereço: 11111111 (única possibilidade !)
• Controlo: 00000011 (única possibilidade !)
• Protocolo: chave de desmultiplexagem, – Ex: PPP-LCP, IP, IPCP
• FCS: Sequência de verificação (como no protocolo HDLC)
Del. Del.End. Proto.Cont. FCSDados
2 ou 41 ou 2
1º Semestre 2007/2008 Redes de Computadores 5.75
Justificação de byte (byte stuffing)
• Dados podem conter o padrão do delimitador, 01111110
• Nos dados, o padrão do delimitador deve ser precedido por um byte de escape, 01111101
• Nos dados, o padrão do byte de escape também deve ser precedido por outro byte de escape
01011101 00101011 01111110 11010101 01111101 00001000
01011101 00101011 01111101 01111110 11010101 01111101 01111101 00001000
1º Semestre 2007/2008 Redes de Computadores 5.76
Protocolo de controlo PPP (Link-control Protocol - LCP)
Antes de iniciar a troca de dados os extremos da ligação PPP têm de trocar informação de controlo:
• configuração da ligação (e.g., comprimento máximo da trama, autenticação, protocolo nº C021)
• configuração da camada de rede– para o protocolo IP: suporte do protocolo
IPCP (protocolo nº 8021) para configurar/aprender endereços IP
1º Semestre 2007/2008 Redes de Computadores 5.77
Asynchronous Transfer Mode (ATM)
• Objectivo inicial– Arquitectura para comunicação entre aplicações– Suporte a aplicações com qualidade de serviço– Tecnologia ATM até à estação de trabalho
• Realidade actual– IP sobre ATM– ATM é visto como uma camada da ligação de dados – ATM é usado sobretudo em redes dorsais (backbone links)
• Características– Tecnologia de circuitos virtuais – Pacotes de tamanho fixo, denominados células– Não há controlo de erros entre comutadores ATM – Suporte a vários modelos de tráfego: CBR, VBR, ABR, UBR
1º Semestre 2007/2008 Redes de Computadores 5.78
Arquitectura
• Camada ATM adaptation layer (AAL)– Sub-camada de convergência (CPCS)– Sub-camada de segmentação e reconstrução (SAR)
• Camada ATM• Camada PHY
– Sub-camada de convergência (TC)– Sub-camada dependente do meio (PMD)
AAL AAL
ATM ATM ATM ATM
PHY PHY PHY PHY
Comutador ATM Comutador ATMSistema terminal Sistema terminal
Aplicação AplicaçãoCamada IP
Camada IP
1º Semestre 2007/2008 Redes de Computadores 5.79
AAL 5 (IP-datagram transport)
• Enchimento– Número de bytes na CPCS-PDU tem que ser múltiplo de 48 (porquê ?)
• Comprimento – Dos dados, sem enchimento
• Terceiro bit do campo PT (Payload Type) da célula ATM assinalado a 1 – Fim da CPCS-PDU
Dados
1-65535
Comp. CRC
4 2
SAR-PDU Célula ATM (header=5 bytes; payload=48 bytes)
3o bit do PT
CPCS-PDUEnch.
0-47
1º Semestre 2007/2008 Redes de Computadores 5.80
IP sobre ATM
• Circuitos virtuais permanentes entre pares de encaminhadores de entrada e saída
• ATM ARP– Cada encaminhador tem um VC de
difusão associado
– Existe um servidor de ARP e VC para alcançar esse servidor
EthernetLANs
ATM