Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1
Curso de Especializao em Redes de Computadores INF502
2
Curso de Especializao em Redes de Computadores INF502
Camada de Redes
Objetivos do Captulo:
Entender os principais princpios do servio
da camada de redes :
Modelos de servio da camada de redes Encaminhamento e roteamento Como um roteador funciona Roteamento (seleo de caminhos) Lidando com escala IPv
Implementaes na Internet
3
Curso de Especializao em Redes de Computadores INF502
Roteiro
4. 1 Introduo 4.2 Circuitos virtuais x 4.5 Algoritmos de
roteamento
4.6 Roteamento na
Internet
4.7 Roteamento
Broadcast e multicast
4
Curso de Especializao em Redes de Computadores INF502
Interconexo de Redes
5
Curso de Especializao em Redes de Computadores INF502
A Internet
6
Curso de Especializao em Redes de Computadores INF502
A Internet
7
Curso de Especializao em Redes de Computadores INF502
(37% da populao)
fonte: http://www.internetworldstats.com/stats.htm
8
Curso de Especializao em Redes de Computadores INF502
remetente receptora protocolos da camada de rede em cada estao, roteador trs funes importantes:
rede enlace fsica rede enlace fsica aplicao transporte rede enlace fsica
estabelecimento da chamada:
Network layer
Transporta segmentos
do transmissor ao repector Encapsula segmentos em datagramas No receptor, desencapsula e entrega a camada de transporte roteadores examina cabealho de todos os datagrams que passam pelo roteador
application transport network data link physical network data link physical network data link physical network data link physical network data link physical
network network data link data link physical physical network data link physical network data link physical application transport network data link physical
10
Curso de Especializao em Redes de Computadores INF502
Roteamento e encaminhamento
routing algorithm
1
3 2
11
Curso de Especializao em Redes de Computadores INF502
A abstrao mais importante provida pela camada de rede: circuito virtual ou datagrama?
entre pacotes (sem jitter)? entrega sem perdas? entrega ordenada? realimentar informao sobre congestionamento ao remetente?
? ? ?
12
Curso de Especializao em Redes de Computadores INF502
destino
Tabela Encaminhamento
Faixa Endereo Destino 11001000 00010111 00010000 00000000 at 11001000 00010111 00010111 11111111 11001000 00010111 00011000 00000000 at 11001000 00010111 00011000 11111111 11001000 00010111 00011001 00000000 at 11001000 00010111 00011111 11111111 caso contrrio
Interface Enlace
14
Curso de Especializao em Redes de Computadores INF502
15
Curso de Especializao em Redes de Computadores INF502
Circuitos virtuais
caminho da-origem-ao-destino se comporta como um circuito telefnico
ao CV
Implementao CV
Um circuito virtual consiste de:
1. 2. 3.
Caminho entre origem e destino Identificador CV, um para cada enlace ao longo do caminho Entradas nas tabelas de roteamento nos roteadores ao longo do caminho
Pacote carrega identificador de CV ao invs de endereo destino Identificador de CV pode mudar a cada enlace
17
Curso de Especializao em Redes de Computadores INF502
aplicao 6. dados recebidos aplicao transporte 5. comea fluxo de dados transporte rede 4. conexo completa 3. chamada aceita rede 1. inicia chamada enlace 2. chegada de chamada enlace fsica fsica
18
Curso de Especializao em Redes de Computadores INF502
Tabela de comutao no roteador a noroeste: Interface de entrada 1 2 3 1 VC # de entrada 12 63 7 97 Interface de sada 2 1 2 3 VC # de sada 22 18 17 87
20
Curso de Especializao em Redes de Computadores INF502
ATM
evoluiu da telefonia
computadores conversao humana: servio elstico, sem temporizao estrita, reqs. temporais estritos requisitos de sistemas terminais confiabilidade inteligentes (computadores) requer servio podem se adaptar, exercer garantido controle, recuperar de sistemas terminais burros erros telefones ncleo da rede simples, complexidade dentro da complexidade na borda rede muitos tipos de enlaces caractersticas diferentes
21
Curso de Especializao em Redes de Computadores INF502
Roteiro
4. 1 Introduo 4.2 Circuitos virtuais x 4.5 Algoritmos de
roteamento
4.6 Roteamento na
Internet
4.7 Roteamento
Broadcast e multicast
22
Curso de Especializao em Redes de Computadores INF502
23
Curso de Especializao em Redes de Computadores INF502
Camada fsica: recepo de bits Camada de enlace: p.ex., Ethernet veja captulo 5
Comutao descentralizada:
dado o dest do datagrama, procura porta
de sada usando tab. de rotas na memria da porta de entrada meta: completar processamento da porta de entrada na velocidade da linha filas: se datagramas chegam mais rpido que taxa de re-envio para matriz de comutao
24
Curso de Especializao em Redes de Computadores INF502
Tamanho do Buffer
RFC 3439 recomenda que tamano mdio do
25
Curso de Especializao em Redes de Computadores INF502
das portas de entrada juntas -> pode haver filas nas portas de entrada Bloqueio cabea-de-linha (Head-of-the-Line - HOL): datagrama na cabea da fila impede outros na mesma fila de avanarem
26
Curso de Especializao em Redes de Computadores INF502
27
Curso de Especializao em Redes de Computadores INF502
Barramento do Sistema
Roteadores modernos: processador da porta de entrada consulta tabela, copia para a memria Cisco Catalyst 8500
28
Curso de Especializao em Redes de Computadores INF502
entrada memria da porta de sada via um barramento compartilhado conteno pelo barramento: taxa de comutao limitada pela largura de banda do barramento Barramento de 1 Gbps, Cisco 1900: velocidade suficiente para roteadores de acesso e corporativos (mas no regionais ou de backbone)
29
Curso de Especializao em Redes de Computadores INF502
desenvolvidas inicialmente para interligar processadores num multiprocessador Projeto avanado: fragmentar datagrama em clulas de tamanho fixo, comutar clulas atravs da matriz de comutao. Cisco 12000: comuta N Gbps pela rede de interconexo.
30
Curso de Especializao em Redes de Computadores INF502
Porta de Sada
matriz de comutao mais rapidamente que a taxa de transmisso Disciplina de escalonamento escolhe um dos datagramas enfileirados para transmisso
31
Curso de Especializao em Redes de Computadores INF502
Roteiro
4. 1 Introduo 4.2 Circuitos virtuais x 4.5 Algoritmos de
roteamento
4.6 Roteamento na
Internet
4.7 Roteamento
Broadcast e multicast
32
Curso de Especializao em Redes de Computadores INF502
Camada de rede
Tabela de rotas
33
Curso de Especializao em Redes de Computadores INF502
Formato do datagrama IP
nmero da verso do protocolo IP comprimento do cabealho (bytes) tipo dos dados (DS) nmero mximo de enlaces restantes (decrementado a cada roteador) protocolo da camada superior ao qual entregar os dados 32 bits comprimento servio cab incio do ident. 16-bits bits fragmento sobre- camada checksum vida TTL superior Internet ver endereo IP de origem 32 bits endereo IP de destino 32 bits Opes (se tiver) p.ex. temporizador, registrar rota seguida, especificar lista de roteadores a visitar. comp. tipo de comprimento total do datagrama (bytes) para fragmentao/ remontagem
Qual o overhead com TCP? 20 bytes of TCP 20 bytes of IP = 40 bytes + overhead aplic.
34
remontagem
35
Curso de Especializao em Redes de Computadores INF502
36
Curso de Especializao em Redes de Computadores INF502
Roteiro
4. 1 Introduo 4.2 Circuitos virtuais x 4.5 Algoritmos de
roteamento
4.6 Roteamento na
Internet
4.7 Roteamento
Broadcast e multicast
37
Curso de Especializao em Redes de Computadores INF502
de 32-bits para interface de estao, roteador interface: conexo entre estao, roteador e enlace fsico
223.1.3.27
223.1.3.1
223.1.3.2
roteador tpico tem mltiplas interfaces estao pode ter mltiplas interfaces endereo IP associado interface
Endereamento IP
endereo IP: parte de rede (bits de mais alta ordem) parte de estao (bits de mais baixa ordem)
223.1.1.1 223.1.1.2 223.1.1.4 223.1.1.3 223.1.2.1 223.1.2.9 223.1.2.2
223.1.3.27
LAN
223.1.3.2
Esta rede consiste de 3 redes IP (para endereos IP comeando com 223, os primeiros 24 bits so a parte de rede)
39
datagrama IP:
aampos end. IP end. IP misc origem dest
223.1.1.4 223.1.1.4
datagrama permanece
B
223.1.1.3 223.1.3.1 223.1.3.27
40
Curso de Especializao em Redes de Computadores INF502
Endereos IP
dada a noo de rede, vamos reexaminar endereos IP: endereamento baseado em classes:
classe A B C D
0 rede 10 110 1110 rede rede endereo multiponto estao estao estao
1.0.0.0 to 127.255.255.255 128.0.0.0 to 191.255.255.255 192.0.0.0 to 223.255.255.255 224.0.0.0 to 239.255.255.255
32 bits
41
Curso de Especializao em Redes de Computadores INF502
uso ineficiente e esgotamento do espao de endereos p.ex., rede da classe B aloca endereos para 65K estaes, mesmo se houver apenas 2K estaes nessa rede parte de rede do endereo de comprimento arbitrrio formato de endereo: a.b.c.d/x, onde x no. de bits na parte de rede do endereo
parte de rede parte de estao
43
Curso de Especializao em Redes de Computadores INF502
DHCP
A
223.1.1.1 223.1.1.2 223.1.1.4
DHCP server
223.1.2.9
223.1.2.1
B
223.1.1.3 223.1.3.1 223.1.3.27
223.1.2.2 223.1.3.2
46
Curso de Especializao em Redes de Computadores INF502
time
47
Curso de Especializao em Redes de Computadores INF502
10.0.0.1
10.0.0.2
destino nesta rede tem endereo local tem o mesmo endereo NAT IP: 138.76.29.7, diferentes nmeros 10.0.0/24 para fonte, e de destino o usual de portas fontes
48
Curso de Especializao em Redes de Computadores INF502
No h necessidade de alocar faixas de endereos de um ISP apenas um endereo IP usado para todos os dispositivos Permite mudar o endereo dos dispositivos internos sem necessitar notificar o mundo externo; Permite a mudana de ISPs sem necessitar mudar os endereos dos dispositivos internos da rede local Dispositivos internos a rede, no so visveis nem endereaveis pelo mundo externo (melhora segurana);
49
Curso de Especializao em Redes de Computadores INF502
porta #) de cada datagrama de sada para (endereo NAT IP, nova porta #) . . . clientes/servidores remotos iro responder usando (endereo NAT IP, nova porta #) como endereo destino.
fonte, porta #) para (endereos NAT IP, nova porta #) Datagramas qeu chegam: trocar (endereo NAT IP, nova porta #) no campo de destino de cada datagrama que chega com o correspondente (endereo IP fonte, porta #) armazenado na tabela NAT 50
Curso de Especializao em Redes de Computadores INF502
guardar (na tabela de traduo de endereos NAT): os pares de traduo de endereos (endereo IP
1
10.0.0.4
S: 128.119.40.186, 80 D: 10.0.0.1, 3345
10.0.0.1
10.0.0.2
138.76.29.7
S: 128.119.40.186, 80 D: 138.76.29.7, 5001
10.0.0.3 4: roteador NAT muda o 3: resposta chega no endereo endereo de destino de de destino: 138.76.29.7, 5001 para 10.0.0.1, 3345 138.76.29.7, 5001
51
Curso de Especializao em Redes de Computadores INF502
Endereo servidor 10.0.0.1 na Client rede local (cliente no pode usar como endereo destino) Somente um endereo (NATed) externamente visvel: 138.76.29.7
10.0.0.1
?
10.0.0.4
138.76.29.7
manualmente para encaminhar requisio de conexo a uma certa porta do servidor exemplo., (123.76.29.7, port 2500) sempre envia para 10.0.0.1 port 25000
NAT router
53
Curso de Especializao em Redes de Computadores INF502
Universal Plug and Play (UPnP) Internet Gateway Device (IGD) permite NATted host to: Aprende endereo IP publico (138.76.29.7) 138.76.29.7 Adiciona/remove mapeamento de porta (por tempo determinado) i.e., automatiza mapeamento de configurao de porta NAT
10.0.0.1
IGD
10.0.0.4
NAT router
54
Curso de Especializao em Redes de Computadores INF502
Problema NAT
soluo 3: relaying (usado no Skype)
Cliente NATed estabelece conexo com relay Cliente externo conecta com relay Relayinterconecta pacotes entre conexes
2. Conexo ao relay iniciado pelo cliente Client 3. relaying estabelecido 1. Conexo ao relay iniciado pelo NATed host
138.76.29.7
10.0.0.1
NAT roteador
55
Curso de Especializao em Redes de Computadores INF502
Roteiro
4. 1 Introduo 4.2 Circuitos virtuais x 4.5 Algoritmos de
roteamento
4.6 Roteamento na
Internet
4.7 Roteamento
Broadcast e multicast
56
Curso de Especializao em Redes de Computadores INF502
Tipo 0 3 3 3 3 3 3 4 8 9 10 11 12
Cdigo descrio 0 resposta de eco (ping) 0 rede dest. inalcanvel 1 estao dest inalcanvel 2 protocolo dest inalcanvel 3 porta dest inalcanvel 6 rede dest desconhecida 7 estao dest desconhecida 0 abaixar fonte (controle de congestionamento - usado) 0 pedido eco (ping) 0 anncio de rota 0 descobrir roteador 0 TTL (sobrevida) expirada 0 erro de cabealho IP
57
Curso de Especializao em Redes de Computadores INF502
ICMP eTraceroute
Fonte UDP envia uma srie
de segmentos
Roteador descarta datagrama Envia para a fonte um datagrama ICMP (type 11, code 0) Mensagem inclui nome de roteador e endereo IP
chega, finte calcula RTT Traceroute faz isso trs vezes Critrio de parada Segmento UDP eventualmente chega ao destinatrio Destinatrio ICMP retorna mensagem host unreachable (type 3, code 3) Quando fonte recebe mensagem, ICMP para.
58
Curso de Especializao em Redes de Computadores INF502
Roteiro
4. 1 Introduo 4.2 Circuitos virtuais x 4.5 Algoritmos de
roteamento
4.6 Roteamento na
Internet
4.7 Roteamento
Broadcast e multicast
59
Curso de Especializao em Redes de Computadores INF502
IPv6
Motivao inicial: espao de endereos de 32-
60
Curso de Especializao em Redes de Computadores INF502
Anycast
Unicast Multicast Anycast Broadcast
61
Curso de Especializao em Redes de Computadores INF502
Cabealho IPv6
Prioridade: identifica prioridade entre datagramas no fluxo Rtulo do Fluxo: identifica datagramas no mesmo fluxo
(conceito de fluxo mal definido). Prximo cabealho: identifica protocolo da camada superior para os dados
62
Curso de Especializao em Redes de Computadores INF502
reduzir tempo de processamento a cada roteador Opes: permitidas, porm fora do cabealho, indicadas pelo campo Prximo Cabealho ICMPv6: verso nova de ICMP
tipos adicionais de mensagens, p.ex. Pacote Muito Grande funes de gerenciamento de grupo multiponto
63
Curso de Especializao em Redes de Computadores INF502
Estatstica IPv6
64
Curso de Especializao em Redes de Computadores INF502
65
Curso de Especializao em Redes de Computadores INF502
atualizados simultaneamente
dias de mudana geral inviveis Como a rede pode funcionar com uma mistura de roteadores IPv4 e IPv6?
Duas abordagens propostas: Pilhas Duais: alguns roteadores com duas pilhas (v6, v4) podem traduzir entre formatos Tunelamento: datagramas IPv6 carregados em datagramas IPv4 entre roteadores IPv4
66
Curso de Especializao em Redes de Computadores INF502
67
Curso de Especializao em Redes de Computadores INF502
Pilhas Duais
68
Curso de Especializao em Redes de Computadores INF502
Tunelamento
69
Curso de Especializao em Redes de Computadores INF502
ICMPv6
Verso do protocolo ICMP utilizada pelo
Descoberta de vizinhana (antes providas pelo protocolo ARP) Gerenciamento de grupos Multicast (antes providas pelo protocolo IGMP).
70
Roteiro
4. 1 Introduo 4.2 Circuitos virtuais x 4.5 Algoritmos de
roteamento
4.6 Roteamento na
Internet
4.7 Roteamento
Broadcast e multicast
71
Curso de Especializao em Redes de Computadores INF502
Roteamento
routing algorithm
1
3 2
4-72
Network Layer
Roteamento
protocolo de roteamento
meta: determinar caminho (seqncia de roteadores) bom pela rede da origem ao destino A
5 2 1
B
2
3 3 1
C
1
Abstrao de grafo para algoritmos de roteamento: ns do grafo so roteadores arestas do grafo so os enlaces fsicos
F
2
caminho bom: tipicamente significa caminho de menor custo outras definies so possveis
73
Esttico ou dinmico?
Esttico: rotas mudam lentamente com o tempo Dinmico: rotas mudam mais rapidamente atualizao peridica em resposta a mudanas nos custos dos enlaces
74
Curso de Especializao em Redes de Computadores INF502
enlaces conhecidos por todos os ns realizado atravs de difuso do estado dos enlaces todos os ns tm mesma info. calcula caminhos de menor custo de um n (origem) para todos os demais gera tabela de rotas para aquele n iterativo: depois de k iteraes, sabemos menor custo p/ k destinos
p(V): n antecessor no
caminho da origem ao n V, imediatamente antes de V
N: conjunto de ns cujo
caminho de menor custo j foi determinado
75
O algoritmo de Dijkstra
1 Inicializao: 2 N = {A} 3 para todos os ns V 4 se V for adjacente ao n A 5 ento D(V) = c(A,V) 6 seno D(V) = infinito 7 8 Repete 9 determina W no contido em N tal que D(W) o mnimo 10 adiciona W ao conjunto N 11 atualiza D(V) para todo V adjacente ao n W e ainda no em N: 12 D(V) = min( D(V), D(W) + c(W,V) ) 13 /* novo custo ao n V ou o custo velho a V ou o custo do 14 menor caminho ao n W, mais o custo de W a V */ 15 at que todos ns estejam em N
76
Curso de Especializao em Redes de Computadores INF502
B A
1 2 2
3 3 1
C
1
F
2
77
A
0 0
1+e e
B
1
2+e
A
1+e 1
0 0
0 1
A
0 0
2+e
2+e
A
1+e 1
0 e
C
e
C 1+e
inicialmente
recalcula rotas
recalcula
recalcula
78
assncrono:
os ns
no precisam
distribudo:
cada n comunica
y N x sabe o custo para seu vizinho v c(x,v) N x mantm vetor distncia Dx = [Dx(y): y N] N x mantm informao do vetor distncia dos seus vizinhos
Exemplo
5 2 1
v
2
3 3 1
w
1
z
2
4-82
Network Layer
A 1 7 6 4
B 14 8 9 11
D 5 5 4 2 A B C D
Tabela de distncias
Tabela de rotas
83
Distribudo:
cada n avisa a seus vizinhos
recalcula tabela de
distncias
85
Curso de Especializao em Redes de Computadores INF502
x y z Tabela n De
y
7
x y z 71 0
De
time
87
Curso de Especializao em Redes de Computadores INF502
Dx(y) = min{c(x,y) + Dy(y), c(x,z) + Dz(y)} = min{2+0 , 7+1} = 2 Custo para x y z x 0 2 3 y 2 0 1 z 7 1 0 Custo para x y z x 0 2 7 y 2 0 1 z 7 1 0 Custo para x y z x 0 2 7 y 2 0 1 z 3 1 0 De De De De
De
x y z Tabela n De
y
7
x y z 71 0
De
De
enlace Atualiza informao de roteamento, recalcula vetor Se distncias alterada, notifica vizinhos
y
50
No tempo t0, y detecta mudanca no custo e notifica vizinho No tempo t1, z recebe atualizao de y e atualiza sua tabela , Computa um novo custo para x e envia para seus vizinhos a sua VD No tempo t2, y recebe a atualizao de z e atualiza a sua tabela de distncia, o menor custo de y no se altera e consequentemente no envia nenhuma mensagem para z
89
Curso de Especializao em Redes de Computadores INF502
60
y
50
Reverso envenenado:
Se Z rotea atravs de Y
para chegar a X :
Z diz a Y que sua distncia a x infinita, de tal forma que Y no vai rotear atravs de Z
90
Curso de Especializao em Redes de Computadores INF502
enlace
cada n calcula sua prpria tabela um n VD pode anunciar um custo de caminho incorreto a tabela de cada n usada pelos outros ns
erros se propagam pela rede
Rapidez de Convergncia
EE: algoritmo O(n**2) requer
VD:
O(nE) mensagens podem ocorrer oscilaes VD: varia tempo para convergir podem ocorrer rotas cclicas problema de contagem ao infinito
91
Roteamento Hierrquico
Neste estudo de roteamento fizemos uma idealizao: todos os roteadores idnticos rede no hierarquizada (flat) no verdade, na prtica escala: 200 milhes de destinos:
impossvel guardar todos
autonomia administrativa
internet = rede de redes cada administrador de rede
92
Curso de Especializao em Redes de Computadores INF502
Roteamento Hierrquico
agregar roteadores em
roteadores de borda
roteadores especiais no
regies, sistemas autnomos (SAs) roteadores no mesmo SA usam o mesmo protocolo de roteamento
protocolo de roteamento intra-SA roteadores em SAs diferentes podem usar diferentes protocolos de roteamento intra-SA
SA usam protocolo de roteamento intra-SA com todos os demais roteadores no SA tambm responsveis por rotear para destinos fora do SA usam protocolo de roteamento inter-SA com outros roteadores de borda
93
Roteadores de borda:
fazem roteamento inter-SA entre si fazem roteamento intra-SA com outros roteadores do seu prprio SA
camada de rede
94
Curso de Especializao em Redes de Computadores INF502
Estao e2 b
Estao e1
roteamento Intra-SA no SA B
recebe datagrama destinado para roteador em outro : Para qual roteador deve enviar o pacote?
Propagar para qual destinatrios pode-se chegar atravs de AS2 e de AS3 2. Propagar informao de alcancabilidade atravs de AS1 Tarefa de roteamento intra-domnio!
1.
3a 3b AS3 1a
3c
2a 1c 1d 1b AS1
2c
AS2
2b
96
Curso de Especializao em Redes de Computadores INF502
a submet x alcancvel atravs de AS3 (gateway 1c) mas no via AS2. Protocolo inter-SA propoaga informao de alcancabilidade para todos roteadores internos Roteador 1d determina atravs de informao de roteamento intra-SA qual interface I est no menor caminho para 1c. Instala tabela de encaminhamento (x,I) x
3a 3b AS3 1a 3c 2a 1c 1d 1b AS1 2c 2b AS2
97
Curso de Especializao em Redes de Computadores INF502
protocolo inter-SA que a subrede x alcancvel de AS3 e de AS2. Para configyrar a tabela de encamihamento, o roteador 1d tem que determinar atravs de qual gateway ele deve encaminhar pacote ao destinatrio x. Esta tambm uma tarefa do protocolo inter-SA
3c
x
2a 1c 1a 1d 1b AS1
98
Curso de Especializao em Redes de Computadores INF502
3a 3b AS3
2c
AS2
2b
domnio que a sub-rede x alcancvel de AS3 e deAS2. Para configurar a tabela, o roteador 1d deve determinar atravs de qual gateway, deve enviar os pacotes para o destinatrio x. Esta tambm uma tarefa do protocolo inter-domnio prximo.
Aprende atravs dos protocolos inter-domnio que a subrede x alcancvel atravs de mltiplos gateways
Utilize informaes providas pelos protocolos intra-SA para determinar custo do menor caminho para cada gateway
Determine atravs da tabela de encaminhamento A interface Para o gateway Com menor custo
99
Curso de Especializao em Redes de Computadores INF502
Roteiro
4. 1 Introduo 4.2 Circuitos virtuais x 4.5 Algoritmos de
roteamento
4.6 Roteamento na
Internet
4.7 Roteamento
Broadcast e multicast
100
Curso de Especializao em Redes de Computadores INF502
Roteamento na Internet
A Internet Global consiste de Sistemas Autonnomos
SA Folha: empresa pequena SA com Mltipla Conectividade: empresa grande (sem trnsito) SA de Trnsito: provedor
Roteamento em dois nveis: Intra-SA: administrador responsvel pela escolha Inter-SA: padro nico
101
Curso de Especializao em Redes de Computadores INF502
Roteamento Intra-SA
Tambm conhecido como Interior Gateway
RIP: Routing Information Protocol OSPF: Open Shortest Path First IGRP: Interior Gateway Routing Protocol (proprietrio da Cisco)
103
Curso de Especializao em Redes de Computadores INF502
104
Curso de Especializao em Redes de Computadores INF502
RIP: exemplo
z w A x D C
Rede Destino Prximo Roteador No. de enlaces ao destino
y B
...
w y z x
.
A B B -.
Tabela de rotas em D
2 2 7 1
....
105
Curso de Especializao em Redes de Computadores INF502
106
Curso de Especializao em Redes de Computadores INF502
processo de nvel de aplicao chamado routed (routing daemon) anncios enviados em pacotes UDP, repetidos periodicamente
107
Curso de Especializao em Redes de Computadores INF502
Trs redes vizinhas diretas da classe C (LANs) Roteador apenas sabe das rotas s LANs vizinhas Roteador default usado para subir Rota de endereo multiponto: 224.0.0.0 Interface loopback (para depurao)
108
Curso de Especializao em Redes de Computadores INF502
disseminao de pacotes EE Mapa da topologia a cada n Clculo de rotas usando o algoritmo de Dijkstra
109
Curso de Especializao em Redes de Computadores INF502
impedir intruso maliciosa); conexes TCP usadas Caminhos Mltiplos de custos iguais permitidos (o RIP permite e usa apenas uma rota) Para cada enlace, mltiplas mtricas de custo para TOS diferentes (p.ex, custo de enlace de satlite colocado como baixo para melhor esforo; alto para tempo real) Suporte integrado para ponto a ponto e multiponto: OSPF multiponto (MOSPF) usa mesma base de dados de topologia usado por OSPF OSPF hierrquico em domnios grandes.
110
Curso de Especializao em Redes de Computadores INF502
OSPF Hierrquico
111
Curso de Especializao em Redes de Computadores INF502
OSPF Hierrquico
Hierarquia de dois nveis: rea local, backbone.
Anncios de EE disseminados apenas na mesma rea cada n possui topologia detalhada da rea; apenas sabe a direo (caminho mais curto) para redes em outras reas (alcanadas atravs do backbone). Roteador de fronteira de rea: sumariza distncias s redes na sua prpria rea, anuncia a outros roteadores de fronteira de rea. Roteadores do backbone: realizam roteamento OSPF limitado ao backbone. Roteadores de fronteira: ligam a outros SAs.
112
Curso de Especializao em Redes de Computadores INF502
banda, confiabilidade, carga, etc) usa TCP para trocar mudanas de rotas Roteamento sem ciclos via Distributed Updating Algorithm (DUAL) baseado em computao difusa
113
Curso de Especializao em Redes de Computadores INF502
Roteamento Inter-SA
114
Curso de Especializao em Redes de Computadores INF502
Operao BGP
Q: O que um roteador BGP faz?
Envia anncio de rotas para seus vizinhos; Recebe e filtra anncios de rotas dos seus vizinhos
diretamente conectados Escolha da rota . Para rotear para o destino X, qual caminho (entre tantos anunciados) deve ser seguindo?
115
Curso de Especializao em Redes de Computadores INF502
BGP
BGP (Border Gateway Protocol): o padro de fato para uso na Internet BGP prov cada AS dos meios para: 1. Obter informaes de alcance de sub-rede dos Ass. Vizinhos 2. Propagar informaes de alcance para todos os roteadores internos ao AS 3. Determinar boas rotas para as sub-redes baseado em informaes de alcance e poltica Permite que uma subnet comunique sua existncia para o resto da Internet: Estou aqui
116
Curso de Especializao em Redes de Computadores INF502
Pares de roteadores (BGP peers) trocam informaes de roteamento por conexes TCP semipermanentes: sesses BGP Note que as sesses BGP no correspondem aos links fsicos Quando AS2 comunica um prefixo ao AS1, AS2 est prometendo que ir encaminhar todos os datagramas destinados a esse prefixo em direo ao prefixo AS2 pode agregar prefixos em seu comunicado
117
Curso de Especializao em Redes de Computadores INF502
Em cada sesso eBGP entre 3a e 1c, AS3 envia informaes de alcance de prefixo para AS1. 1c pode ento usar iBGP para distribuir essa nova informao de alcance de prefixo para todos os roteadores em AS1 1b pode recomunicar essa nova informao para AS2 por meio da sesso eBGP 1b-para-2a. Quando um roteador aprende um novo prefixo, ele cria uma entrada para o prefixo em sua tabela de roteamento.
118
Curso de Especializao em Redes de Computadores INF502
Quando se comunica um prefixo, o comunicado inclui os atributos do BGP. Prefixo + atributos = rota Dois atributos importantes: AS-PATH: contm os ASs pelos quais o comunicado para o prefixo passou: AS 67 AS 17 NEXT-HOP: Indica o roteador especfico interno ao AS para o AS do prximo salto (next-hop). (Pode haver mltiplos links do AS atual para o AS do prximo salto.) Quando um roteador gateway recebe um comunicado de rota, ele usa poltica de importao para aceitar/rejeitar.
119
Curso de Especializao em Redes de Computadores INF502
Um roteador pode aprender mais do que 1 rota para o mesmo prefixo. O roteador deve selecionar uma rota Regras de eliminao: Atributo de valor de preferncia local: deciso de poltica AS-PATH (caminho) mais curto Roteador do NEXT-HOP (prximo salto) mais prximo: roteamento da batata quente Critrios adicionais
120
Curso de Especializao em Redes de Computadores INF502
Mensagens
Mensagens BGP: OPEN: abre conexo TCP para o peer e autentica o transmissor UPDATE: comunica novo caminho (ou retira um antigo) KEEPALIVE mantm a conexo ativa na ausncia de atualizaes (updates); tambm ACKs OPEN request NOTIFICATION: reporta erros em mensagens anteriores; tambm usado para fechar a conexo
121
Curso de Especializao em Redes de Computadores INF502
A,B,C so redes do provedor X,W,Y so clientes (das redes do provedor) X dual-homed: anexados a duas redes X no quer rotear de B via X para C ento X no comunicar ao B uma rota para C
122
Curso de Especializao em Redes de Computadores INF502
A comunica ao B o caminho AW B comunica ao X o caminho BAW B deveria comunicar ao C o caminho BAW? De jeito nenhum! B no obtm nenhum rendimento em rotear CBAW pois nem W nem C so seus clientes B quer forar C a rotear para W via A B quer rotear somente de/para seus clientes!
123
Curso de Especializao em Redes de Computadores INF502
Roteiro
4. 1 Introduo 4.2 Circuitos virtuais x 4.5 Algoritmos de
roteamento
4.6 Roteamento na
Internet
4.7 Roteamento
Broadcast e multicast
125
Curso de Especializao em Redes de Computadores INF502
Difuso (Broadcast)
Duplicao na origem versus duplicao na rede. (a) duplicao na origem, (b) duplicao na rede
126
Curso de Especializao em Redes de Computadores INF502
Duplicao na rede
Dilvio: quando roteador recebe pacote,
envia para todos Problemas de ciclo e tempestade Dilvio controlado: s envia para vizinhos caso no tenha enviado anteriormente Ou controla informao em tabela ou faz encaminhamento caminho spanning tree Ns no recebem pacotes duplicatas
127
Curso de Especializao em Redes de Computadores INF502
Spanning Tree
Construo de spanning tree, Ns encaminham pela spanning tree
A c B c D F E G F E G A B
128
Curso de Especializao em Redes de Computadores INF502
A
3
A B c D
5
c
4 2
D F G E G
F
1
Roteamento Multicast
Objetivo: encontrar rvore find a tree (or
rvore: nem todas rotas so utilizadas Baseada na fonte: diferentes rvores de cada transmissor para um receptor rvore compartilhada: mesma rvore usada por todos os membros do grupo
Shared tree
Source-based trees
Algoritmo de Dijkstra
S: source R1 1 R2 3 R3 R6 4 6 R7 2 R4 5 R5
LEGEND Roteadores com membros Dogrupo associados Roteadores sem membros do grupo associado i Enlaces usados para encaminhar i indica ordem em que o enlace foi adicionado pelo algoritmo
ele transmite o pacote em todos os seus enlaces de sada (exceto por aquele em que recebeu o pacote) apenas se o pacote tiver sido recebido atravs do enlace que est no seu caminho mais curto at o transmissor (origem). Note que o roteador no precisa conhecer o caminho mais curto at a origem, mas apenas o prximo roteador no seu caminho mais curto unicast at a origem.
133
Curso de Especializao em Redes de Computadores INF502
Problema: G e outros roteadores a partir dele receberiam pacotes multicast apesar de no terem conexo com nenhum host participante do grupo! Soluo: Podar a rvore!
134
Curso de Especializao em Redes de Computadores INF502
Poda
Mensagens de poda so enviadas upstream,
S: source R1 R2 R4 P R5 R3 R6 P R7
LEGEND router with attached group member router with no attached group member prune message links with multicast forwarding
conectando todos roteadores do grupo problema NP-completo exelentes heuristicas No usada na pratica:
Computacionalmente complexa Informao sobre toda rede necessria Necessidade de re-execuo a cada alterao de membros
join-msg processada por roteadores intermedirios e repassada ao centro join-msg ou chega a um n da rvore ou ao
centro Caminho feito pela mensagem join-msg torna-se novo caminho para o roteador
curto a partir de cada origem. Este um algoritmo de EE (cada roteador deve conhecer o estado de cada enlace na rede). Mais simples: envio pelo caminho reverso (RPF Reverse Path Forwarding)
139
Curso de Especializao em Redes de Computadores INF502
alimentao de dados: cotaes da bolsa de valores; atualizao de cache WWW; ambientes virtuais interativos distribudos, etc.
multicast? Como enderear um datagrama a ser enviado para estes receptores. No d para incluir o endereo IP de cada um dos destinos no cabealho do datagrama!
No funciona para um grande nmero de receptores; requer que o transmissor conhea a identidade e endereos de cada um dos destinatrios.
Conceito de grupo Multicast: uso de indireo Hosts endeream os datagramas IP para o grupo multicast Roteadores encaminham os datagramas multicast para os hosts que se juntaram ao grupo multicast
142
Curso de Especializao em Redes de Computadores INF502
Grupos Multicast
Endereos classe D na Internet so reservados para multicast:
Semntica de grupo de hosts: qualquer um pode se juntar (receber) a um grupo multicast qualquer um pode enviar para um grupo multicast nenhuma identificao na camada de rede para os hosts membros necessrio: infraestrutura para enviar datagramas multicast para todos os hosts que se juntaram ao grupo
143
Curso de Especializao em Redes de Computadores INF502
hosts ao grupo?
a participao restrita? Caso seja restrita, quem determina a restrio? Os membros do grupo tm conhecimento das identidades dos demais membros do grupo na camada de rede? Como os roteadores interoperam para entregar um datagrama multicast a todos os membros do grupo?
144
Curso de Especializao em Redes de Computadores INF502
fazer parte do grupo: IGMP (Internet Group Management Protocol) Rede metropolitanta: roteador local interage com outros roteadores para receber os fluxos multicast Vrios protocolos (e.g., DVMRP, MOSPF, PIM)
IGMP
IGMP
Curso de Especializao em Redes de Computadores INF502
145
diretamente: host: envia notificao IGMP quando a aplicao se junta a um grupo multicast IP_ADD_MEMBERSHIP opo de socket host no necessita fazer uma notificao quando sai de um grupo roteador: envia requisio IGMP a intervalos regulares host pertencente a um grupo multicast deve responder a requisio
query
report
146
O Protocolo IGMP
O IGMP fornece meios para que o host informe ao
roteador ao qual est conectado que uma aplicao deseja ser includa em um grupo multicast. Apesar do nome ele no um protocolo que opera entre todos os hosts que tenham formado um grupo multicast. necessrio um outro protocolo para coordenar os roteadores multicast, de modo que os datagramas multicast sejam roteados at seus destinos: algoritmos de roteamento multicast da camada de rede.
Consultar quais os grupos multicast em que os hosts associados esto includos. Consultar se os hosts associados esto includos em um grupos multicast especfico. Relatar que o host quer ser ou j est includo num dado grupo multicast. Relata que est saindo de um determinado grupo multicast.
148
Roteador
Host
Host
enviadas por iniciativa do host quando uma aplicao deseja ser includa num grupo multicast. Para o roteador no importa quais nem quantos hosts fazem parte do mesmo grupo multicast.
149
Curso de Especializao em Redes de Computadores INF502
150
Curso de Especializao em Redes de Computadores INF502
O host simplesmente envia uma mensagem IGMP de relato de participao para o roteador ao qual est conectado.
conjunto com os demais roteadores comear a entregar datagramas multicast para este host. Portanto, a adeso a um grupo uma iniciativa do receptor.
151
Curso de Especializao em Redes de Computadores INF502
adicionar receptores e nem controla quem includo no grupo. Tambm no h nenhum controle de coordenao a respeito de quem e quando pode transmitir para o grupo multicast. No h nem mesmo uma coordenao na camada de rede sobre a escolha de endereos multicast: dois grupos podem escolher o mesmo endereo! Todos estes controles podem ser implementados na camada de aplicao. Alguns deles podem vir a ser includos na camada de rede.
152
Curso de Especializao em Redes de Computadores INF502
Protocol MOSPF: Multicast Open Shortest Path First PIM: Protocol Independent Multicast
153
Curso de Especializao em Redes de Computadores INF502
envio pelo caminho reverso, poda e enxerto. Utiliza o algoritmo de vetor de distncia para permitir que o roteador calcule o enlace de sada que se encontra no caminho mais curto at cada uma das origens possveis. Tambm calcula a lista dos roteadores que esto abaixo dele para questes de poda.
154
Curso de Especializao em Redes de Computadores INF502
poda (com valor default de 2 horas) aps o qual o ramo automaticamente enxertado na rvore. Uma mensagem de enxerto fora a reincluso de um ramo que tenha sido podado anteriormente da rvore multicast.
155
Curso de Especializao em Redes de Computadores INF502
dos roteadores esto aptos ao Multicast. Tunelamento pode ser usado para criar uma rede virtual de roteadores com multicast.
Topologia fsica
Topologia lgica
156
utiliza o protocolo OSPF para o roteamento unicast. Os roteadores adicionam a informao dos grupos que devem atender junto com os anncios dos estados dos enlaces. Com base nestas informaes cada roteador do AS pode construir rvores de caminho mais curto, especficas para cada origem, j podadas para cada grupo multicast.
157
Curso de Especializao em Redes de Computadores INF502
roteamento multicast diferente. Ainda no existe um padro para o roteamento multicast inter-SA. O padro de fato tem sido o DVMRP que no adequado por ser um protocolo do tipo modo denso, enquanto que os roteadores multicast atuais esto espalhados.
159
Curso de Especializao em Redes de Computadores INF502
de estados com o crescimento do nmero de grupos e dos transmissores de um grupo? Dependncia do roteamento unicast: Ex.: MOSPF x PIM. Recepo excessiva (no necessria) de trfego. Concentrao de trfego: a rvore nica concentra trfego em poucos enlaces. Optimalidade dos caminhos de envio.
160
Curso de Especializao em Redes de Computadores INF502
Captulo 4: Resumo
Iniciamos a nossa jornada
rumo ao ncleo da rede. Roteamento dos datagramas: um dos maiores desafios da camada de rede.
roteamento:
Assuntos avanados:
Particionamento das redes em SAs. Problema de escala pode ser resolvido com a hierarquizao.
Capacidade de
Prximo captulo: