5: Camada de Enlace 5a-1 Capítulo 5: Camada de Enlace

Preview:

Citation preview

5: Camada de Enlace 5a-1

Capítulo 5: Camada de Enlace

5: Camada de Enlace 5a-2

Protocolos da Camada de Enlace

5: Camada de Enlace 5a-3

Serviços da Camada de Enlace

Enquadramento e acesso ao enlace: encapsula datagrama num quadro incluindo

cabeçalho e cauda, implementa acesso ao canal se meio for

compartilhado, ‘endereços físicos’ são usados em cabeçalhos de

quadros para identificar origem e destino de quadros em enlaces multiponto

Entrega confiável: Pouco usada em fibra óptica, cabo coaxial e alguns

tipos de pares trançados devido a taxas de erro de bit muito baixas.

Usada em enlaces de rádio, onde a meta é reduzir erros evitando assim a retransmissão fim a fim.

5: Camada de Enlace 5a-4

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 erro sem precisar da retransmissão

5: Camada de Enlace 5a-5

Implementação de Protocolo da Camada de Enlace

Protocolo da camada de enlace é implementado totalmente no adaptador (p.ex., cartão PCMCIA). Adaptador tipicamente inclui: RAM, circuitos de processamento digital de sinais, interface do barramento do computador, e interface do enlace

Operações de transmissão do adaptador: encapsula (coloca número de seqüência, info de realimentação, etc.), inclui bits de detecção de erros, implementa acesso ao canal para meios compartilhados, coloca no enlace

Operações de recepção do adaptador: verificação e correção de erros, interrompe computador para enviar quadro para a camada superior, atualiza info de estado a respeito de realimentação para o remetente, número de seqüência, etc.

5: Camada de Enlace 5a-6

Detecção de ErrosEDC= bits de Detecção e Correção de Erros (redundância)D = Dados protegidos por verificação de erros, podem incluir alguns campos do cabeçalho

• detecção de erros não é 100% perfeita;• protocolo pode não identificar alguns erros, mas é raro• maior campo de EDC permite melhorar detecção e correção

5: Camada de Enlace 5a-7

Uso de Bits de Paridade

Paridade de 1 Bit:Detecta erros em um único bit

Paridade de Bit Bidimensional:Detecta e corrige em um único bit

5: Camada de Enlace 5a-8

Métodos de “Checksum”

Checksum “Internet”: Remetente considera dados como compostos de inteiros de 16 bits; soma todos os campos de 16 bits (usando aritmética de complemento de um) e acrescenta a soma ao quadro; o receptor repete a mesma operação e compara o resultado com o checksum enviado com o quadro.

Códigos de Redundância Cíclica (Cyclic Redundancy Codes): Dados considerados como a seqüência de coeficientes de um

polinômio (D) É escolhido um polinômio Gerador, (G), (=> r+1 bits) Divide-se (módulo 2) o polinômio D*2r por G. Acrescenta-se o resto

(R) a D. Observa-se que, por construção, a nova seqüência <D,R> agora é exatamente divisível por G

5: Camada de Enlace 5a-9

Exemplo de CRC

5: Camada de Enlace 5a-10

Implementação de CRC (cont)

Remetente realiza em tempo real por hardware a divisão da seqüência D pelo polinômio G e acrescenta o resto R a D

O receptor divide <D,R> por G; se o resto for diferente de zero, a transmissão teve erro

Padrões internacionais de polinômios G de graus 8, 12, 15 e 32 já foram definidos

A ARPANET utilizava um CRC de 24 bits no protocolo de enlace de bit alternado

ATM utiliza um CRC de 32 bits em AAL5 HDLC utiliza um CRC de 16 bits

5: Camada de Enlace 5a-11

Enlaces e Protocolos de Múltiplo Acesso

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 proncipal: Protocolo de Múltiplo Acesso

5: Camada de Enlace 5a-12

Protocolos de Controle de Acesso ao Meio (MAC)

Protocolo MAC: coordena transmissões de estações diferentes a fim de minimizar/evitar colisões. Tem 3 classes:(a) Particionamento do Canal(b) Acesso Aleatório(c) “Revezamento”

Meta: ser eficiente, justo, simples, descentralizado

5: Camada de Enlace 5a-13

Protocolos de Particionamento do Canal

