Introdução
A
camada
de Rede
está
relacionada
à
transferência
de
pacotes da origem ao
destino.
Chegar ao destino pode
exigir vários hops
(saltos) em roteadores
intermediários ao longo
do percurso:
Introdução
• Para
atingir
seus
objetivos, a camada de
rede deve conhecer a
topologia da subrede de
comunicações
(roteadores) e escolher
os
caminhos
mais
apropriados;
• Evitar ociosidade em algumas rotas e sobrecarga em outra
Introdução
Dessa form a, veja os
principais pontos
que serão
abordados sobre a
camada de rede
:
Algoritmos de Roteamento;
Algoritmos de Controle e Congestionamento; Qualidade de Serviço;
Interligação de Redes;
Internet Protocol - IP
Como bem sabemos, a Internet é um conjunto de
muitas
redes interconectadas:
O
mantém
elem ento que
a
Internet unida é o
protocolo
da
camada de rede o
IP
(Internet
Protocol)
;
Internet Protocol - IP
A tarefa do IP é fornecer a melhor forma possível
(sem
garantias)
de
transportar
datagramas
(pacotes da camada de Rede) da origem para o
destino, independentemente de essas máquinas
estarem na mesma rede ou de haver outra redes
entre elas;
Há
duas versões de protocolo IP
em uso hoje:
IPv4 [RFC 791]
Internet Protocol - IP
Internet Protocol - IP
Considerações:
Version: indica a cersão do protocolo (4 para Ipv4);
IHL: tamanho do cabeçalho em palavras de 32 bits;
Type of Service: Serviço requerido;
Total lenght: tam anho total do pacote (cabeçalho + dados);
Identification: Identifica cada pacote enviado por um nó;
DF (Don’ t Fragm ent): desautoriza a fragm entação do pacote porque o destino não será capaz de recompô-lo
MF (More Fragment): indica que há outros fragmentos (bit 1 para o último fragmento);
Fragment Offset: indica a localização deste fragmento no pacote completo
Internet Protocol - IP
Considerações:
Time to Live: Tempo de vida, decrementado a cada nó
intermediário, indicando o número máximo de encaminhamentos de um pacote. Zerado, o pacote é descartado e um pacote de controle (ICMP) é enviado de volta à origem.
Protocol: Indica o protocolo que está sendo transportado na parte de dados. IP (0), ICMP(1), TCP(6), etc.
Header Cheksum: verifica a correção do cabeçalho;
Destination e Source Address: Contêm os endereços IP do nó destino e origem do pacote;
Options: cam po de tam anho variável (múltiplos de 4 bytes), destinado para experimentações.
Conteúdo
■
Endereçamento IP
■
Sub-redes
■
VLSM – Variable Length Subnetwork Mask
Serviço de Comunicação Universal
■
Um sistema de comunicação global requer um
método universalmente aceito para identificar
individualmente os computadores.
■ Exigência de um mecanismo global de identificação das
máquinas em um cenário de um conjunto de redes interconectadas (“internet”).
■
A idéia é permitir a comunicação entre quaisquer
máquinas localizadas em quaisquer pontos do
Endereço IP
■
Endereço definido na camada de rede da
arquitetura TCP/IP para identificar, de forma
única, cada conexão de rede.
■ Consiste de um número de 32 bits (4 bytes)
associado a cada interface de rede.
■
O formato do endereço é determinado pelo
protocolo da camada de rede e visa facilitar a
tarefa de roteamento.
■
Notação binária do endereço IP:
■ 10000010 10000100 00010011 00011111
Endereço IP
(cont.)■
Ao invés da notação binária, normalmente é
usada a notação decimal (decimal dotted
notation
).
■
Cada byte do endereço é representado por um
número decimal, separados por um ponto.
■ Ex: 130.132.9.31 200.241.16.8 10.0.0.0
■
O endereço IP é composto por duas partes:
■ NetID: codifica univocamente o identificador da rede à qual a máquina está conectada.
■ HostID: codifica univocamente o identificador da máquina (Id da interface) dentro da rede.
Conversão Decimal-Binário
10. 1. 23. 19 00001010. 00000001. 00010111. 00010011 200. 241. 16. 8 11001000 11101101 0010000 00001000 255. 255. 0. 0 11111111. 11111111. 0000000. 00000000 127. 0. 0. 1 11111111. 0000000. 0000000. 00000001 243. 15. 63 100Conversão Binário-Decimal
1 1 1 1 1 1 1 1 128 64 32 16 8 4 2 1 (128+ 64+ 32+ 16+ 8+ 4+ 2+ 1=255) Exemplo de conversão: 0 1 0 0 1 0 0 1 = ? 0 64 0 0 0 0 0 1 (0+64+0+0+8+0+0+1=73)Classes de Endereços
■
Endereços IP são organizados em classes.
■
As classes determinam quantos bits são
usados para identificar a rede e quantos
são usados para codificar a máquina.
■
Classe A: NetID= 8 bits, HostID= 24 bits
■Classe B: NetID= 16 bits, HostID= 16 bits
■Classe C: NetID= 24 bits, HostID= 8 bits
■
Esse esquema de endereçamento é
Classes Primárias (2)
NetID (7 Bits) HostID (24 Bits) 0 Class A HostID (16 Bits) NetID (14 Bits) 10 Class B HostID (8 Bits) NetID (21 Bits) 110 Class CRedes Classe A (“Redes /8”)
■
São redes de grande porte, que contam com
um número imenso de máquinas.
■ Ex: 12.0.0.0 (AT&T); 13.0.0.0 (Xerox)
Máximo de 126 redes (2
7-2).
■ (0 a 127 = 128 redes)
■ 0.0.0.0: rota default
■ 127.0.0.0: função loopback
■
Máximo de 16.777.224 (2
24-2) hosts por rede.
■ “all-0s”: endereço “this network” ■ “all-1s”: endereço de “broadcast”
Redes Classe A (“Redes /8”)
(cont.)■
2
31(2.147.483.648) endereços individuais.
■ 50% do espaço de endereçamento unicast do
IPv4!!!
■
Faixa de NetID’s: 1 a 126.
Redes Classe B (“Redes /16”)
■
São redes de médio porte, que contam com
um número ainda muito grande de hosts.
■ Ex: 129.188.0.0 (Motorola); 164.41.0.0 (UnB)
Máximo de 16.384 redes (2
14).
■
Máximo de 65.534 (2
16-2) hosts por rede.
■2
30(1.073.741.824) endereços individuais.
■ 25% do espaço de endereços unicast do IPv4!!!
■
Faixa de NetID’s: 128 a 191.
Redes Classe C (“Redes “/24”)
■
São redes de pequeno porte, que contam com um
pequeno número de hosts.
■ Ex: 241.16.18.0; 196.239.26.0
■
Máximo de 2.097.152 redes (2
21).
■
Máximo de 254 (2
8-2) hosts por rede.
■
2
29(536.870.912) endereços individuais.
■ ~12,5% do espaço de endereços unicast do IPv4.
■
Faixa de NetID’s: 192 a 223.
Classes Especiais
Endereço de Multicast (28 Bits) 1110 Class D Reservado (27 Bits) 11110 Class EResumindo...
NetworkClass
Address Range Maximum Networks Maximum Hosts Class A 0.0.0.0 to 127.255.255.255 126 Over 16 Million Class B 128.0.0.0 to 191.255.255.255 16,382 65,534 Class C 192.0.0.0 to 223.255.255.255 Over 2 Million 254 Class D 224.0.0.0 to 239.255.255.255 Reserved for Multicasting N/A Class E 240.0.0.0 to 247.255.255.255 Reserved for future use N/A
Desvantagens do Endereçamento Classful
2
32■
Apenas
(4.294.967.296) endereços IPv4
disponíveis.
■ Eventual exaustão do espaço de endereços.
■
Não propicia uma alocação eficiente do espaço de
endereços.
■ Classe C: apenas 254 hosts (muito pequeno).
■ Classe B: 65.534 hosts (muito grande).
■
Má distribuição de endereços no passado.
■ Depleção prematura de endereços Classe B.
■ Instituições de médio porte com endereços Classe C
(impacto negativo no tamanho global das tabelas de roteamento da Internet).
Desvantagens do Endereçamento Classful
(cont.)■
Se uma máquina é movida de uma rede
para outra seu endereço tem ser mudado, a
não ser que a rede esteja usando um
protocolo de mapeamento dinâmico de
endereços.
■
Muita perda de endereços já que nem todos
Endereços Especiais
■
Nem todo número pode ser usado para identificar
uma conexão à rede pois alguns deles são
reservados, à priori, pelo esquema de
endereçamento.
■
Para cada rede, os endereços de host seguintes
são sempre reservados, não podendo ser usados
como endereços de nenhuma das máquinas da
rede:
■ O primeiro endereço de host (isto é, HostID com todos
os bits iguais a 0)
■ O último endereço de host (isto é, HostID com todos os bits iguais a 1)
Endereço de Rede (“this network”)
■
Assim como as interfaces, as redes também
têm o seu próprio endereço IP.
■
Por convenção, o endereço IP reservado
que tem o HostID com todos os bits iguais
a zero é, na realidade, o endereço da rede.
■Exemplos:
■ 200.241.16.0 (classe C) ■ 164.41.0.0 (classe B) ■ 15.0.0.0 (classe A)
Endereço de “Loopback”
■
A maioria das implementações possui uma
“interface loopback”, que permite a um processo
cliente e um servidor localizados no mesmo host
se comunicarem usando a pilha TCP/IP.
■ A interface loopback não se conecta a rede alguma
(um pacote IP enviado para essa interface não aparece em nenhuma rede, fica na máquina local).
■
O endereço classe A “127.0.0.0” é um endereço
de rede reservado para funções de loopback.
■ Por convenção, qualquer endereço de host nessa rede
pode ser usado como endereço de loopback. Na
prática é usado apenas o endereço 127.0.0.1, que é comumente denominado de “localhost”.
Endereço de “Broadcast”
■
Endereço reservado usado para referenciar
todas as máquinas de uma rede.
■
Um pacote IP com endereço de broadcast é
sempre entregue a todas as máquinas da rede.
■
Qualquer endereço cujo campo de HostID
possua todos os bits iguais a 1 é um
endereço de broadcast.
■
200.241.16.255 (classe C)
■164.41.255.255 (classe B)
Endereço de “Multicast”
■
Um endereço multicast referencia um grupo seleto
de máquinas de uma rede. Um grupo multicast é
sempre identificado por um endereço classe D.
■
Membros de um grupo ainda retém os seus
próprios endereços IP, mas também têm a
habilidade de absorver dados que são enviados
para os endereços multicast.
■
Para terem acesso às mensagens enviadas para
endereços multicast as máquinas devem suportar
o protocolo IGMP.
Endereço de “Multicast”
(cont.)■
Alguns endereços multicast são reservados,
estando listados na RFC Internet Assigned
Numbers
.
■
224.0.0.2 = todos os roteadores de uma
sub-rede local.
■
Diferentemente dos endereços broadcast, os
endereços multicast não são restritos à rede
local.
Endereços Privados
■ Assim como a classe de endereços 127.0.0.0, existem
outros endereços que não podem ser utilizados em nenhuma máquina conectada à Internet.
■ As faixas de endereços começadas com "10", "192.168" ou
de "172.16" até "172.31" são reservadas para uso em redes locais/intranets e por isso não são usadas na Internet.
- 10.0.0.0 a 10.255.255.255 - 172.16.0.0 a 172.31.255.255 - 192.168.0.0 a 192.168.255.255
■ Redes que usam endereços dessa faixa constituem redes
privadas e a numeração é denominada de numeração privada.
Obtenção de Endereços IP
■ Faixa de endereços IP válidos devem ser solicitados a uma
instituição central responsável pelo registro de endereços.
■ A entidade global responsável pelo registro e atribuição
dos endereços é a IANA - Internet Assignment Numbers Authority (http://www.iana.org/).
■ A IANA delega faixas de endereços às RIRs (Regional
Internet Registries), entidades menores, que ficam responsáveis por delegar os endereços regionalmente.
■ Nos EUA a entidade responsável é a ARIN
(http://www.arin.net/) e no Brasil é a LACNIC (Latin American and Caribbean Internet Address Register -Registro de Endereçamento da Internet para América Latina e Caribe - http://www.lacnic.net/pt/). Estas
entidades são diferentes das responsáveis pelo registro de domínios, como o Registro.br.
Mapeamento Dinâmico de Endereços
■
Pressuposto: não há problema se diferentes
placas usarem um mesmo endereço IP em
instantes diferentes.
■
DHCP – Dynamic Host Configuration Protocol.
■
Um servidor DHCP distribui endereços IP dentro
de uma faixa disponível definida na sua
configuração.
■
Pode haver vários servidores DHCP, cada um
responsável por uma faixa de endereços.
■
Endereços podem ter um tempo de validade.
■Tema será explorado em experiência de
O IP se baseia em duas estruturas para
efetuar o roteamento de datagramas:
Máscara de Sub-Rede
Tabela de Rotas
Como já visto, a máscara de sub-rede é um
número de 32 bits usado para distinguir
um prefixo de rede estendido (Netid +
SubnetID
) em um endereço IP.
A máscara de sub-rede também é usada
para determinar se um endereço IP está
localizado na rede local ou em uma rede
remota.
Por exemplo, um destino de 172.16.8.0 tem uma máscara de rede de 255.255.248.0. Esta máscara de rede significa que:
– os dois primeiros octetos devem coincidir exatamente;
– os primeiros cinco bits do terceiro octeto devem coincidir (248=11111000); e que
– o último octeto não faz diferença.
O terceiro octeto de 172.16.8.0 (ou seja, 8) é 00001000 em
binário. Sem alterar os cinco primeiros bits (a parte da
máscara mostrada em
negrito
), pode-se chegar até 15, ou00001111 em binário.
Logo, uma rota com endereço destino 172.16.8.0 e uma máscara de 255.255.248.0 aplica-se a todos os pacotes endereçados para 172.16.8.0 até 172.16.15.255.
Provê um meio de se dizer como encaminhar pacotes para máquinas que não estão conectadas à rede local. Cada máquina na rede local (hosts e roteadores) possui a sua própria tabela de rotas.
Na sua forma mais simples, a tabela de rotas é uma estrutura que contém um conjunto de pares (N,G), onde:
N é o endereço IP da rede destino
G é o endereço IP do próximo roteador no caminho da rede N
A quantidade de informação que um roteador necessita guardar na sua tabela de rotas é
diretamente proporcional ao número de redes e não ao número de hosts.
A tabela de rotas pode ser mantida tão simples porque o IP não necessita de uma rota completa até o
destino. É guardado apenas o endereço do próximo roteador.
Os roteadores não conhecem o caminho completo até a máquina destino mas, sim, o próximo passo (hop) em direção àquela rede.
As tabelas de rotas sempre apontam para roteadores que estão na mesma rede física.
Roteamento Direto
Ocorre quando as máquinas participando de
uma conversação estão na mesma rede física.
O transmissor encapsula o pacote IP no quadro
do nível de enlace, mapeia o endereço IP
destino no endereço físico de destino (via ARP)
e envia o quadro diretamente ao destinatário.
O transmissor sabe que o destinatário está na
mesma rede física examinando a porção NetId
do endereço IP destino, que deve ser igual ao
próprio NetId (usando, para isso, a máscara de
sub-rede).
Roteamento Indireto
Ocorre quando duas máquinas participando
de uma conversação não estão na mesma
rede física.
Neste caso, gateways intermediários terão
que manusear o datagrama até que ele
chegue ao seu destino.
O transmissor deve identificar um gateway
para onde enviar o datagrama. Este
gateway
precisa estar, necessariamente, na
Hosts:
O roteamento será direto ou não?
Caso não seja direto, para qual roteador deverá ser
enviado o pacote?
Roteadores:
A máquina destino está na mesma rede física e pode
ser alcançada diretamente? Se sim, ele é o roteador
final.
Se não, para qual outro roteador entregar o pacote?
Rota Default
A especificação TCP/IP permite que seja
definida uma rota padrão, que será usada
sempre que não for encontrada nenhuma
rota para a rede destino.
Normalmente, o endereço classe A 0.0.0.0
é
usado como sinônimo de default nas tabelas de
roteamento.
Essa entrada diz ao IP para “redirecionar
qualquer
datagrama
não-local
para
o
O Comando “Route”
O comando “route” serve para manipular a tabela de rotas. Quando utilizado sem argumentos, exibe a tabela.
“Route” m anipula a tabela de roteam ento IP do kernel. Seu principal uso é configurar rotas estáticas para hosts ou redes especificadas através de uma interface, após a mesma ter sido configurada (no caso do Unix, com o programa ifconfig).
O “route” aceita diversas opções, tais como add,
delete e change, e possui vários parâmetros, tais como métrica e interface de saída.
Podem ser usados nomes em vez de números para identificar redes e máquinas nas rotas.
Examinando a Tabela de Rotas – Windows
(cont.)Destino: O destino é o host de destino, o endereço de sub-rede, o endereço da rede ou uma rota padrão. Máscara de rede: A máscara de rede é utilizada em conjunto com o destino para determinar quando uma
rota é utilizada. Por exemplo, uma rota de host tem uma máscara de 255.255.255.255, uma rota padrão tem uma máscara de 0.0.0.0 e uma rota de rede ou sub-rede tem uma máscara entre esses dois extremos. Uma máscara de 255.255.255.255 significa que apenas uma correspondência exata do destino utiliza essa rota. Uma máscara de 0.0.0.0 significa que qualquer destino pode utilizar essa rota.
Gateway: O gateway é o endereço IP do próximo roteador para o qual é necessário enviar um pacote. Em
uma conexão de rede local (como Ethernet ou Token Ring), o gateway deve ser alcançável diretamente por esse roteador utilizando a interface indicada na coluna Interface.
Interface: Indica a interface de rede que deve ser utilizada para alcançar o próximo roteador.
Métrica: A métrica indica o custo relativo da utilização da rota para alcançar o destino. Uma métrica típica
são os saltos, ou o número de roteadores a serem atravessados para se alcançar o destino. Se existirem diversos roteadores com o mesmo destino, o roteador com a métrica mais baixa é o melhor roteador.
Protocolo: O protocolo indica como a rota foi descoberta.
O Comando Route
no Windows
Para exibir todo o conteúdo da tabela de roteamento IP, digite:route print
Para exibir as rotas na tabela de roteamento IP que começam com 10., digite:
route print 10.*
Para adicionar uma rota padrão com o endereço de gateway padrão de 192.168.12.1, digite:
route a dd 0 .0 .0 .0 m as k 0 .0 .0 .0 1 9 2 . 1 6 8 . 1 2 . 1
Para adicionar uma rota ao destino 10.41.0.0 com a máscara de sub-rede de 255.255.0.0 e o endereço do próximo salto de 10.27.0.1, digite:
route a dd 1 0 . 4 1 . 0 .0 m as k 2 5 5 . 2 5 5 . 0 . 0 1 0 . 2 7 . 0 . 1
Para adicionar uma rota persistente ao destino 10.41.0.0 com a máscara de sub-rede de 255.255.0.0 e o endereço do próximo salto de 10.27.0.1, digite:
O Comando Route
no Windows
(cont.)Para adicionar uma rota ao destino 10.41.0.0 com a máscara de sub-rede de 255.255.0.0, o
endereço do próximo salto de 10.27.0.1 e a métrica de custo de 7, digite:
route a dd 1 0 . 4 1 . 0 . 0 m as k 2 5 5 . 2 5 5 . 0 . 0 1 0 . 2 7 . 0 . 1 metric 7
Para adicionar uma rota ao destino 10.41.0.0 com a máscara de sub-rede de 255.255.0.0, o endereço do próximo salto de 10.27.0.1 e o índice de interface 0x3, digite:
route a dd 1 0 . 4 1 . 0 . 0 m as k 2 5 5 . 2 5 5 . 0 . 0 1 0 . 2 7 . 0 . 1 if 0 x 3
Para excluir a rota para o destino 10.41.0.0 com a máscara de sub-rede de 255.255.0.0, digite:
route delete 1 0 . 4 1 . 0 . 0 m as k 2 5 5 . 2 5 5 . 0 . 0
Para excluir todas as rotas na tabela de roteamento IP que começam com 10., digite:
route delete 10.*
Para alterar de 10.27.0.1 para 10.27.0.25 o endereço do próximo salto da rota com o destino de 10.41.0.0 e a máscara de sub-rede de 255.255.0.0, digite:
route c h a n ge 1 0 . 4 1 . 0 . 0 m as k 2 5 5 . 2 5 5 . 0 . 0 1 0 . 2 7 . 0 . 2 5
O Comando Route no Unix
SINOPSE
route [-v] add [-net|-host] Alvo [netmask Nm] [gw Gw] [metric N] [mss M] [window W] [irtt I] [reject] [mod] [dyn] [reinstate] [[dev]
If]
route [-v] del [-net|-host] Alvo [gw Gw] [netmask Nm] [metric N] [[dev] If]
route [-V] [--version] [-h] [--help]
O Comando Route
no Unix
Analisando esta tabela de rotas de um simples host na rede, vemos que todo pacote endereçado à rede 192.168.175.0 (Destino) não precisa passar por nenhum roteador (0.0.0.0) e deve sair pela interface eth0. Ou seja, esta é a rede em que a interface eth0 está diretamente conectada. Pacotes endereçados para qualquer outro destino (0.0.0.0), devem sair pela eth0 e ir para o roteador 192.168.175.2. Dizemos que este roteador é o gateway, e que esta é a rota padrão. Este fato também pode ser observado pela letra G na coluna Opções. A letra U (up) significa que a rota foi configurada corretamente.
# netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
10.20.191.0 * 255.255.255.128 U 0 0 0 bond0
172.22.13.0 * 255.255.255.0 U 0 0 0 eth9
169.254.0.0 * 255.255.0.0 U 0 0 0 eth9
default 10.20.191.1 0.0.0.0 UG 0 0 0 bond0
O Comando Route
no Unix
(cont.)A segunda coluna, gatew ay, mostra o gateway para o qual é feito o roteamento dos
pacotes de entrada. Se nenhum gateway for usado, será exibido apenas um asterisco (*).
A terceira coluna, Genmask, mostra a “generalidade” da rota, ou seja, a máscara de rede
dessa rota.
A quarta coluna, Flags, exibe os seguintes indicadores que descrevem a rota:
G significa que a rota usa um gateway.
U significa que a interface a ser usada está ‘up’ (ativa e disponível).
H significa que um apenas um host pode ser alcançado através da rota. Por exemplo, é o caso
da entrada de loopback 127.0.0.1.
D significa que a rota foi criada de modo dinâmico
.
! significa que a rota foi rejeitada e os dados serão perdidos.
As três colunas a seguir mostram os parâmetros MSS, Window e irtt que serão aplicados às conexões TCP estabelecidas por meio dessa rota.
MSS corresponde a Maximum Segment Size – o tamanho do maior datagrama a ser transmitido pela rota em questão.
Window é o volume máximo de dados que o sistema aceitará em um único pico de um host remoto
dessa rota.
irtt significa Initial Round Trip Time.
2. Adicionar uma rota manual rr nte:
r ou te add -net 1 0 . 2 . 0 . 0 netltosk 255.255. 0. 0 der et h 2
" p‹xfe ser on 5 xto se esta for a ú5 ina opçâo da linha de conaró0, cono r›es1e caso. Is1o adcona una para a rede L0.2.0.OL6 (:e\a e M. O'
2. Adicionar uma rota psd r6o: r nute ndfifiefuulty 172.lG.2.l
úupon:lo que o en:Mereço do gale ay seja 172. L6.e. L e mts1a una tola Zelinda para es1eGateway. 3. Reizxiver uma rota manualxente:
r ou te üeí -net 1 0 . 2 . 0 . 0 netltosk 255.255. 0. 0et h 2
Renove a iola que cool quranos anlerorneMe para a redeLO.2.0.0
4. Reizxiver a rota pad râ o:
P‹xle ser necessàro renovar una iola padrâo, de torna que una máquina só tenha una iola padrâo únca! Pode cx:orrer de, por DH5 P, o s ts1ena definir nais de una iola padrâo na inc aJizaçâo. Entâo, para renovar a qtx' nâo se aplca,fazemos:
r ou te dei -net 0. 0. 0. 0ethQ
Nes1e caso, a iola padrâo que q u e r i a m remover es1ava naecho.
Exercício 1
Estabelecer a tabela de rotas dos roteadores
Exercício 2
Estabelecer a tabela de rotas dos roteadores da
NAT –Network Address Translation
O problema de
esgotar endereços IP
não é um
problema teórico que pode ocorrer em um futuro
distante, ele está acontecendo aqui e agora:
Grande núm ero de m áquinas nas em presas ligadas 24 horas;
Aumento do número usuários de ADSL;
Má distribuição dos endereços IP no início da Internet;
Solução:
Migração para o Ipv6 (128 bits de endereçamento) NAT [RFC 2663; RFC 3022]
NAT –Network Address Translation
A idéia é
atribuir apenas 1(um ) IP válido
às
empresas para tráfego na Internet;
Dentro da empresa, todo computador obtém um
endereço IP exlusivo, usado para roteamento do
tráfego interno
;
Porém, quando um pacote sai da empresa e vai
NAT –Network Address Translation
datagramas com origem ou destino nesta rede possuem endereço
10.0.0/24 para origem, destino (usualmente) 10.0.0.1 10.0.0.2 10.0.0.3 10.0.0.4 138.76.29.7 rede local
(ex.: rede doméstica) 10.0.0/24
Operação do NAT:
restante da Internet
todos os datagram as que saem da
rede local possuem o mesmo e único endereço IP do NAT de origem :
diferentes de 138.76.29.7, núm eros
NAT –Network Address Translation
10.0.0.0 - 10.255.255.255/8 (16.777.216 hosts) 172.16.0.0 - 172.31.255.255/12 (1.048.576 hosts) 192.168.0.0 - 192.168.255.255/16 (65.536 hosts)
Para tornar esse esquema possível,
três intervalos
de endereços IP
foram declarados como privativos:
As empresas podem utilizá-los internamente como
desejarem:
A única regra é que nenhum pacote contendo esses
NAT –Network Address Translation
Implementação:
o roteador NAT deve:
Datagramas que saem: substituir (endereço IP de
origem, porta #) de cada datagrama para (endereço IP do NAT, nova porta #) . . . clientes/servidores remotos responderão usando (endereço IP do NAT, nova porta #) como endereço de destino.
Lembrar (na tabela de tradução do NAT) cada
(endereço IP de origem,
(endereço IP do NAT, nova porta #) para o par de tradução porta #).
Datagramas que chegam: substituir (endereço IP do
NAT, nova porta #) nos campos de destino de cada datagrama pelos correspondentes (endereço IP de origem, porta #) armazenados da tabela NAT
NAT –Network Address
Translation
2: roteador NATsubstitui end. origem do datagram de 10.0.0.1, 3345 para 138.76.29.7, 5001, atualiza a tabela 3: resposta chega endereço de destino: 138.76.29.7, 5001
Prof. Leonardo Barreto Campos
1: hospedeiro 10.0.0.1 envia datagrama
NAT –Network Address Translation
Campo número de porta com 16 bits:
60.000 conexões simultâneas com um único endereço de
LAN
NAT é controverso:
Roteadores deveriam processar somente até a camada 3 Violação do argumento fim-a-fim
A possilidade de NAT deve ser levada em conta pelos desenvolvedores de aplicações, ex., aplicações P2P
ICMP –Internet Control Message
Protocol
O ICMP,
especificado no RFC 792,
é usado por
hospedeiros
e
roteadores
para
comunicar
informações de camada de rede entre si;
A
utilização
m as
com um
do
ICMP é
para
comunicação de erros
:
Em algum ponto, um roteador não conseguiu descobrir um caminho para o hospedeiro especificado em usa aplicação (HTTP, por exemplo)
Mensagens ICMP têm um campo de tipo e um campo de código;
ICMP –Internet Control Message
Protocol
Além, disso contém o cabeçalho e os primeiros 8
bytes do datagrama IP que causou a criação da
mensagem ICMP em primeiro lugar, veja:
ICMP –Internet Control Message
Protocol
ICMP –Internet Control Message
Protocol
Exem plo:
O program a ping, envia um a m ensagem ICMP do tipo 8 código 0 para o hospedeiro específico;
O hospedeiro de destino, ao ver a solicitação de echo, devolve uma resposta eco ICMP do tipo 0 código 0
IPv6
Motivação inicial:
o espaço de endereços de 32 bits
está próximo de ser completamente alocado
Motivação adicional:
Melhorar o form ato do header para permitir m aior
velocidade de processamento e de transmissão
Mudanças no header para incorporar m ecanism os de
controle de QoS
Formato do datagrama Ipv6 [RFC 2460]:
Cabeçalho fixo de 40 bytes Não é permitida fragmentação
IPv6
IPv6
Considerações: Priority: permitir definir prioridades diferenciadas para vários fluxos de informação
Flow label: identifica datagramas do mesmo “fluxo.” (conceito
de “fluxo” não é bem definido).
Next header: identifica o protocolo da camada superior ou um
header auxiliar
checksum : removido inteiram ente para reduzir o tempo de
processamento em cada salto
Options: são permitidas, mas são alocadas em cabeçalhos
suplementares, indicados pelo campo “Next header”
IPv6
Aceita bilhões de hosts
Reduz o tamanho das tabelas de roteamento
Possibilita que o pacote seja processado com mais rapidez Oferece mais segurança (autenticação e privacidade)
Tipo de serviço (tempo real, por exemplo)
Funções de gerenciamento de grupos multicast
Nem todos os roteadores poderão ser atualizados simultaneamente
Não haverá um dia da vacinação
Com o a rede irá operar com roteadores m istos de IPv4 e IPv6?
Tunelamento: IPv6 transportado dentro de pacotes IPv4