128
Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Embed Size (px)

Citation preview

Page 1: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Teleprocessamento e Redes

Capítulo 4:

Camada de Rede

Prof. Fábio M. Costa

INF / UFG

Page 2: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG2

Visão Geral

Serviço oferecidos pela camada de rede Organização interna da camada de rede Algoritmos de roteamento – visão geral Controle de congestionamento Interconexão de redes A camada de rede na Internet A camada de rede em redes ATM – visão

geral

Page 3: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG3

No contexto da pilha de protocolos...

Page 4: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG4

Função básica da Camada de Rede

Determinar caminhos para a transmissão de pacotes Conduzir pacotes através da rede, passando por

vários nodos, da origem até o destino– Nodo: Roteador ou Host

Primeira camada que se ocupa com transmissão de dados fim-a-fim

Origem Destino

R1

R2

R3R4

R5

Sub-rede

Page 5: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG5

Fução básica da Camada de Rede (2)

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

applicationtransportnetworkdata linkphysical

applicationtransportnetworkdata linkphysical

Page 6: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG6

Pressupostos básicos

Conhecimento da topologia da rede Capacidade de escolher caminhos

otimizados Evitar a sobrecarga de certos enlaces ou

roteadores Lidar com as incompatibilidades entre redes

diferentes– Quando origem e destino se encontram em redes

com características diferentes

Page 7: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG7

Serviço oferecido pela Camada de Rede

Requisitos fundamentais:– Independentes da tecnologia da rede subjacente– Isolar a Camada de Transporte das questões

relativas ao tamanho, tipo e topologia das sub-redes presentes

– Usar um esquema de endereçamento uniforme

Dois tipos mutuamente excludentes de serviços:– Serviço orientado a conexões– Serviço sem conexões

Page 8: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG8

Serviço sem conexões

Defendido pela comunidade ligada à Internet Argumentos principais:

– A função da sub-rede é mover bits de um lado para o outro

SEND_PACKET, RECEIVE_PACKET

– A sub-rede é inerentemente não-confiável, independentemente de seu design

Hosts devem aceitar o fato, sendo que os mesmos são responsáveis pelo controle de erros e de fluxo

Tornar a sub-rede o mais simples possível Movendo a complexidade adicional para os

hosts (computadores dos usuários)

Page 9: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG9

Serviço orientado a conexões

Defendido pela comunidade ligada às companhias telefônicas

Principais argumentos:– Sub-rede deve prover um serviço confiável

Funções como controle de erros e de fluxo são realizadas pela sub-rede

– Usuários (hosts) não devem se preocupar com estes “detalhes”

Apropriado no caso de terminais “burros”: telefone

Remove a complexidade dos hosts Sub-rede mais complexa

Page 10: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG10

Organização interna da Camada de Rede

Rede baseada em Circuitos Virtuais

X

Rede baseada em Datagramas

Circuitos Virtuais (VC)– rota fixa no estabelec. da

conexão– roteadores mantém

tabela de VCs ativos– análogo ao sistema

telefônico

Datagramas– rota determinada para

cada pacote individual– pacotes podem seguir

rotas diferentes– análogo ao sistema

postal

Page 11: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG11

Sub-rede baseada em Circuitos Virtuais

Cada roteador mantém uma tabela de VCs:– Uma entrada para cada VC passando por ele– Indicando a interface de rede através da qual

pacotes de cada VC devem ser encaminhados

Cada VC recebe um número único no contexto de um roteador– O mesmo VC pode ser identificado através de

números diferentes em roteadores distintos

Pacotes são identificados pelo número do VC ao qual pertencem

Page 12: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG12

Sub-rede baseada em Circuitos Virtuais (2)

Protocolo de sinalização– Usado para o estabelecimento de circuitos virtuais– Antes que transferência de dados real possa ocorrer

application

transportnetworkdata linkphysical

application

transportnetworkdata linkphysical

5. Data flow begins 6. Receive data

1. Initiate call 2. incoming call

3. Accept call4. Call connected

Page 13: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG13

Sub-rede baseada em Datagramas

Cada roteador mantém uma tabela indicando:– A interface de rede através da qual cada roteador

existente pode ser atingido Interface usada para encaminhar pacotes destinados

àquele roteador específico

– Tabela de rotas

Pacotes (datagramas) devem conter o endereço completo do destino– Roteadores usam este endereço para verificar, em

suas tabelas de rotas, qual interface usar para encaminhar cada pacote recebido

Page 14: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG14

Sub-rede baseada em Datagramas (2)

Não é necessário tempo inicial de preparação da conexão

Dados começam a ser transmitidos imediatamente

application

transportnetworkdata linkphysical

application

transportnetworkdata linkphysical

1. Send data 2. Receive data

Page 15: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG15

Circuitos Virtuais e Datagramas:Comparação

Aspecto Sub-rede baseada em Datagramas

Sub-rede baseada em VCs

Estabelecimento de circuito

Não necessário Necessário. Overhead inicial

Endereçamento Cada pacote contém o endereço completo do destino

Cada pacote contém um pequeno número identificando o VC

Informação de estado

Sub-rede stateless Cada VC requer uma entrada na tabela de VCs

Roteamento Cada pacote roteado independente