TDM (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.

FDM (Multiplexação por Divisão de Freqüência): freqüência subdividida; mesmos problemas de eficiência do TDM.

5: Camada de Enlace 5a-14

Particionamento do Canal com CDMA

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

Mais usado em canais de radiodifusão (celular, satélite, etc) Todos usuários compartilham a mesma freqüência, mas

cada canal tem sua própria seqüência de “chipping” (ié, código)

Seqüência de chipping funciona como máscara: usado para codificar o sinal

sinal codificado = (sinal original) X (seqüência de chipping) decodificação: produto interno do sinal codificado e a

seqüência de chipping (observa-se que o produto interno é a soma dos produtos componente-por-componente)

Para fazer CDMA funcionar, as seqüências de chipping devem ser mutuamente ortogonais entre si (i.é., produto interno = 0)

5: Camada de Enlace 5a-15

CDMA: Codificação/Decodificação

5: Camada de Enlace 5a-16

CDMA: interferência entre dois remetentes

5: Camada de Enlace 5a-17

CDMA (cont)

Propriedades do CDMA:

protege usuários de interferência (inclusive a proposital)(usado desde a Segunda Guerra Mundial)

protege usuários do “multipath fading” (interferência entre 2 trajetórias do mesmo sinal, p.ex. o direto e por reflexão) em rádio

permite a “coexistência” de múltiplos usuários e suas transmissões simultâneas com um mínimo de interferência (se os códigos deles forem “ortogonais”)

5: Camada de Enlace 5a-18

Protocolos de Acesso Aleatório

Uma estação transmite aleatoriamente (ié, sem coordenação a priori entre estações) ocupando toda a capacidade R do canal.

Se houver “colisão” entre as transmissões de duas ou mais estações, elas retransmitem depois de espera aleatória.

O protocolo MAC de acesso aleatório especifica como detectar colisões e como se recuperar delas (através de retransmissões retardadas, por exemplo)

Exemplos de protocolos MAC de acesso aleatório:

(a) SLOTTED ALOHA(b) ALOHA(c) CSMA e CSMA/CD

5: Camada de Enlace 5a-19

Slotted Aloha

O tempo é dividido em slots de tamanho igual (= tamanho de um pacote cheio)

uma estação com pacote para enviar o transmite no início do próximo slot

se houver uma colisão (supõe-se realimentação pelo canal, p.ex. o receptor avisa o remetente da colisão), a origem retransmite o pacote a cada slot com probabilidade P, até conseguir sucesso.

Slots com Sucesso (S), com Colisão (C), ou Vazios (E) S-ALOHA é eficiente na utilização do canal; é

completamente descentralizado.

5: Camada de Enlace 5a-20

Eficiência de Slotted Aloha

Se N estações tiverem pacotes para enviar, e cada uma transmite em cada slot com probabilidade p, a probabilidade S de uma transmissão com sucesso é:

Para uma estação específica, S= p (1-p)(N-1)

Para que qualquer uma das N estações consiga transmitir com sucesso num slot,

S = N p (1-p)(N-1)

Valor ótimo de P: P = 1/N Por exemplo, se N=2, S= .5

Para N muito grande temos S= 1/e (aproximadamente, 0,37)

5: Camada de Enlace 5a-21

ALOHA puro (sem slots)

Slotted ALOHA requer sincronização dos slots Um versão mais simples, ALOHA puro, não requer slots Uma estação transmite sem aguardar o início de um slot A probabilidade de colisão aumenta (pacote pode colidir

com outros pacotes transmitidos dentro de uma janela duas vezes o tamanho de S-Aloha)

A vazão é reduzida pela metade, ié S= 1/(2e) 0,18

5: Camada de Enlace 5a-22

CSMA (Carrier Sense Multiple Access)

CSMA: escuta antes de transmitir. Se detecta que o canal está sendo usado, adia transmissão.

CSMA persistente: tenta novamente assim que o canal se tornar ocioso (isto pode provocar instabilidade)

CSMA não persistente: tenta novamente depois de intervalo aleatório

Note: colisões ainda podem ocorrer, pois duas estações podem detectar o canal ocioso ao mesmo tempo (ou, melhor, dentro de uma janela de “vulnerabilidade” = retardo ida e volta entre as duas estações envolvidas)

No caso de colisão, é desperdiçado todo o tempo de transmissão do pacote

5: Camada de Enlace 5a-23

Colisões em CSMA

5: Camada de Enlace 5a-24

CSMA/CD (Detecção de Colisões)

CSMA/CD: escuta o meio e faz adiamento como o CSMA. Entretanto, colisões detectadas rapidamente, em poucos “intervalos de bit”.

Transmissão é então abortada, reduzindo consideravelmente o desperdício do canal.

Tipicamente, é implementada retransmissão persistente Detecção de colisões é fácil em rede locais usando

cabo (p.ex., E-net): pode-se medir a intensidade do sinal na linha, detectar violações do código, ou comparar sinais Tx e Rx

Detecção de colisões não pode ser realizada em redes locais de rádio (o receptor é desligado durante transmissão, para evitar danificá-lo com excesso de potência)

CSMA/CD pode conseguir utilização do canal perto de 100% em redes locais (se tiver baixa razão de tempo de propagação para tempo de transmissão do pacote)

5: Camada de Enlace 5a-25

Detecção de colisões em CSMA/CD

5: Camada de Enlace 5a-26

Protocolos MAC de “revezamento”

Até aqui já vimos: Protocolos MAC de particionamento de canal (TDM,

FDM 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 (de fato, é comum observar a captura do canal)

Também existem protocolos de “revezamento”...

5: Camada de Enlace 5a-27

Protocolos MAC de “revezamento”

Protocolos MAC de revezamento conseguem tanto justeza 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: custo de Request to Send/Clear to Send, 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-28

Tecnologias de Rede Local

Protocolos MAC usados em redes locais, para controlar acesso ao canal

Anéis de fichas: IEEE 802.5 (Token Ring da IBM), para sala de computação, ou rede departamental, até 16Mbps; FDDI (Fiber Distributed Data Interface), para rede de Campus ou Metropolitana, até 200 estações, em 100Mbps.

Ethernet: emprega o protocolo CSMA/CD; 10Mbps (IEEE 802.3), Fast E-net (100Mbps), Gigabit E-net (1,000 Mbps); de longe a tecnologia mais popular de rede local

Recommended