Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de...

54
Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação

Transcript of Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de...

Page 1: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

MATA59 - Redes de ComputadoresI

Universidade Federal da Bahia

Instituto de Matemática

Departamento de Ciência da Computação

Page 2: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

CAMADA DE REDE

Page 3: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

CAMADA DE REDE

Page 4: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

4

Camada de Rede

• Serviços da Camada de Rede oferecidos a camada de transporte:• serviço orientado a conexão• serviço não orientado a conexão• serviço confiável• serviço não confiável

• Normalmente, serviços orientados a conexão possuem confiabilidade

Page 5: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

5

Camada de Rede

• Serviços da Camada de Rede:

• conexão (orientado ou não)

• roteamento

• controle de congestionamento

• No serviço com conexão estabelece-se circuito virtual

• O circuito virtual determina o roteamento uma única vez para a conexão

• No serviço sem conexão as rotas podem se alterar

Page 6: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

6

Camada de Rede

• No serviço sem conexão cada pacote é roteado de forma independente dos demais

• No serviço com conexão se estabelece a rota para todos os pacotes da conexão, podendo-se reservar banda para a conexão

Page 7: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

7

Roteamento

Page 8: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

8

Roteamento

• Propriedades:• Correção• Simplicidade• Robustez• Estabilidade• Otimização

Page 9: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

9

Roteamento• Tabela de Roteamento:

• Armazenam as rotas escolhidas• Manualmente: inicialização do SO do roteador• Dinamicamente: tempo de execução

• Algoritmo de Roteamento: Definem as regras e a lógica seguida para escolha da rota

• Protocolo de Rotemamento: • responsáveis pela divulgação de rotas e atualização

das tabelas de roteamento• Implementam um ou mais algoritmos

Page 10: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

10

Roteamento Métricas

Page 11: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

11

Roteamento

• Métricas de roteamento:• Largura de banda• Tipo de carga• Distância entre roteadores• Congestionamento• Número de hops• Atraso• Função de custo

Page 12: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

12

Roteamento• Tipos: Estáticos e Dinâmicos

• Estático:Normalmente configurado manualmenteA tabela de roteamento é estática

As rotas não se alteram dinamicamente de acordo com as alterações da topologia da rede

Custo manutenção cresce de acordo com a complexidade e tamanho da rede

Sujeito a falhas de configuração

Page 13: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

13

Roteamento Estático

Page 14: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

14

Roteamento• Tipos: Estáticos e Dinâmicos

• Dinâmico:Divulgação e alteração das tabelas de roteamento

de forma dinâmicaSem intervenção constante do administrador

Alteração das tabelas dinamicamente de acordo com a alteração da topologia da redeAdaptativo

Melhora o tempo de manutenção das tabelas em grandes redes

Mas também está sujeito a falhas

Page 15: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

15

Roteamento Dinâmico

Page 16: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

16

Roteamento Direto• Origem e Destino na mesma rede

• Várias topologias– Lembrar que equipamentos de nível 2 não tratam endereço

de rede

10.35.143.0

10.35.143.10

10.35.143.15

Tabela de Roteamento

Destino Gateway 10.35.143.0 10.35.143.10 ....... .......

Switch

Page 17: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

17

Roteamento Indireto• Origem e Destino estão em redes diferentes

10.35.143.0

10.35.143.1010.35.144.15

Tabela de Roteamento

Destino Gateway 10.35.143.0 10.35.143.10 0.0.0.0 10.35.143.1

Router10.35.144.0

Tabela de Roteamento

Destino Gateway 10.35.143.0 10.35.143.110.35.144.0 10.35.144.1 ....... .......

10.35.143.1 10.35.144.1

Tabela de Roteamento

Destino Gateway 10.35.144.0 10.35.144.150.0.0.0 10.35.144.1

Page 18: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

18

Roteamento• Tipos de Protocolos de Roteamento:

• Não Adaptativos – Estáticos• Algoritmo de Dijikstra• Algoritmo de Inundação ( Flooding )

