• Nenhum resultado encontrado

Arquitetura de Redes

N/A
N/A
Protected

Academic year: 2021

Share "Arquitetura de Redes"

Copied!
52
0
0

Texto

(1)

Arquitetura de Redes

• Aula 9

1

(2)

Nível de Enlace

LLC MAC

FÍSICO Camada 1

Camada 2

REDE Camada 3

Meio Físico

Modelo de referência OSI

• Logical Link Control (LLC) – SDLC (redes SNA da IBM) – HDLC (ISO, WAN)

– LAP, LAPB (ITU-T, WAN)

– 802.2 (IEEE, LANs e MANs)

http://grouper.ieee.org/grou

ps/802/2/

(3)

LLC – Principais Funções

• Delimitação de quadros (framing)

• Endereçamento (LCC + MAC)

• Controle de Erros (detecção e retransmissão / correção)

• Controle de Fluxo (evitar que um TX mais

rápido “afogue” um RX lento)

(4)

Controle de Erros

• Esquema básico: detecção e retransmissão dos quadros (erros).

• Estratégia padrão para controle de erros:

– Protocolos ARQ (Automatic Repeat reQuest) – Também faz controle de fluxo

– Reconhecimentos + temporizadores

• reconhecimentos positivos

–a cada pacote recebido, o receptor envia um reconhecimento (ACK)

• reconhecimentos negativos.

–Receptor envia um reconhecimento negativo (NAK)

apenas quando a perda de um quadro é detectada.

(5)

Controle de Fluxo

• Evitar que o TX “afogue” o RX com dados

• RX tipicamente aloca um buffer para armazenar dados recebidos enquanto está ocupado realizando outras

tarefas (processamento)

• A ausência de controle de fluxo pode causar overflow nesse buffer.

• Como implementar?

(6)

Controle de Fluxo

• Como implementar?

– 1. RX atrasa o envio de ACKs, desta forma após enviar N quadros sem reconhecimento o TX para (timeout).

– 2. Uso de quadros especiais: RNR (Receiver not Ready). Por exemplo, RNR-5 “recebi todos os quadros até o 5, mas no

momento não posso aceitar mais”. Depois o RX envia um ACK normal para reabrir a janela do transmissor.

– 3. Controle sobre o tamanho da janela do TX por meio de informação do status do buffer do receptor (usado no TCP)

• Geralmente funciona em conjunto com o controle de erros

(ARQ)

(7)

Proposta Inicial: usar confirmação, ACK

ACK ACK

TX

RX

tempo

(8)

ACK ACK

Erro ou perda do quadro?

TX

RX

tempo

Proposta Inicial: usar confirmação, ACK

(9)

Timeout

X

ACK

timeout

(10)

Timeout

ACK

Erro ou perda do ACK?

X

timeout

(11)

Erro ou Perda do ACK

ACK

Duplicata passada para o Nível 3

X

timeout

Solução?

(12)

Identificação dos Quadros

ACK

Descartado!

X

timeout

Solução final?

1 1 2

1 1

Quadro 1 já foi recebido,

estou esperando o Quadro 2

(13)

Timeout Prematuro

ACK

duplicata

X

timeout 1

1

2 2 3 4

ACK

2 2

ACK

4

Perdeu o Quadro 3!

Solução?

(14)

Solução: Identificação dos ACKs

ACK1

duplicata

X

timeout 1

1

2 2 3 3

ACK2

2 2

ACK2

3

OK!

(15)

Solução: Identificação dos ACKs

ACK1

duplicata

X

timeout

1

1

2 2 3 3

ACK2

2 2

ACK2

3

Adicionalmente: dimensionar corretamente o timeout. OK!

Pergunta: até quando deve ir a sequência de identificação

dos quadros?

(16)

Sequência de Identificação de Quadros

• Sequência: 1,2,3,4,...

– Números grandes ocupam muito espaço (bits) no quadro (header). Necessidade de saber o número mínimo necessário de bits

• Até quando deve ir a sequência?