Rota escolhida quando do estabelecim. do VC

Efeito de falhas de roteadores

Nenhum. Pacotes podem seguir outra rota

VCs passando pelo roteador são terminados

Controle de congestionamento

Difícil Resolvido com a reserva de buffers para cada VC

Page 16: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG16

Estrutura Interna da Sub-rede e Tipos de Serviço

Tipo de sub-rede

Tipo de serviço

(camada superior) Datagrama Circuito Virtual

Sem-conexãoUDP

sobre

IP

UDP

sobre

IP

sobre

ATM

Orientado a conexãoTCP

sobre

IP

ATM AAL1

sobre

ATM

Page 17: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG17

Roteamento

Principal função da camada de rede– Pacotes passam por múltiplos nós intermediários

até chegar ao destino– Achar o “melhor” dentre vários caminhos

alternativos (de acordo com algum critério)– Em redes de difusão (broadcast):

Dispensa roteamento internamente Mas não se origem e destino estiverem em redes

diferentes

Page 18: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG18

Algoritmos de Roteamento

Parte do software de camada de rede responsável por decidir o caminho a ser seguido pelos pacotes– Geralmente executado passo-a-passo

Em redes baseadas em Datagrama:– Roteamento é (ou pode ser) feito individualmente

para cada pacote

Em redes baseadas em Circuito Virtual:– Roteamento por sessão: caminho fixo seguido

por todos os pacotes de um mesmo VC

Page 19: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG19

Algoritmos de Roteamento: Propriedades desejáveis

Corretude– Caminhos calculados deve conduzir ao destino

endereçado Simplicidade

– Facilidade de implementação e baixo custo computacional

Robustez– Funcionar continuamente, a despeito de falhas de

nodos (roteadores), mudanças de topologia da rede, variações nos padrões de tráfego

– Algoritmo distribuído

Page 20: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG20

Algoritmos de Roteamento: Propriedades desejáveis (2)

Estabilidade– O algoritmo deve convergir (de maneira

determinística, de preferência)

Justiça (Fairness)– O algoritmo não deve favorecer alguns nodos

(roteadores) em detrimento de outros distribuição de carga deve ser balancea entre os nodos oportunidade de transmissão de pacotes deve ser igual

para todos os nodos (hosts).

Optimalidade– Em nível global da rede Vs. no nível de cada sessão

Page 21: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG21

OBS.: Justiça Vs. Optimalidade

Optimizar throughput de tráfego global– Sessões independentes entre: A e A´, B e B´, C e C´

Vs. Justiça para com todos os hosts

– Comunicação entre X e X´ pode ficar prejudicada

Page 22: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG22

Critérios para otimização

Duas metas conflitantes:1) Minimizar o atraso médio de transmissão (fim-a-

fim) de pacotes

2) Maximizar o throughput global da rede– Meta (2) requer que a rede opere no limite de

sua capacidade Com as filas de pacotes nos roteadores sempre cheias

– Filas mais longas: aumenta-se o tempo que cada pacote tem que esperar para ser roteado Conseqüentemente, aumenta-se o atraso fim-a-fim

dos pacotes

Page 23: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG23

Otimização: Solução de compromisso

Minimizar o número de roteadores intermediários que um pacote tem que

percorrer Tende a melhorar o atraso fim-a-fim Reduz a quantidade de largura de banda

consumida por cada sessão de comunicação– Tende a melhorar o throughput global da rede

Rede capaz de suportar mais sessões

Page 24: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG24

Categorias de Algoritmos de Roteamento

Algoritmos não-adaptativos (ou estáticos)– Caminhos são computados previamente (off-line) e

então descarregados nos roteadores

Algoritmos adaptativos– Rotas são computadas dinamicamente– Cálculo de rotas é feito periodicamente, baseado

nas condições atuais da rede Análise de variáveis em âmbito local ou global Métricas: distância, número de hops, estimativa de delay Refletindo mudanças na topologia e nas características

de tráfego

Page 25: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG25

Princípio da Optimalidade

Se o roteador J está no caminho ótimo do roteador I para o roteador K, então o caminho ótimo de J para K também segue a mesma rota

I J K

Melhor caminho de I para K

Melhor caminho de J para K

Page 26: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG26

Árvore de “sorvedouro”

O conjunto de rotas ótimas de todas os nodos-origem para um dado nodo de destino forma uma árvore cuja raiz é o nodo de destino

Pode haver mais do que uma árvore de sorvedouro para uma mesma rede

Page 27: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG27

Árvore de “sorvedouro” (2)

Cada roteador pode ter uma visão diferente da árvore– Ex.: devido a mudanças na topologia da rede, as

quais podem não ser percebidas por todos os roteadores ao mesmo tempo

Mecanismo usado pelos roteadores para obter informações de topologia para montar a árvore: dependente de protocolo

Provê um modelo genérico para algoritmos de roteamento (juntamente com o princípio da optimalidade)

Page 28: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG28

Roteamento por Caminho Mais Curto

Constrói-se um grafo da sub-rede– nodos representando roteadores– arestas representando enlaces de comunicação

Melhor rota entre um dado par de roteadores

Rota mais curta entre os dois nodos correspondentes no grafo

Page 29: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG29

Métricas para se calcular o custo de um caminho

Número de saltos (hops) ou enlaces intermediários

Distância geográfica Tempo médio de enfileiramento e

transmissão nos roteadores Largura de banda dos enlaces Carga de tráfego nos enlaces Custo monetário da comunicação

Ou uma função de várias destas métricas

Page 30: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG30

Exemplo

Métrica: número de saltos:– rota ABCD (3 saltos) melhor que rota ABEFHD (5 saltos)

Métrica: distância geográfica:– rota ABEFHD (dist.=10) melhor que rota ABCD (dist.=12)

Page 31: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG31

Algoritmo de Djikstra† para caminhos mínimos

Cada nodo é rotulado com sua distância a partir do nodo origem da rota– ao longo da melhor rota conhecida até então

Inicialmente:– Nenhuma rota é conhecida– Todos os nodos são rotulados com distância

infinita

À medida em que o algoritmo prossegue, rótulos podem mudar, refletindo melhores caminhos encontrados

Page 32: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG32

Algoritmo de Djikstra† para caminhos mínimos (2)

Rótulo:– tentativo: não se sabe se reflete a melhor rota– permanente: rótulo representa a melhor rota

I.e., nodo correspondente faz parte da melhor rota

Inicialmente, todos os rótulos são tentativos Ao se descobrir que o rótulo de um nodo

representa a melhor rota da origem até tal nodo, este rótulo é tornado permanente– Não pode ser mais alterado

Repete até chegar ao nodo de destino

Page 33: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG33

Exemplo: Rota mais curta de A para D

Page 34: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG34

Roteamento Hierárquico

Rede é dividida em regiões Algoritmo de roteamento é executado

independentemente em cada região Apenas os nodos (roteadores) que conectam

uma região à outra têm conhecimento de regiões externas

Melhor escalabilidade

Page 35: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG35

Roteamento Hierárquico: Exemplo

Page 36: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG36

Roteamento para Hosts Móveis

Page 37: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG37

Controle de Congestionamento

Quando o número de pacotes presentes na rede está acima de sua capacidade

Tráfego ligeiramente acima do limite:

– Roteadores começam a perder pacotes

Tráfego muito acima do limite:

– Colapso

Page 38: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG38

Congestionamento: Principais causas

Vazão de pacotes que chegam em um roteador é maior do que a vazão de saída de pacotes

– Ex.: tráfego chegando por várias linhas, mas com uma única linha de saída

– Overflow do buffer (fila) do roteador

Fila

Roteador

Page 39: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG39

Congestionamento: Principais causas (2)

Baixa capacidade de processamento nos roteadores– Roteador não consegue processar todo o tráfego

que chega– Overflow das filas do roteador

Enlaces de baixa capacidade– Efeito semelhante

Melhorar em um ponto apenas não resolve o problema– Deve-se eliminar todos os “gargalos” na rede

Page 40: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG40

Congestionamento: Principais causas (3)

Processo de re-alimentação– Congestionamento causa o descarte de pacotes– Pacotes descartados são retransmitidos– Aumentando o congestionamento ainda mais

Page 41: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG41

Controle de Congestionamento: Princípios gerais

Soluções de loop aberto:– Prevenção de congestionamento através de um

bom design da rede e de seus protocolos– Técnicas mai comun:

Controle de admissão de tráfego: quando aceitar novas conexões ou pacotes para transmitir

Decisões de escalonamento apropriadas: balancear a carga entre os roteadores da rede

– Técnica essencialmente preventiva

Page 42: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG42

Controle de Congestionamento: Princípios gerais (2)

Soluções de loop fechado:– Baseadas em retro-alimentação (feedback)

Monitorar o sistema para detectar congestionamentos Informar hosts e roteadores p/ que tomem a ação

apropriada (ex.: reduzir envio de pacotes) Ajustar a operação do sistema para corrigir o problema

– Principais métricas: % de pacotes perdidos, tamanho médio das filas, % de

pacotes que sofrem timeouts, atraso médio dos pacotes

– Cuidar para não acentuar o congestionamento Não enviar pacotes de controle de congestionamento

desnecessariamente. Ex.: usar piggybacking

Page 43: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG43

Controle de Congestionamento: Princípios gerais (3)

Aumentar temporariamente a quantidade de recursos da rede para lidar com a carga de tráfego extra– Fazendo-se valer da redundância incorporada à

rede para fins de tolerância a falhas Roteadores e enlaces redundantes

– Contratação temporária de mais recursos Aumentar a largura de banda dos enlaces

Medidas drásticas:– Recusa ou degradação do serviço prestado aos

usuários

Page 44: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG44

Controle de Congestionamento: Onde aplicar

Essencialmente uma tarefa “fim-a-fim”

Em redes baseadas em circuitos virtuais– Na própria camada de Rede

Em redes baseadas em datagramas– Na camada de Transporte

Técnicas auxiliares podem ser empregadas na camada de Enlace

Page 45: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG45

Políticas de Prevenção de Congestionamento

Page 46: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG46

Modelamento de Tráfego

Tráfego de dados geralmente não segue um padrão de fluxo constante– Transmissão em “rajadas”– Torna mais difícil o controle de congestionamento