• Adaptativos - Dinâmicos• Algotítmo de Distância Vetorial (Bellman-Ford)• Algoritmo do Estado de Enlace (Short Path First)

Page 19: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

19

Algorítmo de Inundação

• Roteador envia pacotes para todas as suas interfaces, exceto para aquela em que chegou

• Inunda a rede• O pacote sempre alcança o destino• Tráfego desnecessário

Page 20: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

20

Roteamento pelo Caminho mais Curto - Algoritmo de Dijikstra

• Modelagem de Grafo:• Arcos são linhas de comunicação (enlaces)• Nós são roteadores• Rotas são caminhos entre nós de um grafo• Cada arco tem um peso indicando o custo do

enlace

Page 21: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

21

Algoritmo de Dijikstra

• Cada nó é rotulado por sua distância ao nó de origem ao logo do menor caminho até então

• inicialmente todos os nós são rotulados com infinito

• cada interação analisa-se a vizinhança do nó ativo e escolhe-se o novo nó ativo

• Inicialmente os rótulos (labels) são provisórios, quando se descobre que o label representa o menor caminho possível ele se torna permanente

Page 22: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

22

Algoritmo de Dijikstra

DA

F

B

G

C

E

4

8

2

10

2

12

4

6

87

Page 23: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

23

Roteamento Vetor Distância ( Roteamento com Distância Vetorial ) Ex.: RIP

Page 24: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

24

É um algoritmo simples– Um roteador mantém uma lista de todos as rotas

conhecidas em uma tabela– Cada roteador divulga para os seus vizinhos as

rotas que conhece– Cada roteador selecionas dentre as rotas

conhecidas e as divulgadas os melhores caminhos

Roteamento Vetor Distância ( Roteamento com Distância Vetorial ) Ex.: RIP

Page 25: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

25

Vetor-Distância - Métrica• A escolha do melhor caminho é baseada na comparação da métrica do enlace

– Normalmente: Melhor = menor caminho

• A métrica é o custo de envio em um enlace• Pode ser diferentes informações

– Taxa de transmissão em bps– Vazão– Atraso– Número de saltos (no. de hops) (+ usado)

Page 26: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

26

Vetor-Distância – Métrica – Saltos

Page 27: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

27

Vetor-Distância - Procedimento

1. Quando o roteador executa o “boot” ele armazena na tabela informações sobre cada uma das redes que estão diretamente conectada a ele. Cada entrada na tabela indica uma rede destino, o gateway para a rede e a sua métrica.

2. Periodicamente cada roteador envia uma cópia da sua tabela para qualquer outro roteador que seja diretamente alcançável.

3. Cada roteador que recebe uma cópia da tabela, verifica as rotas divulgadas e suas métricas. O roteador soma à métrica divulgada o custo do enlace entre ele e o roteador que fez a divulgação. Após, compara cada uma das entradas da tabela divulgada com as da sua tabela de roteamento. Rotas novas são adicionadas, rotas existentes são selecionadas pela sua métrica.

Page 28: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

28

Vetor-Distância - Procedimneto3.1 Se a rota já existe na tabela e a métrica calculada é menor

do que a da rota conhecida, então remove a entrada anterior e adiciona a nova rota divulgada.

3.2 Se a rota já existe na tabela e a métrica calculada é igual a da rota conhecida, então não altera a entrada.

3.3. Se a rota já existe na tabela e a métrica divulgada é maior do que a da rota conhecida, então verifica se o gateway para esta rota é o mesmo que está fazendo nova divulgação

3.3.1 Se o gateway é o mesmo então altera a métrica para esta rota

3.3.2 Se o gateway não é o mesmo não altera a rota conhecida

Page 29: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

29

Distância Vetorial - Convergência

• Processamento rápido do algoritmo• Convergência lenta

• ex: D demora para perceber queda do enlace

A B DC

Page 30: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

30

Distância Vetorial - Convergência Lenta

Router 1 Router 2 Router 4Router 3

<R1,0> <R2,0><R1,1>

<R3,0><R2,1><R1,2>

<R2,1><R1,0>

<R3,1><R2,0><R1,1>