– Imaginar o TX com um “buffer” com capacidade para apenas 1 quadro. O Nível de Enlace só irá buscar um novo pacote (n+1) da camada 3, sobrescrevendo o atual (n), se receber uma confirmação de recebimento do quadro atual (ACK n).

– 1 bit: 0 ou 1 (novo ou atual)

(17)

• Retransmissão de quadros atende ao controle de erros e de fluxo

• Estratégias de Retransmissão – Stop e Wait

– Go-Back-N

– Selective Repeat – Sliding Windows

Controle de erro e fluxo

(18)

Stop-and-Wait ARQ

ACK0

X

timeout

0

0

1 0 0 0

ACK1

1

ACK0

0

X

timeout

(19)

Stop-and-Wait ARQ (cont)

• Um novo quadro é enviado somente se for recebida confirmação do anterior;

• Há timeout para controlar o tempo de espera;

• Só é necessário 1 bit para numerar os quadros;

• Fluxo unidirecional;

• Para bidirecional: usar 2 Stop-and-Wait, um para cada sentido.

• No caso bidirecional: técnica de piggybacking pode ser usada – Melhor aproveitamento de banda.

– Timeout2 no caso de não haver informação para ser TX em

um dos sentidos.

(20)

Problema do Stop-and-Wait ARQ

• Canais que apresentam grandes retardos

– Desperdício de banda é grande – Baixa utilitização do canal

• Utilização: percentual de tempo dedicado a transmissão de informação útil.

• Como estimar a utilização do canal usando o protocolo Stop-and-Wait ARQ?

– Incluir todos os retardos – Análise do melhor caso

– Considerar perdas, erros na transmissão

(21)

Melhor Caso: sem erros ou ReTX

0

0

1

tp ACK0

tp tproc tI

tp tACK tproc

t

proc

: tempo de processamento (supondo igual nos 2 sentidos) t

p

: tempo de propagação (supondo igual nos 2 sentidos)

t

T

= t

I

+ 2t

p

+ 2t

proc

+

t

ACK

(22)

Utilização Máxima

I

p t

t U p

/ 1

. 1 2 1

+

= −

Utilização diminui com p e com a relação t

p

/ t

I

Utilização máxima: 50%

p = 0 (sem erros)

t

p

= 0 (sem retardo de propagação)

Outros esquemas?

(23)

Go-Back-n ARQ (sliding window)

• Vários quadros são enviados sem espera de confirmação

• O número máximo de quadros que podem ser TX define o tamanho da janela de transmissão (n)

• Neste protocolo a janela de recepção é igual a 1 (igual a do Stop-and-Wait)

• A ReTX é realizada a partir do quadro que não foi reconhecido. Os quadros seguintes, mesmo sendo

recebidos sem erros são descartados (não armazenados

pelo receptor)

(24)

Go-back-n ARQ (sliding window)

ACK0 0

0 1

ACK1

1 2

2 3 4 5 6 7 8

[0,6] [1,7] [2,8] [3,9]

W = 7

(25)

Go-back-n ARQ (sliding window)

ACK0 0

0 1

ACK0

1

2 3 4 1 2 3 4

[0,3] [1,4] [1,4] [2,5]

W = 4

X

2

2 3 4

ACK0 ACK0 ACK1

Não tem buffer p/ armazenar

Janela recepção = 1

(26)

Go-back-n ARQ

• Mesma questão: até quando deve ir a sequência de identificação de quadros?

• Dentro da janela NÃO posso ter dois quadros de mesmo número

• Tentativa: sequência do tamanho da janela

– Janela com capacidade para W quadros – Sequência: 0,1,2,...,W-1

– Ex: W = 5, seq. = 0,1,2,3,4

– OK?

(27)

Go-back-n ARQ

ACK0-4 0

0

1 2 3 4 0 1 2 3

W = 5

X

4

RX espera novo quadro 0 timeout

1 2 3 4 0

Aceito por como novo quadro

FUROU!

(28)

Go-back-n módulo m > n

ACK0-4 0

