Paulo Ferreira
paulo.ferreira@eslfb.pt
Actualmente, estamos prestes a esgotar os
endereços IP disponíveis na Internet pelo uso do IP
v4.
Nos anos 80, o número de computadores
existentes na época não era significativo, Na
tentativa de contornar este problema, criou-se o
NAT - Network Address Translation
utilizado principalmente por routers e permite que
uma rede privada tenha acesso à Internet (rede
pública), isto é, no início do desenvolvimento das
redes todos os pc's tinham um endereço IP fixo
(pago) público.
Camada de rede - 3
Com o aparecimento do NAT foi possível que redes
privadas utilizassem IP's de gama privada (ex.: 10.0.0.12) e
mesmo assim pudessem aceder a uma rede pública
(Internet) sem a necessidade de um IP público por
computador.
Camada de rede - 3
A camada de Rede é
responsável pelo
endereçamento dos
pacotes, convertendo
endereços lógicos em
endereços físicos (ou IP),
de forma que os pacotes
consigam chegar
correctamente ao destino.
Essa camada também
determina a rota que os
pacotes irão seguir para
atingir o destino, baseada
em factores como
condições de tráfego da
rede e prioridades.
Camada de rede - 3
Movimenta pacotes a partir de sua fonte original até seu destino através de um ou mais enlaces.
Define como dispositivos de rede descobrem uns aos outros e como os pacotes são roteados até
seu destino final.
Funções da Camada:
Encaminhamento, endereçamento, inter conexão de redes, tratamento de erros, fragmentação de
pacotes, controle de congestionamento e sequenciamento de pacotes.
Camada de rede - 3
Em qualquer computador, através da
consola de MS-DOS, é possível ter acesso à
tabela de encaminhamento do nosso PC,
que são em tudo semelhantes às existentes
nos routers. Digitando o comando netstat -r
obtém-se algo similar à figura seguinte:
Camada de rede - 3
o Gateway, que neste caso é o 192.168.1.254, indica onde se
encontra o router da nossa rede, que tem como função comunicar
entre redes. Podemos ver a gateway como a ponte entre duas
margens de um rio.
Camada de rede - 3
O endereço IP 224.0.0.0 é o endereço reservado para o
multicast e finalmente o 255.255.255.255 é o endereço
reservado para broadcast.
Quando um PC de uma rede privada tenta aceder à
Internet esse pedido percorre a rede até chegar a um
router. Este vai conferir a sua tabela e ao verificar que o
pedido não pode ser satisfeito dentro da rede encaminha o
pedido para o seu hierárquico superior, neste caso o servi
dor ISP, e assim sucessivamente até que se encontre o
destino (ou não).
Proposta de trabalho - No computador, abra a consola de MS-
DOS no Windows e digite o comando netstat –r . Verifique
as semelhanças entre o resultado e a tabela de
encaminhamento mostrada anteriormente. Qual a sua
gateway?
Camada de rede - 3
Quando apenas é conhecido o
endereço virtual de uma
estação e se pretende saber o
endereço físico (MAC) da
mesma é utilizado o protocolo
ARP. Este, através do envio de
uma mensagem em Broadcast -
Quem é a estação com o IP
xxx.xxx.xxx.xxx? - recebe a
resposta da estação com o IP
solicitado (em unicast) onde
consta o MAC Address,
permitindo assim a comunicação
entre as duas máquinas.
Camada de rede - 3
As mensagens em Broadcast podem baixar o rendimento
de uma rede, já que causam congestionamentos ou mesmo
Broadcast Storms. Para que as estações não necessitem de
estar constantemente a enviar mensagens em Broadcast,
guardam em forma de tabela os IP's e respectivos MAC
Address acedidos, bem como os das estações que lhe
acederam recentemente.
Antes de transmitir a estação verifica se o computador com
que pretende comunicar já se encontra na tabela. Se assim
for, retira o MAC respectivo da tabela e comunica em
unicast, caso contrário, envia a mensagem em Broadcast
(ARP Request).
Camada de rede - 3
Protocolo ARP é utilizado nas seguintes situações:
◦ Quando duas estações estão na mesma rede e pretendem
comunicar entre si (sem aceder a routers) (PC-PC);
◦ Quando duas estações estão em redes diferentes e têm de
aceder a um Router/gateway para comunicar entre si (PC-
Router);
◦ Quando um Router tem de encaminhar um pacote de dados
para um computador através de outro router (Router-Router);
◦ Quando um Router tem de encaminhar um pacote de dados
para uma estação na sua rede (Router-PC).
Proposta de trabalho - Abra a consola de MS-DOS no Windows
e digite o comando arp -a para ter acesso à tabela arp do
seu computador.
Camada de rede - 3
O Rotemento consiste na escolha do
caminho que os pacotes devem seguir
para interconexão das estações de
origem e de destino.
Uma forma comum de implementação da
decisão de roteamento em cada nó é
através de uma tabela de roteamento. O
nó recebe o pacote baseia-se numa
identificação específica (que pode ser os
endereços de origem e destino, o
número do circuito virtual, ou apenas o
endereço de destino, dependendo do
sistema) para obter da tabela de
roteamento qual o enlace de saída para
onde a mensagem deve ser
encaminhada.
Camada de rede - 3
Os routers guardam os registos dos seus
conhecidos (outros routers) sob a forma de
tabela associando-os a um caminho (rotas).
Como são construídas essas tabelas?
Em que se baseia o router para as
determinar?
Camada de rede - 3
Inseridas manualmente (implica pessoal especializado) através
de comandos de administração para gerir a tabela de
encaminhamento. quando um computador da rede 172.16.3.0
quiser comunicar com um da rede 172.16.4.0 sabe que tem de
encaminhar o pedido para a interface 172.16.1.2 para que o
próximo router resolva.
No entanto, se houvesse
um outro caminho (melhor),
que não o existente na
figura, que ligasse o router
1 ao 2 ele continuaria a
encaminhar os pacotes pela
mesma interface visto este endereçamento ser estático.
Camada de rede - 3
A tabela de encaminhamento será preenchida dinamicamente
com base em protocolos de encaminhamento. Usa-se
essencialmente para redes com mudanças frequentes de
topologia ou de grandes dimensões. O preenchimento será então
baseado em Métricas que podem variar entre:
◦ Número de saltos (hops);
◦ Atraso (delay);
◦ Custo dos caminhos - valor atribuído arbitrariamente pelo admi
nistrador da rede;
◦ Largura de banda - velocidade de transmissão;
◦ Congestionamento; Fiabilidade.
Existem para isso algoritmos que suportam os protocolos de
encaminhamento e podem usar apenas uma ou mais métricas
com veremos no ponto seguinte.
Camada de rede - 3
Vantagens Vantagens
Garante redundância e tolerância
Maior segurança, uma vez que existe
apenas um caminho de entrada/saída da a falhas;
rede; Boa aplicabilidade para redes de
Camada de rede - 3
Pode definir-se convergência como o intervalo de tempo
necessário para que os routers tomem conhecimento de
uma alteração na rede e recalculem as rotas para a nova
topologia. Os factores que influenciam o tempo de
convergência são:
◦ A distância em saltos do router ao ponto de mudança;
◦ O número de routers que usam protocolos dinâmicos de
encaminhamento;
◦ Largura de banda e congestionamento nos links; Capacidade de
processamento do router; Protocolo de encaminhamento
utilizado.
Camada de rede - 3
Cada router tem uma tabela que contém as redes (routers)
a ele ligadas directamente e as distâncias associadas.
Todos os routers da rede trocam as suas tabelas,
constituídas por um vector (V,D) [onde V - identifica o
destino e D - a distância até ao destino), com os seus
routers vizinhos da seguinte forma:
◦ Espera a mudança na distância até a um certo destino
(geralmente hops) ou do final do temporizador;
◦ Recalcula a tabela de encaminhamento;
◦ Se a distância for menor para algum destino, notifica (apenas)
os vizinhos.
Camada de rede - 3
EXERCíCIO RESOLVIDO
A partir da figura, obtenha as tabelas de encaminhamento
finais para cada router, usando o algoritmo do vector das
distâncias.
Camada de rede - 3
Na 2. a iteração, os routers vizinhos trocam as tabelas entre si
recebendo dados que lhes permitem preencher as linhas que
anteriormente estavam a infinito. Simultaneamente, as linhas
preenchidas na 1ª iteração são recalculadas com base nos novos
valores. No caso de existirem custos mais baixos, esses passam a
ser os novos valores da tabela (alterações assinaladas com seta).
Camada de rede - 3
Finalmente, na 3ª iteração voltam a trocar as tabelas e os custos
mais baixos são aplicados às tabelas que ainda têm custos mais
elevados para atingir certos destinos.
Camada de rede - 3
Vantagens Desvantagens
Fácil de implementar; Mensagens de actualização
O cálculo da tabela de routing é podem ser muito extensas
pouco complexo, pelo que não [a tabela de
necessita de grande capacidade encaminhamento é enviada
de processamento por parte do na totalidade mesmo que
router. apenas um só custo se
altere);
As mudanças propagam-se
lentamente entre routers,
podendo existir routers com
informação incorrecta e esta
ser propagada pela rede;
O algoritmo pode não
convergir e é lento quando
converge.
Camada de rede - 3
Roteamento com Vetor de Distância (RIP)
Cada nó troca, periodicamente, informações de roteamento
com cada um dos seus vizinhos.
Tipicamente, cada nó mantém uma tabela que diz a linha
de saída a ser usada para cada destino e uma estimativa
do custo para aquele destino. O parâmetro usado para
estabelecer o custo pode ser o número de "escalas", o
atraso estimado, o número de pacotes na fila, etc.
Um nó não precisa conhecer os detalhes da topologia da
rede. É suficiente para um nó conhecer o “comprimento”
de seus enlaces de saída e a identidade de cada nó na
rede.
Camada de rede - 3
Algoritmos Link State ou de Caminho Mais Curto
necessitamos conhecer os aspectos topológicos da rede,
isto é, devemos conhecer todos os nós e suas
interconexões, assim como o custo de cada interconexão.
associam uma medida de “custo” a cada enlace (ou nó) da
rede, e tentam encontrar um caminho que minimize o
“custo” total. O custo pode ser uma quantidade fixa
relacionada a alguns parâmetros, tais como: comprimento
do enlace, velocidade, largura de banda do enlace
(capacidade de transmissão), se o enlace é seguro ou não,
atraso estimado, ou alguma combinação deles.
Este algoritomo converge sempre.
Camada de rede - 3
O endereço IP é o equivalente ao nosso
bilhete de identidade, porém serve para
identificar equipamentos (computadores,
routers, switchs, PDA's, etc) ligados a uma
rede. Um IP é constituído por 32 bits, isto é,
4 x 8bit (4 octetos) separados por pontos
x.x.x.x. Os valores de x são números
decimais entre 0-255 (total 256), visto 28 =
256.
Camada de rede - 3
Os IP's encontram-se divididos por classes. Na tabela
seguinte fazem-se referência a 4 classes distintas. As
classes D e E são classes especiais. Não podem ser
utilizadas para identificar redes ou computadores.
A classe D está reservada para Multicast e a classe E para
futuras utilizações.
Camada de rede - 3
Um endereço IP divide-se em duas partes:
identificadora de Network (rede) e identificadora
de hosts (máquinas).
Como se calcula o numero de redes e de hosts
possiveis?
Conforme a classe, o
endereço será dividido
de forma diferente entre
rede e hosts. Vejamos:
Camada de rede - 3
Na figura é visível que cada classe é identificada pelos seus
bits mais significativos. Assim, um endereço de classe A
começa sempre com o seu bit mais significativo a 0,
enquanto um endereço de classe C é identificado através
dos bits mais significativos 110.
Para calcular o número de hosts que podemos endereçar,
apenas necessitamos de aplicar a fórmula do cálculo do
número de combinações:
Camada de rede - 3
Contudo, na tabela anterior indica-se que o
número de hosts apenas é de 16.777.214. Isto
acontece porque não é possível atribuir um IP
onde a parte que representa os hosts seja
constituída apenas por zeros ou uns. Estes são
endereços especiais, como podemos ver de
seguida:
todos bits o: identifica a rede (13.0.0.0);
todos bits 1: significa todos os hosts-broadcast
(13.255.255.255).
Camada de rede - 3
Quanto ao número de redes da classe A,
pode ser calculado da mesma forma.
Nº de redes: NC = 27 = 128
Mais uma vez aparece 126 na tabela e não
Camada de rede - 3
gamas de IPs que não devem ser utilizados:
Camada de rede - 3
Existem apenas dois tipos de redes. A rede pública e as
redes privadas.
Camada de rede - 3
A rede pública, ou Internet, conta com a maior
parte dos IP's, ficando uma pequena gama de IPs
disponíveis para as redes privadas.
Proposta:
No computador, abra
a consola de MS-
DOS do Windows e
digite o comando
ipconfig.
Qual a classe do seu
endereço IP? Trata-
se de um IP privado
ou público?
Camada de rede - 3
Em adição ao endereço IP, um host também precisa saber
quantos bits estão a ser utilizados para a ID da sub-rede e
quantos bits são destinados à ID do host.
A máscara de sub-rede é o endereço que determina estes
limites. Esta máscara possui uma faixa de 32 bits contendo
bits 1 para a ID da rede e da sub-rede, e bits 0 para a ID do
host.
Camada de rede - 3
Um host, dado seu IP e sua máscara de sub-rede,
pode determinar se um pacote IP é destinado para
(1) um host na sua própria sub-rede, (2) um host
em numa sub-rede diferente localizado na sua
própria rede ou (3) um host em numa rede
diferente.
Ao interpretarmos o endereço IP juntamente com
a mascara de sub-rede, temos a indicação da sua
classe de endereçamento que mostra os limites
entre a ID da rede e a ID da sub-rede e a ID do
host, como veremos mais a frente.
Camada de rede - 3
Para controlarmos o número de hosts e de redes
possíveis usam-se máscaras de rede. Desta forma, é
possível controlar melhor os domínios de broadcast de uma
rede e consequentemente, o congestionamento da mesma.
Tal como os endereços IP, as máscaras são constituídas por
32 bits (4 octetos).
Existem três tipos de máscaras.
* Classe A - 255.0.0.0 ou 11111111.00000000. 00000000.
00000000 ou /8 (notação CIDR - Classless Inter-Domain.
Routing)
* Classe B - 255.255.0.0 ou 11111111. 11111111.00000000.
00000000 ou /16 (CIDR)
* Classe C - 255.255.255.0 ou 11111111. 11111111. 11111111.
00000000 ou /24 (CIDR)
Camada de rede - 3
A parte da máscara que identifica a rede é
representada com bits 1 e os hosts são
representados pelos bits 0. Como podemos verificar, a
máscara de classe A indica que a rede apenas é
identificada no primeiro octeto e os restantes três octetos
servem para identificar os hosts. Até agora, não parece
existir nada de novo. Todavia, se consultarmos, por
exemplo, a tabela de endereços IP privados mostrada
anteriormente, verificamos que as opções do número de
redes são muito limitadas, senão vejamos:
◦ Classe A permite 1 rede;
◦ Classe B 16 redes;
◦ Classe C 256 redes.
Camada de rede - 3
Recorrendo a subnetting é possível:
◦ Mais bits para a rede;
◦ Menos bits para os hosts;
◦ A máscara é que define a parte do IP que identifica a nova rede;
◦ Controlar o congestionamento da rede (limitar os domínios de Broadcast) .
Camada de rede - 3
Analisando o exemplo anterior, verifica-se
não ser possível alterar o valor do primeiro
octeto (172), já que dessa forma o IP
deixaria de pertencer a uma rede privada.
Automaticamente, diz-se que apenas é
possível uma rede naquele octeto. No
octeto seguinte, estão disponíveis os
valores de 16 a 31. Logo, temos 16 redes
possíveis para este octeto.
Camada de rede - 3
Imagina agora, que é necessário criar 300 redes para um
projecto de rede. Nenhuma classe de IP's privada permite
obter um número de redes tão elevado. Com a ajuda de
uma máscara de classe C e um endereço de classe B,
consegue-se obter um valor que satisfaça esse pedido.
Camada de rede - 3
Exercicio proposto:
Camada de rede - 3