<R4,0><R3,1><R2,2><R1,3>

Continua o processo ....

Page 31: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

31

Distância Vetorial - Convergência Lenta

Router 1 Router 2 Router 4Router 3

<R1,0> <R2,0><R1,3>

<R3,0><R2,1><R1,4>

<R3,1><R2,0><R1,5>

<R2,0>

<R3,0><R2,1><R1,6>

A rota somente seráConsiderada infinita quando amétrica atingir 16.

A rota somente seráConsiderada infinita quando amétrica atingir 16.

Page 32: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

32

Distância Vetorial - Convergência Lenta - Soluções

• Split Horizon– A informação de roteamento não deve ser

divulgada para a máquina que a originou

• Hold-Down– Previne que mensagens de atualização

restabeleçam precipitadamente uma rota que caiu.

Page 33: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

33

Roteamento por Estado de Enlace – Ex.: OSPF

Page 34: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

34

Roteamento por Estado de Enlace – Ex.: OSPF

Cada roteador tem tarefas divididas em 5 partes:

1. Descobrir seus vizinhos e aprender seus endereços de rede

2. Medir o retardo ou custo até cada uma dos seus vizinhos

3. Criar um pacote que informe tudo que aprendeu ao seus vizinhos

4. Enviar este pacote a todos os outros roteadores

5. Calcular o caminho mais curto até cada um dos outros roteadores

Page 35: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

35

Estado do Enlace• Baseado no conceito de mapas distribuídos

– todos os roteadores do mapa tem uma cópia

• O conteúdo das mensagens de atualização são as ligações de um roteador a seus vizinhos, a identificação do enlace e o custo.

• As informações divulgadas são acrescentadas ao mapa de quem as recebe

• Caso, haja alterações do mapa devido a divulgação as rotas são recalculadas.

Page 36: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

36

Estado do Enlace - Mapa• Exemplo

• Cada registro é divulgado pelo roteador “responsável”

A1 2

3 45

6

B C

D E

De Para Enlace Métrica A B 1 1 A D 3 1 B A 1 1 B C 2 1 B E 4 1 C B 2 1 C E 5 1 D A 3 1 D E 6 1 E C 5 1 E B 4 1 E D 6 1

Page 37: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

37

Estado do Enlace – Inundação (Flooding)

• A e B detectam a falha

• A e B alteram os registros na base de dados pelos quais são responsáveis

• A gera atualização para D e B para C e E

• C, D e E irão desencadear novas atualizações

6

A1 2

3 45

B C

D E

Falha de comunicação

Page 38: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

38

Estado do Enlace – Inundação (Flooding)• D enviará para E, C enviará para E e E enviará para

C e B

• Loop?– Prevenção do loop é feita pela utilização de um número

de seqüência no pacote de atualização

• AlgoritmoRecebe mensagem

Seleciona registro na basese o registro não está presente

então adiciona e envia uma mensagem em broadcast para os vizinhos, exceto pelo enlace pelo qual foi recebida

Page 39: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

39

Estado do Enlace – Inundação (Flooding)senão

se o número de seqüência da entrada na base < o número de seqüência da mensagem

então atualiza e gera broadcast

senão

se número da base > o número de seqüência da mensagem

então

gera uma nova divulgação

atualiza o número de seqüência da mensagem

envia a mensagem para interface pela qual foi recebida

senão

se os números de seqüência são iguais não faz nada.

Page 40: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

40

Estado de enlace – Atualização - Exemplo

• Mensagem de A– From A, to B, link 1,

distance = infinite, number = 2.

• Mensagem de B– From B to A, link 1,

distance = infinite, number = 2

De Para Enlace Métrica Seq. A B 1 inf 2 A D 3 1 1 B A 1 inf 2 B C 2 1 1 B E 4 1 1 C B 2 1 1 C E 5 1 1 D A 3 1 1 D E 6 1 1 E C 5 1 1 E B 4 1 1 E D 6 1 1

Tabela Final

Page 41: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

41

Estado do enlace – Atualização – Exemplo - Falha

• Duas versões do mapa

A1 2