0

1 2 3 4 0 1 2 3

W = 5

X

4

RX espera quadro 5 timeout

1 2 3 4

Descartado já recebeu o quadro 0

0

Seq.: 0,1,2,3,4,5

(29)

Selective Repeat ARQ (sliding window)

• Funcionamento semelhante ao Go-back-n, porém o

tamanho da janela do receptor é igual a do transmissor.

• O RX armazena os pacotes recebidos sem erros mesmo fora de ordem, desde que os números de sequência

estejam dentro da janela.

• Quantidade de buffers necessária no receptor é igual ao tamanho da janela.

• Implementa a retransmissão seletiva

• Existe ainda um número “Go-back” caso a janela se esgote

• Objetivo: maximizar a utilização do canal

(30)

Sliding-window (janela deslizante)

• envio de vários quadros sem reconhecimento

Quadro 0 Quadro 0

Quadro 1

ACK 3

ACK 3 Quadro 1

Transmissor Receptor

Quadro 4 Quadro 4

T

Quadro 5 Quadro 5

Quadro 2 Quadro 2

Quadro 3 Quadro 3

ACK 2

ACK 2

Quadro 2 Quadro 2

Quadro 0 Quadro 0

Quadro 1 Quadro 1

pacotes são numerados em sequência (NrSeq)

0 .. NrSeqMax

o número máximo de pacotes transmitidos e

ainda não reconhecidos é determinado pelo tamanho da janela

qdo o tamanho da janela é

igual a 1 => stop-and-wait

(31)

Sliding-window (janela deslizante)

Receptor Transmissor

0 1 2 3

0 1 2 3

0 1 2 3

0 1 2 3 4 0 1 2

Recebe um quadro

Recebe dois quadros

Recebe um quadro

Envia Ack de quatro quadros

Recebe três quadros Recebe um quadro

Envia Ack de quatro quadros Envia um quadro

Envia dois quadros

Envia um quadro Recebe Ack de quatro quadros

Envia três quadros Envia um quadro

Recebe Ack de quatro quadros

0 1 2 3 4 0 1 2 3 4 0 1 2 3 4

0 1 2 3

4 0 1 2 3 4 0 1 2 3 4

0 1 2 3 4 0 1 2

3 4 0 1 2 3 4

0 1 2 3 4 0 1 2 3 4 0 1 2 3 4 0

0 1 2

0 1 2 3 4 0 1 2 3 4 0 1 2 3 4

0 1 2 3

0 1 2 3 4 0 1 2 3 4 0 1 2 3 4

0 1 2 3 4

4 0 1 2 3 4 0 1 2 3 4

0 1 2 3 4 0 1 2

4 0 1 2 3 4 0 1 2 3 4

(32)

Sliding-window (janela deslizante)

URR UPE

PPE UPA

no receptor no emissor

TJE

TJR

TJE = tamanho da janela no emissor TJR = tamanho da janela no receptor URR = último reconhecimento recebido PPE = próximo pacote esperado UPE = último pacote enviado UPA= último pacote aceitável

(33)

Sliding-window no emissor

• quando chega um reconhecimento

– o emissor move URR para a direita, permitindo o envio de um novo pacote

• TJE => nr. máx. de pacotes em trânsito

– deve ser igual à memória para manter o “canal cheio”

URR UPE

no emissor

TJE

TJE = tamanho da janela no emissor

URR = último reconhecimento recebido

UPE = último pacote enviado

(34)

Sliding-window no receptor

• quando chega um pacote

– se UPA < nrSeq < PPE => pacote descartado – se PPE <= nrSeq <= UPA => pacote aceito

• TJR => tamanho do buffer no receptor

PPE UPA

no receptor

TJR

TJR = tamanho da janela no receptor PPE = próximo pacote esperado

UPA= último pacote aceitável

(35)

Selective Repeat ARQ (sliding window)

ACK0 0

0 1

ACK0

1

2 3 4 1 2 3 4

[0,3] [1,4] [5,8]

W = 4

X