Modelamento de tráfego (traffic shaping):– Regular o tráfego de forma a:

Impor uma certa regularidade (eliminando rajadas) Controlar a taxa de transmissão

– Baseado em um acordo entre o usuário e a sub-rede

Page 47: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG47

Modelamento de Tráfego (2)

Requer policiamento do tráfego pela sub-rede– Para verificar se o usuário está obedecendo o

acordo firmado inicialmente, quanto à: Taxa de transmissão (vazão) Regularidade do tráfego

– Mais simples de implantar em redes de circuito virtual

– Em redes de datagrama: implementado na camada de Transporte (fim-a-fim)

Page 48: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG48

Controle de Congestionamento: Algoritmo do “Balde furado” (leaky bucket)

Page 49: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG49

Resumo dos Tópicos Abordados

Serviço oferecido pela camada de Rede Protocolos de Roteamento Controle de Congestionamento Interconexão de Redes Camada de Rede na Internet

Page 50: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG50

Interconexão de Redes

Diversidade de tecnologias de rede incompatíveis, mas que precisam ser interligadas

Page 51: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG51

Dispositivos de interconexão de redes

Camada Dispositivo Funcionalidade

Física Repetidor Cópia de bits entre segmentos de cabo distintos

Enlace Ponte Armazenar e retransmitir quadros com base no endereço de destino

Rede Roteador multi-protocolo

Armazenar e retransmitir quadros, rotear pacotes, compatibilizar protocolos de rede diferentes

Transporte Gateway de transporte

Conectar duas redes no nível de transporte

Aplicação Gateway de aplicação

Conectar duas partes de uma mesma aplicação suportada por protocolos de aplicação diferentes

Page 52: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG52

“Half- and Full Gateways”

Page 53: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG53

Diferenças entre redes

Page 54: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG54

Duas abordagens básicas para interconexão

Concatenação de circuitos virtuais Interconexão baseada em datagramas (i.e.,

sem conexão) Tunelamento (tunneling)

Page 55: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG55

Concatenação de Circuitos Virtuais

Roteadores concatenam circuitos virtuais estabelecidos dentro das redes conectadas

Problemas ao conectar redes com características diferentes em relação à confiabilidade

Page 56: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG56

Interconexão Baseada em Datagramas

Cada pacote tratado independentemente Pacotes podem seguir rotas diferentes, passando

por diferentes roteadores e redes

Page 57: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG57

Problemas com Interconexão Baseada em Datagramas

Redes com protocolos diferentes– Pacotes de uma rede não podem trafegar na outra– Conversão de protocolos só faz sentido se os dois

protocolos forem suficientemente semelhantes

Esquemas de endereçamento diferentes– Ex.: endereços IP de 32 bits versus endereços

decimais utilizados pelo protocolo OSI CLNP– Conversão de endereços pode requerer grandes

bases de dados: difícil de gerenciar

Page 58: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG58

Comparação

Concatenação de circuitos virtuais

– Reserva adiantada de buffers evita congestionamento

– Garante seqüência dos pacotes– Cabeçalhos mais curtos– Elimina duplicação de pacotes– Tabelas de VCs em memória– Rotas fixas– Vulnerável a falhas de

roteadores– Impossível de implementar se

alguma rede intermediária for baseada em datagramas

Interconexão baseada em datagramas

– Sujeito a congestionamentos– Roteamento adaptável– Robustez frente a falhas de

roteadores– Cabeçalhos mais longos– Pode ser empregado na

interconexão de redes baseadas em datagramas e redes de circuito virtual

Page 59: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG59

Tunneling

Aplicável quando as redes de origem e destino da conexão são do mesmo tipo

– Mas os dados devem passar por redes intermédiárias com características diferentes

Pacote original (inteiro) é transmitido dentro do campo de payload de um pacote da rede intermediária

Na rede de destino, o pacote é removido e transmitido normalmente até seu endereço final

Técnica comum ao se conectar duas redes locais através de uma rede pública de longa distância

Page 60: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG60

Tunneling (2)

Page 61: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG61

Tunneling: Analogia

Page 62: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG62

Roteamento Inter-Redes

Semelhante ao roteamento dentro de uma única rede

– Mas realizado de forma hierárquica Roteamento interno: dentro de cada rede Roteamento externo: entre as redes interconectadas

Page 63: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG63

Roteamento entre Sistemas Autônomos

Cada rede interconectada pode ser independente das demais

Protocolo de roteamento próprio Diferentes políticas de administração do

tráfego– Ex.: Diferentes leis ao cruzar fronteiras nacionais

Diferentes mecanismos para atribuir custo ao serviço de transmissão de dados

Diferentes qualidades de serviço Faz do roteamento uma tarefa mais

complexa

Page 64: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG64

Fragmentação de Pacotes

Diferentes redes possuem limites diferentes quanto ao tamanho máximo de pacotes

Problema ao se transmitir um pacote através de uma rede intermediária cujo tamanho máximo permitido seja menor– Se for uma rede intermediária, pode-se tentar

contorná-la– Se for a rede de destino, a única saída é

fragmentar o pacote em vários pacotes menores a serem transmitidos separadamente

Remontagem do pacote original no destino

Page 65: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG65

Fragmentação de Pacotes: Transparente Vs. Não-Transparente

Page 66: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG66

Fragmentação Transparente

Hosts não precisam se preocupar com a remontagem, que é feita pela rede

Todos os pacotes devem deixar a rede intermediária através do mesmo roteador– Para que o pacote original possa ser remontado– Não permite explorar rotas alternativas

Overhead gerado por sucessivas fragmentações e remontagens de pacotes

Page 67: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG67

Fragmentação Não-Transparente

Hosts devem ser capazes de remotar os pacotes Aumenta o overhead de cabeçalho

– cada fragmento é um pequeno pacote com cabeçalho completo

Cada fragemento pode passar por uma rota diferente

Um dado fragmento pode necessitar fragementação– ao passar por uma rede com limite ainda mais estrito

Remontagem depende do esquema de numeração dos fragmentos

– que precisa ser robusto na presença de perdas de pacotes

Page 68: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG68

Esquema de Numeração dos Fragmentos

Page 69: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG69

Firewalls

Segregação de tráfego Impedir que tráfego expúrio entre na rede

– vírus, worms, hackers, spam

Impedir que informações valiosas deixem a rede de maneira não autorizada– informações confidenciais, segredos de negócio

Impedir tipos de acesso que podem trazer vulnerabilidades à rede– telnet

Page 70: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG70

Estrutura de uma Firewall

Page 71: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG71

Firewall: Filtro de Pacotes

Roteador equipado com funcionalidade adicional para:– aceitar ou descartar pacotes de acordo com

algum critério programado endereços de origens e destinos aceitáveis endereços de origens e destinos bloqueados protocolos de aplicação aceitáveis (ex.: web, e-mail)

Dois filtros, localizados em redes distintas– Impedindo comunicação direta entre a parte

externa e a parte interna da firewall– Filtro interno: checa pacotes que saem– Filtro externo: checa pacotes que chegam

Page 72: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG72

Firewall: Gateway de Aplicação

Examina os dados que entram e saem da rede no nível das aplicações

Ex.: um gateway de e-mail examinaria o conteúdo das mensagens:– cabeçalho– texto da mensagem– tamanho da mensagem

Page 73: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG73

Firewalls e Redes sem Fio

Firewalls são baseadas na suposição de que não há outros meios de comunicação entre a rede interna e a rede externa

Esta suposição é inválida no caso de redes sem fio

...

Page 74: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG74

A Camada de Rede na Internet

O protocolo IP Endereços IP Sub-redes Protocolos de controle Protocolos de roteamento Multicasting IP Móvel Classless InterDomain Routing IPv6

Page 75: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG75

A Camada de Rede na Internet

Page 76: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG76

Modelo típico de comunicação

Camada de Transporte (TCP, UDP, etc.)

Camada de Rede (IP)

Stream de dados

...Datagramas

(≤64KB)

Camada de Transporte

Camada de Rede (IP)

Stream

...Datagramas

(≤64KB)

...

Fragmentosde datagramas

Page 77: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG77

O Protocolo IP (Internet Protocol): Formato de Pacote

Ordem de Transmissão dos Bits (Big Endian)

Máx: 40 bytes (10 words)

Page 78: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG78

Pacotes IP

Versão– Número da versão do protocolo IP utilizada– Atualmente: 4– Permite transição suave entre versões diferentes do

protocolo

Page 79: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG79

Pacotes IP

IHL (Internet Header Length)– Comprimento do cabeçalho do pacote (em palavras de 32

bits)– Mínimo: 5 (20 bytes); Máximo: 15 (60 bytes)

Page 80: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG80

Pacotes IP

Tipo de serviço– Permite solicitar vários tipos de serviço diferentes– 3 bits de precedência: prioridade do pacote (0: normal, 7:

máx.)– 3 bits de flags: Delay, Throughput, Reliability– Na prática, este campo é ignorado pelos roteadores

Page 81: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG81

Pacotes IP

Comprimento total– Cabeçalho + Dados– Máx.: 65.535 bytes

Page 82: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG82

Pacotes IP

Identificação– Usado no caso de datagramas fragmentados– Indica a qual datagrama o fragmento pertence Fragmentos são transmitidos como pacotes. Isto é, um datagrama pode ser transmitido em um ou mais

pacotes.

Page 83: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG83

Pacotes IP

Bit DF (Don´t Fragment)– Impede que roteadores fragmentem um datagrama

Bit MF (More Fragments)– Indica se o fragmento é (0) ou não o último na seqüência de

fragmentos que compõem um datagrama

Page 84: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG84

Pacotes IP

Fragment Offset– Indica a posição, dentro do datagrama original, onde tem início

o fragmento

Page 85: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG85

Pacotes IP

Time to Live– Contador utilizado para limitar o tempo de vida de um pacote

na rede– Decrementado a cada roteador intermediário pelo qual um

pacote passa no percurso da origem até o destino– Evita que pacotes fiquem trafegando na rede indefinidamente

Page 86: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG86

Pacotes IP

Protocol– Identifica o protocolo de Transporte que gerou os dados

contidos no pacote– Útil quando o IP vai entregar um datagrama à camada de

transporte no destino: que processo chamar– Cada protocolo de Transporte tem um número padrão (RFC

1700)

Page 87: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG87

Pacotes IP

Header Checksum– Código de detecção de erros do cabeçalho– IP não checa erros na parte de dados do pacote– Deve ser re-computado em cada roteador intermediario:

cabeçalho pode mudar ao longo do caminho (campo time to live)

Page 88: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG88

Pacotes IP

Endereços de Origem e de Destino– 32 bits– Identificam a origem e o destino do pacote

Page 89: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG89

Pacotes IP

Campo de Opções

Page 90: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG90

Endereços IP

Endereço único atribuído a computadores ou roteadores presentes na Internet

Composição:– Número da rede– Número da máquina (host)

Máquinas conectadas a mais de uma rede:– através de várias interfaces de rede– um endereço IP para identificar cada interface

5 Classes de endereços: A, B, C, D, E

Page 91: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG91

Endereços IP

Page 92: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG92

Endereços IP: Classes

Classe A– 126 redes com até 16 milhões de hosts cada

Classe B– 16.382 redes com até 64K hosts cada

Classe C– 2 milhões de redes com até 254 hosts cada

Classe D:– Endereços de multicast

Classe E: reservada para uso futuro

Page 93: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG93

Endereços IP: Formato

Notação decimal pontuada Ex.: 192.41.6.20, 200.18.197.65 Primeiro e último números de cada rede:

– este host e broadcast na rede, respectivamente

Page 94: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG94

Sub-redes

Partição de uma rede IP em várias redes– Efeito no endereçamento e roteamento interno– Externamente: visto como uma única rede

Permite um melhor aproveitamento de endereços de rede– Um mesmo número de rede IP pode ser

particionado em várias redes físicas (ex.: LANs)

Subnet mask– Indica quais bits do endereço identificam a sub-

rede e quais identificam uma máquina específica

Page 95: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG95

Subnet Mask

Exemplo:– Rede classe C: 200.18.162.0– Subnet mask: 255.255.255.192– Divide a rede classe C original em 4 sub-redes:

200.18.162.0 a 63, 200.18.162.64 a127, 200.18.162.128 a 191, 200.18.162.192 a 255

1o. e último endereços: this host e broadcast na sub-rede

Page 96: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG96

Processamento de Pacotes nos Roteadores: Sem Sub-redes

Cada roteador tem uma tabela de rotas, com dois tipos de entradas:– (rede, 0): rota para chegar a uma rede distante– (esta_rede, host): rota para máquinas locais

Rotas: interface de rede através da qual um pacote deve ser transmitido para chegar ao destino (rede ou host)

Rota default: utilizada quando o roteador não conhece a rede de destino do pacote

Page 97: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG97

Processamento de Pacotes nos Roteadores: Com Sub-redes

Dois novos tipos de entradas na tabela de rotas:– (esta_rede, sub-rede, 0): rota para chegar a uma das

outras sub-redes– (esta_rede, sub-rede, host): rota para chegar a um host

na sub-rede onde está o roteador

Ao receber um pacote para encaminhamento (destinado a outra sub-rede):

– Endereço IP AND subnet mask: para isolar o número da rede e sub-rede e então fazer o lookup na tabela de rotas

Roteador não precisa manter rotas individuais para hosts em outras sub-redes

Page 98: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG98

Tabela de rotas em um roteador de pequeno porte: Exemplo

fmc@zeus:~> netstat -rKernel IP routing tableDestination Gateway Genmask Flags MSS Window irtt Iface200.137.197.128 apollo.inf.ufg. 255.255.255.192 UG 40 0 0 eth1200.137.197.192 artemis.inf.ufg 255.255.255.192 UG 40 0 0 eth1200.137.197.0 * 255.255.255.192 U 40 0 0 eth1200.137.197.64 * 255.255.255.192 U 40 0 0 eth0default ares.inf.ufg.br 0.0.0.0 UG 40 0 0 eth1

fmc@zeus:~>

fmc@zeus:~> netstat -nrKernel IP routing tableDestination Gateway Genmask Flags MSS Window irtt Iface200.137.197.128 200.137.197.2 255.255.255.192 UG 40 0 0 eth1200.137.197.192 200.137.197.6 255.255.255.192 UG 40 0 0 eth1200.137.197.0 0.0.0.0 255.255.255.192 U 40 0 0 eth1200.137.197.64 0.0.0.0 255.255.255.192 U 40 0 0 eth00.0.0.0 200.137.197.1 0.0.0.0 UG 40 0 0 eth1fmc@zeus:~>

Page 99: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG99

Topologia da rede

zeus.inf.ufg.br

eth0 eth1

200.137.197.64 200.137.197.0

apollo200.18.197.2

200.137.197.128

artemis200.18.197.6

200.137.197.192

ares.inf.ufg.br

200.137.197.1

UFGNetUFGNet

Page 100: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG100

Outro exemplo de tabela de rotas: ares.inf.ufg.br

Destination Gateway Genmask Flags MSS Window irtt Iface

200.137.192.0 0.0.0.0 255.255.255.0 U 1500 0 0 eth0