3 45

B C

D E

Falha de comunicação

Mapa 1 - AD

A B 1 inf 2B A 1 inf 2D E 1 inf 2

Mapa 1 -BCE

A B 1 inf 2B A 1 inf 2E D 1 inf 2

Page 42: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

42

Estado do enlace – Atualização - Exemplo

• Mapa BCE sofrerá atualizações que não serão refletidas no AD

A1 2

3 45

B C

D E

Falha de comunicação

Mapa 1 -BCEA B 1 inf 2B A 1 inf 2B C 2 inf 2C B 2 inf 2 E D 1 inf 2

Page 43: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

43

Estado do enlace – Atualização – Exemplo - Restabelecimento

• Ao restabelecer a comunicação entre AD e BCE é necessário que ocorra um processo de sincronização

• Pelo processo normal leva muito tempo para convergir

• Sincronização - “data base description packets”– 1.ª fase: nodo distribui o seu mapa– 2.ª fase: solicita aos vizinhos os “registros interessantes”– 3.ª fase: flooding

Page 44: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

44

Estado do Enlace - Problemas - No. de Sequência.

• Quando um roteador cai e volta rapidamente– não terá sido retirado dos mapas dos outros hosts– irá realizar o flooding com seu número de seqüência

incial– esse número será mais antigo (menor) que os mantidos

nos mapas dos vizinhos– então para acelerar a convergência, ele deve aceitar o

número de seqüência que os outros irão lhe enviar, incrementá-lo e imediatamente retransmitir seus registros com o novo número.

Page 45: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

45

Roteamento Hierarquico

• Regiões de roteamento• Informações de rotas internas a região não se

propagam fora dela• Rotas padrão

Page 46: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

46

Roteamento por Difusão ( Broadcasting )

• Envio de pacotes a todos os destinos simultaneamente

• Pode usar o algoritmo que envia um pacote específico para cada destino

• Pode usar o algoritmo de Inundação• Pode usar o algoritmo de Roteamento para vários

destinos• Pode usar o algoritmo de Árvore Invertida

Page 47: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

47

Roteamento por Multidifusão ( Multicasting )

• Envio de pacotes para Grupos• Pode usar o algoritmo que envia um pacote específico

para cada membro do grupo ( poucos participantes )• Pode usar o algoritmo de Inundação ( grupo com

muitos membros, próximo do total )• Pode usar o algoritmo de Roteamento por

Multidifuão ( uma árvore invertida para cada grupo )

Page 48: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

48

Controle de Congestionamento

• Loop aberto: controle de tráfego de quem envia para a rede, evitando o congestionamento

• Loop fechado: controle de tráfego no roteador, tratando o congestionamento existente

• Caso a rede adote circuito virtual, estabelece-se bandas de uso, assim há uma visão da banda total da rede e evitando-se o congestionamento

Page 49: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

49

Controle de Congestionamento• Loop Aberto:

• Algoritmo do Balde Furado: Limita a informação que pode ser enfileirada para transmissão de dados. Modela um buffer de transmissão finito e taxa limite de transmissão de mensagens provenientes do balde

• Algoritmo do Balde Furado de Tokens: cria permissões (tokens) de envio de N bits a cada intervalo de tempo. A mensagem tem de utilizar os tokens, limita o tráfego, mas permite rajadas

Page 50: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

50

Algoritmo de Balde Furado

Page 51: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

51

Algoritmo de Balde Furado

Page 52: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

52

Algoritmo Balde Furado- Tokens

Page 53: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

53

Algoritmo Balde Furado

Page 54: Rede de Computadores MATA59 - Redes de ComputadoresI Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.

Rede de Computadores

54

Controle de Congestionamento• Loop Fechado:

• Rede com conexão: proíbe o estabelecimento de novos circuitos virtuais e renegocia banda dos existentes

• Rede sem conexão: descarte do pacote gera pacote regulador informando roteadores do congestionamento, estes aplicam alguma técnica de controle com Loop Aberto

• Escoamento de carga: último recurso, descarta todos os pacotes ou os de menor prioridade