5

ACK0 ACK0 ACK4

Armazena os quadros recebidos que não apresentaram erros.

2 3 4

[1,4] [5,8]

(36)

Selective-Repeat ARQ

• Relação entre a sequência de numeração dos quadros e o tamanho da janela

– Considerando a solução idêntica ao Go-back-n – Ex: 3 bits → 0,1,2,3,4,5,6,7 → m = 8

– m > n → n = 7 (maior janela possível)

• OK?

(37)

Selective-Repeat ARQ

ACK0-6 0

0

W = 7

X

RX espera quadro 7 WR= [7,0,1...,5]

timeout

Aceito por estar dentro da janela ERRO! 0...5 passados p/ Nível 3 como novos quadros

1 2 3 4 5 6

1 2 3 4 5 6

0 1 2 3 4 5 7

WT= [0,6] WT = [7,5]

0 1 2 3 4 5 7 ACK6

Ronaldo M Salles

(38)

Selective-Repeat ARQ

• O problema: o receptor avançou a sua janela e os números de quadros permitidos estão se

sobrepondo aos números da janela anterior

– [0,6] → [7,5], superposição 0,1,2,3,4,5 – O receptor não pode distinguí-los

• Solução: as duas janelas NÃO podem se sobrepor (no overlap)

– Seq: 0,1,2,...,7 → W

max

= 4 – m >= 2n

0 1 2 3 4 5 6 7

. . .

(39)

Selective-Repeat ARQ

ACK0-3 0

0

W = 4

X

WR = [4,5,6,7]

timeout

Descartados por não estarem na janela do receptor.

1 2 3

1 2 3

0 1 2 3

WT= [0,3]

0 1 2 3

(40)

Padrões IEEE 802

• A camada de enlace é dividida em 2 sub-camadas – Camada LLC: Logical Link Control

– Camada MAC: Medium Access Control

Aplicação Apresentação

Sessão Transporte

Rede Enlace de

Dados

Física Physical (PHY)

Media Access (MAC) Logical Link Control

(LLC)

IEEE 802.3

IEEE 802.2

(41)

IEEE 802.2 – LLC

Preamble Start Frame Delimiter

Destination MAC Address

7B 1B Até 1500B

Source

MAC AddressLengh PAD Checksum

6B 6B 2B

Data

2B Até 47B

Control Vendor SSAP

DSAP Protocol

Type Data IP Packet

IP

LLC MAC

2B 3B

2B 1B

1B Enlace

SAPSAPSAP Sourc IP Dest IP

...

• A camada LLC introduz um nível adicional de endereçamento, permitindo a multiplexagem de vários protocolos sobre a camada MAC.

• O cabeçalho LLC pode ser seguido do cabeçalho SNAP (Subnetwork

Access Protocol) que inclui um campo com a mesma função que o

Ethertype do formado DIX.

(42)

802.2 LLC

Ethernet Token Ring FDDI

LLC IP

camada 3

camada 2 - LLC

camada 2- MAC

&Camada 1

(43)

Tipos de Quadros Ethernet

• Dois tipos de quadros Ethernet são utilizados.

– Formato DIX: Utiliza o campo Type

– Formato IEEE 802.x LLC: Utiliza o campo Length

DA SA DADOS FCS

FECHO CABEÇALHO

ENDEREÇO (FÍSICO) DE DESTINO (6 bytes)

ENDEREÇO (FÍSICO) DE ORIGEM (6 bytes)

Length/

Type

46 – 1500 bytes TIPO ou TAMANHO (2 bytes)

FRAME CHECK SEQUENCE (4 bytes)

(44)

Endereçamento MAC e LLC:

Não faz parte do modelo OSI-ISO;

LLC: DSSAP (Destination Service Access Point) e SSAP (Source ...)

Combinação única de endereçamento para cada DLLSAP (Data Link Layer Service Access Point) na LAN

IEEE 802.2 – LLC

IEEE Organizationally Unique Identifier

(45)

45

802.2/802.3 Formato de Quadro