200.137.197.0 0.0.0.0 255.255.255.192 U 1500 0 0 eth1200.137.197.64 200.137.197.11 255.255.255.192 UG 1500 0 0 eth1200.137.197.128 200.137.197.2 255.255.255.192 UG 1500 0 0 eth1200.137.197.192 200.137.197.6 255.255.255.192 UG 1500 0 0 eth1192.168.0.0 200.137.197.18 255.255.255.0 UG 1500 0 0 eth1192.168.40.0 200.137.197.18 255.255.255.0 UG 1500 0 0 eth10.0.0.0 200.137.192.1 0.0.0.0 UG 1500 0 0 eth0

Ver esboço da topologia da rede no próximo slide

Page 101: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG101

Page 102: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG102

Protocolos de Controle da Internet

Monitoramento, configuração e controle do funcionamento da camada de rede

Pacotes destes protocolos são encapsulados em pacotes IP para transmissão

ICMP ARP RARP BOOTP DHCP

Page 103: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG103

ICMP – Internet Control Message Protocol

Usado pelos roteadores para:– Reportar eventos anômalos– Testar a rede

Exemplo: utilitário ping– Envia um pacote de requisição de “eco” e

aguarda a resposta– Efetua medições:

Tempo de resposta % de pacotes perdidos

Page 104: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG104

ICMP: Tipos de mensagens

Page 105: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG105

ARP – Address Resolution Protocol

Roteadores (camada de rede): utilizam endereços IP de 32 bits

LAN (camada de enlace): utiliza endereços MAC (ex.: endereços Ethernet de 48 bits)

Transmissão de um pacote na rede local:– Encapsular o pacote em um quadro Ethernet– Mapear o endereço IP em um endereço Ethernet

Protocolo ARP dispensa a necessidade de extensas tabelas de mapeamento

Normalmente não usado se destino em outra rede

Page 106: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG106

ARP: Funcionamento

Host de origem do pacote IP efetua o broadcast de um pacote ARP contendo:– Endereço IP do host de destino– Endereços IP e Ethernet do host de origem

Host de destino responde com outro pacote ARP contendo seu próprio end. Ethernet– Aproveita o endereço Ethernet recebido do host de

origem

Mapeamentos de endereços são guardados em uma cache (para evitar outros broadcasts)

Page 107: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG107

ARP: Exemplo

Page 108: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG108

RARP – Reverse Address Resolution Protocol

Dado um endereço Ethernet, qual o endereço IP correspondente?

Útil ao inicializar uma estação sem disco (ou, mais genericamente, estações que não conhecem seu endereço IP)

– Tudo o que a estação conhece é seu endereço MAC– O endereço IP da estação pode mudar caso esta seja

movida para uma rede diferente Estação faz um broadcast RARP, contendo seu

endereço MAC (ex.: end. Ethernet de 48 bits) Servidor RARP responde com o endereço IP da

estação– Cada rede local deve ter um servidor RARP

Page 109: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG109

Protocolos mais sofisticados para a configuração inicial de estações

BOOTP– Endereço IP da estação– Endereço IP do servidor de arquivos contendo a imagem de

memória de estações sem disco– Endereço IP do roteador default– Subnet mask a ser usada

DHCP (Dynamic Host Configuration Protocol)– Flexível quanto ao tipo de informação de configuração a ser

fornecido pelo servidor Utilizam broadcast no nível do protocolo UDP

– propagado pelos roteadores– permite que servidor BOOTP/DHCP esteja em uma rede

diferente

Page 110: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG110

Protocolos de Roteamento na Internet

Rede dividida em:– Sistemas Autônomos (AS)– Backbone conectando os sistemas autônomos

Interior Gateway Routing Protocol– Usado dentro de um AS– OSPF – Open Shortest Path First

Exterior Gateway Routing Protocol– Usado no Backbone da Internet– BGP – Border Gateway Protocol

Page 111: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG111

Estrutura deRoteamentona Internet

Page 112: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG112

OSPF: Características Gerais

Protocolo de domínio público (aberto) Supore a diversas métricas diferentes

– distância física, atraso, etc.

Dinâmico: capaz de se adaptar a mudanças Roteamento baseado em tipo de serviço

– Ex.: pode escolher rotas diferentes para tráfego de tempo-real e tráfego não-tempo-real

Permite balanceamento de carga– Divide a carga entre rotas alternativas

Suporte a redes hierárquicas Suporte a medidas de segurança básicas

Page 113: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG113

OSPF: Funcionamento Básico

Definir rotas ótimas dentro de um mesmo sistema autônomo

Roteadores adjacentes trocam informações de estado dos links (custo) entre si

– Atualizadas periodicamente

Cada roteador constrói sua visão (grafo) da rede– A partir da qual rotas “ótimas” são computadas– Rota: próximo nodo no caminho até o destino

Algoritmo hierárquico– Rede dividida em áreas ligadas por um backbone– Roteador na “borda” de uma área: rotas até o backbone– Rotas parciais são conectadas: área 1 + backbone + área 2

Page 114: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG114

OSPF: Grafoda Rede

Page 115: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG115

BGP: Características Básicas

Protocolo de roteamento que leva em conta questões de natureza política

– Necessário quando se conecta sistemas autônomos com objetivos conflitantes

Ex.: ASes pertencentes a empresas concorrentes

Permite a inclusão de políticas de roteamento. Exemplos:

– Um AS não aceita ser intermediário no roteamento de pacotes para outros ASes