DSAPAA Dest

MAC Sourc MACe

802.3

6 6 2

SSAPAA Cntl Org code00

03 type CR

data C

1 1

1 3 2 38-1492 4

802.2 LLC

802.2 SNAP

Dest

MAC Source MAC

6 6 2

CRC

data

46-1500 4

length

type

Ethernet Encapsulation (RFC 894)

IP Datagram (46-1500)

Type0800

ARP Request/Reply (28)

Type0806 Pad(18)

IP Datagram (46-1500) Type0800

ARP Request/Reply (28)

Type0806 Pad(18)

(46)

Arquitetura de Redes

• Aula 9 - Atividade

46

(47)

Responda

Marque, abaixo, a opção que representa o protocolo ARQ que sofre de problemas de desempenho que resultam em baixa taxa de transmissão de dados mesmo quando não há perdas/erros:

a) TCP

b) Go-Back-N

c) Selective Repeat d) Stop-And-Wait

e) Nenhuma da anteriores

(48)

Responda

Marque, abaixo, a opção que representa o protocolo ARQ que sofre de problemas de desempenho que resultam em baixa taxa de transmissão de dados mesmo quando não há perdas/erros:

a) TCP

b) Go-Back-N

c) Selective Repeat d) Stop-And-Wait

e) Nenhuma da anteriores

(49)

Pergunta

O campo do quadro PPP que marca o início e o final do quadro é o:

a) FCS

b) Flag

c) Dados

d) Controle

e) Protocolo

(50)

Resposta

O campo do quadro PPP que marca o início e o final do quadro é o:

a) FCS

b) Flag

c) Dados

d) Controle

e) Protocolo

(51)

Pergunta

Explique como protocolos ARQ de janelas deslizantes

(paralelismo/pipeline) contornam o problema de baixa taxa de

transmissão do protocolo Stop-And-Wait.

(52)

resposta

Explique como protocolos ARQ de janelas deslizantes

(paralelismo/pipeline) contornam o problema de baixa taxa de transmissão do protocolo Stop-And-Wait.

O protocolo stop-and-wait transmite um único pacote de dados, e permanece aguardando a chegada do ACK para só então enviar o próximo pacote. Isso gera baixa utilização da rede, já que o

transmissor passa a maior parte do tempo esperando. Como

consequência, a taxa efetiva de transmissão de dados é fortemente prejudicada. Protocolos com paralelismo como o Go-Back-N e o

Selective Repeat enviam múltiplos pacotes de dados em sequência

mesmo que um ACK ainda não tenha chegado. Consequentemente,

o transmissor passar menos tempo parado esperando por ACKs, e

atinge taxas de transmissão muito maiores.

Referências

Documentos relacionados

Rubén Mariconda. 18 RUSSELL, Bertrand. The Philosophy of logical atomism, p.25. 19 RUSSELL, Bertrand. The Philosophy of logical atomism, p.26.. César Fernando Meurer Do mundo para

*caixas de massinha de modelar *pacote de palitos de picolé *envelopes coloridos (tamanho carta) *rolo de papel crepom *pacote de lantejoulas *folhas de papel gessado

10.1. Antes de preencher este formulário, verifique se existe acordo aprovado pelo CEPEAd entre a UNIFEI e a universidade de destino para o Programa de Duplo

Quando o pacote for comutado, o tamanho da fila de um pool de buffers particular na placa de linha do ingresso que foi usada para mover o pacote estará decrescido por um até que o

Resumo da análise de variância, com os quadrados médios, para as variáveis: germinação, índice de velocidade de emergência (IVE), comprimento de raiz e de

Considerando os parâmetros índice de velocidade de germinação e porcentagem de germinação não houve diferença entre os grupos de sementes intactas, logo,

The CU combines several teaching methods in order to explore the various stages in the development of a research project: a) Lectures and discussion of key-concepts during classes

O fato do potencial a circuito aberto manter-se estável indica que não há uma mudança significativa nas reações anódica e catódica durante o tempo de exposição do