– Não permitir que tráfego seja roteado através de certos ASes

Políticas: configuráveis manualmente– Não são definidas como parte do protocolo

Page 116: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG116

BGP: Funcionamento Básico

Distance Vector Algorithm Roteadores trocam entre si informações

sobre rotas completas Rotas são escolhidas com base em

– Métricas de custo– Políticas de roteamento

Atualizações periódicas– Rotas alternativas podem substituir rotas com

problemas

Page 117: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG117

BGP: Exemplo

Page 118: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG118

Internet Multicasting

Envio de um mesmo pacote para um grupo de receptores simultaneamente– Ex.: atualização de réplicas de um BD distribuído,

tele-conferência Suporte a multicast no IP: endereços Classe D

– 224.0.0.0 a 239.255.255.255– Cada endereço classe D: um grupo de hosts– Até cerca de 250 milhões de grupos

Sem garantias de confiabilidade– Best-effort: Alguns membros do grupo podem não

receber o pacote

Page 119: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG119

Internet Multicasting (2)

Endereços de grupo permanentes– 224.0.0.1: todos os sistemas em uma LAN– 224.0.0.2: todos os roteadores em uma LAN– 224.0.0.5: todos os roteadores OSPF em uma LAN

Endereços de grupo temporários– Devem ser criados explicitamente– Processo requisita ao seu host:

entrada e saída no grupo

– Host mantém uma tabela dos grupos aos quais seus processos estão associados

Page 120: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG120

Internet Multicasting (3)

Implementação através de roteadores habilitados a reconhecer endereços Classe D– Roteadores de Multicast

Protocolo IGMP (Internet Group Management Protocol)– Permite a um roteador de multicast saber quais

grupos têm membros em sua LAN Consultas periódicas aos hosts Host respondem com os endereços de grupo pertinentes

Page 121: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG121

Internet Multicasting (4)

Roteamento de multicasts– Spanning tree (árvore de espalhamento)– Roteadores de multicast trocam entre si

informações sobre os grupos existentes– Cada roteador constrói para si uma spanning tree

para cada grupo “passando” por ele– Roteadores não pertencentes a um grupo não

participam do algoritmo (para aquele grupo específico)

Page 122: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG122

IP Móvel

Endereços IP são ligados a localizações fixas– Ex.: 200.137.197.65 => host 65 na rede 200.137.197

Host móvel (HM)– Migrar para uma rede diferente significaria ter que

assumir um novo endereço IP...– ...E provavelmente ter que anunciá-lo para boa parte

dos roteadores na Internet

Pacotes enviados ao host móvel devem ser entregues– Independente de sua localização física

Page 123: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG123

IP Móvel

Page 124: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG124

IP Móvel: Requisitos

Cada HM deve poder utilizar seu endereço IP original em qualquer lugar/rede

Não fazer mudanças no software de hosts fixos

Não fazer mudanças no software e tabelas de rotas dos roteadores

Maioria dos pacotes enviados para HMs não deve fazer desvios na rede

Sem overhead quando o HM está em sua rede original (i.e., em casa)

Page 125: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG125

IP Móvel: Funcionamento

Rede que aceita visitantes (hosts móveis):– Deve criar um agente estrangeiro (foreign agent)

Rede que permite a mobilidade de seus hosts:– Deve criar um agente “de casa” (home agent)

Na chegada de um HM a uma rede estrangeira:– HM registra-se com o agente estrangeiro local– Agente estrangeiro contacta o agente da rede

original do HM (home agent), indicando o endereço de desvio dos pacotes enviados ao HM

Page 126: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG126

IP Móvel: Funcionamento (2)

Na chegada de um pacote endereçado ao HM em sua rede original:– Pacote chega por um dado roteador da rede– Roteador difunde um pacote ARP para obter o

endereço MAC (Ethernet) do host– Home agent responde com seu próprio endereço

MAC– Roteador transmite o pacote para o home agent– Home agent encapsula o pacote original em um

outro pacote IP (tunneling) e o envia ao foreign agent atual

– Foreign agent recebe o pacote, desencapsula o pacote original e o entrega ao HM

Page 127: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG127

IP Móvel: Funcionamento (3)

Evitando futuros redirecionamentos:– Ao receber o primeiro pacote endereçado a um

HM distante...– ...Home agent envia o endereço do agente

estrangeiro (da rede onde o HM se encontra) para o transmissor...

– ...De forma que novos pacotes sejam enviados diretamente para a rede na qual o HM se encontra atualmente

Page 128: Teleprocessamento e Redes Capítulo 4: Camada de Rede Prof. Fábio M. Costa INF / UFG

Prof. Fábio M. Costa - INF / UFG128

IP Móvel: Outras questões

Invalidação de tabelas ARP quando HM migra HM sendo seu próprio agente estrangeiro Como encontrar um agente

– Agentes (home e estrangeiro) anunciam sua presença a quem possa interessar

Através de broadcasts (difusão) na rede local

– HMs difundem requisição pelo agente estrangeiro

HMs que deixam uma rede estrangeira abruptamente: registro no agente válido por tempo determinado

Segurança: agente estrangeiro deve provar que, de fato o verdadeiro HM está em sua rede