Maurício C. Freitas
Centro Universitário do Pará (CESUPA) – Área de Ciências Exatas e
Tecnologia (ACET) - 66.060- 230, Belém –
Pará – Brasil
E-mail: mauriciocarvalhobcc@gmail.com
Uma visão geral do protocolo TCP/IP
Para
que os computadores de uma rede possam trocar informações entre si é necessário
que todos os computadores adotem as mesmas regras para o envio e o recebimento
de informações. Este conjunto de regras é conhecido como Protocolo de
comunicação. Falando de outra maneira podemos afirmar: “Para que os
computadores de uma rede possam trocar informações entre si é necessário que
todos estejam utilizando o mesmo protocolo de comunicação”. No protocolo de
comunicação estão definidas todas as regras necessárias para que o computador
de destino, “entenda” as informações no formato que foram enviadas pelo
computador de origem. Dois computadores com diferentes protocolos instalados,
não serão capazes de estabelecer uma comunicação e nem serão capazes de trocar
informações.
Antes
da popularização da Internet existiam diferentes protocolos sendo utilizados
nas redes das empresas. Os mais utilizados eram os seguintes:
- TCP/IP
- NETBEUI
- IPX/SPX
- Apple Talk
Se
colocarmos dois computadores ligados em rede, um com um protocolo, por exemplo
o TCP/IP e o outro com um protocolo diferente, por exemplo NETBEUI, estes dois
computadores não serão capazes de estabelecer comunicação e trocar informações
entre si. Por exemplo, o computador com o protocolo NETBEUI instalado, não será
capaz de acessar uma pasta ou uma Impressora compartilhada no computador com o
protocolo TCP/IP instalado.
À
medida que a Internet começou, a cada dia, tornar-se mais popular, com o
aumento exponencial do número de usuários, o protocolo TCP/IP passou a
tornar-se um padrão de fato, utilizando não só na Internet, como também nas
redes internas das empresas, redes estas que começavam a ser conectadas à
Internet. Como as redes internas precisavam conectar-se à Internet, tinham que
usar o mesmo protocolo da Internet, ou seja: TCP/IP.
Dos
principais Sistemas Operacionais do mercado, o UNIX sempre utilizou o protocolo
TCP/IP como padrão. O Windows dá suporte ao protocolo TCP/IP desde as primeiras
versões, porém, para o Windows, o TCP/IP somente tornou-se o protocolo padrão a
partir do Windows 2000. Ser o protocolo padrão significa que o TCP/IP será
instalado, automaticamente, durante a instalação do Sistema Operacional, se for
detectada a presença de uma placa de rede. Até mesmo o Sistema Operacional
Novell, que sempre foi baseado no protocolo IPX/SPX como protocolo padrão,
passou a adotar o TCP/IP como padrão a partir da versão 5.0.
O
que temos hoje, na prática, é a utilização do protocolo TCP/IP na esmagadora
maioria das redes. Sendo a sua adoção cada vez maior. Como não poderia deixar
de ser, o TCP/IP é o protocolo padrão do Windows 2000, Windows Server 2003,
Windows XP e também do Windows Vista (a ser lançado em Fevereiro de 2007) e do
Windows Longhorn Server (com lançamento previsto para o final de 2007). Se
durante a instalação, o Windows detectar a presença de uma placa de rede,
automaticamente será sugerida a instalação do protocolo TCP/IP.
Nota:
Para pequenas redes, não conectadas à Internet, é recomendada a adoção do
protocolo NETBEUI, devido a sua simplicidade de configuração. Porém esta é uma
situação muito rara, pois dificilmente teremos uma rede isolada, sem conexão
com a Internet ou com parceiros de negócios, como clientes e fornecedores.
Agora
passaremos a estudar algumas características do protocolo TCP/IP. Veremos que cada
equipamento que faz parte de uma rede baseada no TCP/IP tem alguns parâmetros
de configuração que devem ser definidos, para que o equipamento possa
comunicar-se com sucesso na rede e trocar informações com os demais
equipamentos da rede.
Configuração do Protocolo CP/IP para um computador em Rede
Configuração do Protocolo CP/IP para um computador em Rede
Quando
utilizamos o protocolo TCP/IP como protocolo de comunicação em uma rede de
computadores, temos alguns parâmetros que devem ser configurados em todos os
equipamentos que fazem parte da rede (computadores, servidores, hubs, switchs,
impressoras de rede, etc). Na Figura a seguir temos uma visão geral de uma
pequena rede baseada no protocolo TCP/IP:
Figura
- Uma rede baseada no protocolo TCP/IP.
No exemplo da Figura
1 temos uma rede local para uma pequena empresa. Esta rede local não está
conectada a outras redes ou à Internet. Neste caso cada computador da rede
precisa de, pelo menos, dois parâmetros configurados:
- Número IP
- Máscara de sub-rede
O Número IP é um
número no seguinte formato:
x.y.z.w
ou
seja, são quatro números separados por ponto. Não podem existir duas máquinas,
com o mesmo número IP, dentro da mesma rede. Caso eu configure um novo
equipamento com o mesmo número IP de uma máquina já existente, será gerado um
conflito de Número IP e um dos equipamentos, muito provavelmente o novo
equipamento que está sendo configurado, não conseguirá se comunicar com a rede.
O valor máximo para cada um dos números (x, y, z ou w) é 255.
Uma
parte do Número IP (1, 2 ou 3 dos 4 números) é a identificação da rede, a outra
parte é a identificação da máquina dentro da rede. O que define quantos dos
quatro números fazem parte da identificação da rede e quantos fazem parte da
identificação da máquina é a máscara de sub-rede (subnet mask). Vamos
considerar o exemplo de um dos computadores da rede da Figura 1:
- Número IP: 10.200.150.1
- Máscara de Sub-rede: 255.255.255.0
As
três primeiras partes da máscara de sub-rede (subnet) iguais a 255 indicam que
os três primeiros números representam a identificação da rede e o último número
é a identificação do equipamento dentro da rede. Para o nosso exemplo teríamos
a rede: 10.200.150, ou seja, todos os equipamentos do nosso exemplo
fazem parte da rede 10.200.150 ou, em outras
palavras, o número IP de todos os equipamentos da rede começam com 10.200.150.
Neste
exemplo, onde estamos utilizando os três primeiros números para identificar a
rede e somente o quarto número para identificar o equipamento, temos um limite
de 254 equipamentos que podem ser ligados neste rede. Observe que são 254 e não
256, pois o primeiro número – 10.200.150.0 e o último número – 10.200.250.255
não podem ser utilizados como números IP de equipamentos de rede. O primeiro é
o próprio número da rede:10.200.150.0 e o último é o endereço de
Broadcast: 10.200.150.255. Ao enviar uma mensagem para o endereço
de Broadcast, todas as máquinas da rede receberão a mensagem.
Como o TCP/IP usa a máscara de sub-rede e o roteador
Quando dois computadores tentam trocar informações em uma rede, o
TCP/IP precisa, primeiro, determinar se os dois computadores pertencem a mesma
rede ou a redes diferentes. Neste caso podemos ter duas situações distintas:
·
Situação
1: Os
dois computadores pertencem a mesma rede: Neste caso o TCP/IP envia o pacote para o barramento local da
rede. Todos os computadores recebem o pacote, mas somente o computador que é o
destinatário do pacote é que o captura e passa para processamento pelo Windows
e pelo programa de destino. Como é que o computador sabe se ele é ou não o
destinatário do pacote? Muito simples, no pacote de informações está contido o
endereço IP do computador destinatário. Em cada computador, o TCP/IP compara o
IP de destinatário do pacote com o IP do computador, para saber se o pacote é
ou não para o respectivo computador.
·
Situação
2: Os
dois computadores não pertencem a mesma rede: Neste caso o TCP/IP envia o pacote para o Roteador (endereço do
Default Gateway configurado nas propriedades do TCP/IP) e o Roteador se
encarrega de fazer o pacote chegar ao seu destino. Em uma das partes deste
tutorial veremos detalhes sobre como o Roteador é capaz de rotear pacotes de
informações até redes distantes.
Agora
a pergunta que tem a ver com este tópico:
“Como é que o TCP/IP faz para saber se o computador de origem e o
computador de destino pertencem a mesma rede?”
Vamos
usar alguns exemplos práticos para explicar como o TCP/IP faz isso:
Exemplo 1: Com base na
figura anterior, suponha que o computador cujo IP é 10.200.150.5 (origem)
queira enviar um pacote de informações para o computador cujo IP é 10.200.150.8
(destino), ambos com máscara de sub-rede igual a 255.255.255.0.
O primeiro passo é converter o número IP das duas máquinas e da
máscara de sub-rede para binário. Com base nas regras que vimos anteriormente,
teríamos a seguinte conversão:
Computador de origem:
10
|
200
|
150
|
5
|
00001010
|
11001000
|
10010110
|
00000101
|
Computador de destino:
10
|
200
|
150
|
8
|
00001010
|
11001000
|
10010110
|
00001000
|
Máscara de sub-rede:
255
|
255
|
255
|
0
|
11111111
|
11111111
|
11111111
|
00000000
|
Feitas as conversões para binário, vamos ver que tipo de cálculos
o TCP/IP faz, para determinar se o computador de origem e o computador de
destino estão na mesma rede.
Em primeiro lugar é feita uma operação “E”, bit a bit, entre o Número IP e a máscara de Sub-rede do computador de origem, conforme indicado na tabela a seguir:
Em primeiro lugar é feita uma operação “E”, bit a bit, entre o Número IP e a máscara de Sub-rede do computador de origem, conforme indicado na tabela a seguir:
10.200.150.5
|
00001010
|
11001000
|
10010110
|
00000101
|
E |
255.255.255.0
|
11111111
|
11111111
|
11111111
|
00000000
|
|
10.200.150.0
|
00001010
|
11001000
|
10010110
|
00000000
|
Resultado
|
Agora é feita uma operação “E”, bit a bit, entre o Número IP e a
máscara de sub-rede do computador de destino, conforme indicado na tabela a
seguir:
10.200.150.8
|
00001010
|
11001000
|
10010110
|
00001000
|
E |
255.255.255.0
|
11111111
|
11111111
|
11111111
|
00000000
|
|
10.200.150.0
|
00001010
|
11001000
|
10010110
|
00000000
|
Resultado
|
Agora o TCP/IP compara os resultados das duas operações. Se os
dois resultados forem iguais, aos dois computadores, origem e destino,
pertencem a mesma rede local. Neste caso o TCP/IP envia o pacote para o
barramento da rede local. Todos os computadores recebem o pacote, mas somente o
destinatário do pacote é que o captura e passa para processamento pelo Windows
e pelo programa de destino. Como é que o computador sabe se ele é ou não o
destinatário do pacote? Muito simples, no pacote de informações está contido o
endereço IP do destinatário. Em cada computador, o TCP/IP compara o IP de
destinatário do pacote com o IP do computador, para saber se o pacote é ou não
para o respectivo computador.
É o que acontece neste exemplo, pois o resultado das duas operações
“E” é igual: 10.200.150.0, ou seja, os dois computadores pertencem a rede:
10.200.150.0
Como você já deve ter adivinhado, agora vamos a um exemplo, onde
os dois computadores não pertencem a mesma rede, pelo menos devido às
configurações do TCP/IP.
Exemplo 2: Suponha que
o computador cujo IP é 10.200.150.5 (origem) queira enviar um pacote de
informações para o computador cujo IP é 10.204.150.8 (destino), ambos com
máscara de sub-rede igual a 255.255.255.0.
O primeiro passo é converter o número IP das duas máquinas e da
máscara de sub-rede para binário. Com base nas regras que vimos anteriormente,
teríamos a seguinte conversão:
Computador de origem:
10
|
200
|
150
|
5
|
00001010
|
11001000
|
10010110
|
00000101
|
Computador de destino:
10
|
204
|
150
|
8
|
00001010
|
11001100
|
10010110
|
00001000
|
Máscara de sub-rede:
255
|
255
|
255
|
0
|
11111111
|
11111111
|
11111111
|
00000000
|
Feitas as conversões para binário, vamos ver que tipo de cálculos
o TCP/IP faz, para determinar se o computador de origem e o computador de
destino estão na mesma rede. Em primeiro lugar é feita uma operação “E”, bit a
bit, entre o Número IP e a máscara de Sub-rede do computador de origem,
conforme indicado na tabela a seguir:
10.200.150.5
|
00001010
|
11001000
|
10010110
|
00000101
|
E |
255.255.255.0
|
11111111
|
11111111
|
11111111
|
00000000
|
|
10.200.150.0
|
00001010
|
11001000
|
10010110
|
00000000
|
Resultado
|
Agora é feita uma operação “E”, bit a bit, entre o Número IP e a
máscara de sub-rede do computador de destino, conforme indicado na tabela a
seguir:
10.204.150.8
|
00001010
|
11001100
|
10010110
|
00001000
|
E |
255.255.255.0
|
11111111
|
11111111
|
11111111
|
00000000
|
|
10.204.150.0
|
00001010
|
11001100
|
10010110
|
00000000
|
Resultado
|
Agora o TCP/IP compara os resultados das duas operações. Neste
exemplo, os dois resultados são diferentes: 10.200.150.0 e 10.204.150.0. Nesta
situação o TCP/IP envia o pacote para o Roteador (endereço do Default Gateway
configurado nas propriedades do TCP/IP) e o Roteador se encarrega de fazer o
pacote chegar a rede do computador de destino. Em outras palavras o Roteador
sabe entregar o pacote para a rede 10.204.150.0 ou sabe para quem enviar (um
outro roteador), para que este próximo roteador possa encaminhar o pacote. Este
processo continua até que o pacote seja entregue na rede de destino ou seja
descartado, por não ter sido encontrada uma rota para a rede de destino.
Observe que, na figura anterior, temos dois computadores que,
apesar de estarem fisicamente na mesma rede, não conseguirão se comunicar
devido a um erro de configuração na máscara de sub-rede de um dos computadores.
É o caso do computador 10.200.150.4 (com máscara de sub-rede 255.255.250.0).
Como este computador está com uma máscara de sub-rede diferente dos demais
computadores da rede (255.255.255.0), ao fazer os cálculos, o TCP/IP chega a
conclusão que este computador pertence a uma rede diferente, o que faz com que
ele não consiga se comunicar com os demais computadores da rede local.
Explicando Roteamento – um exemplo prático
Vou
iniciar a explicação sobre como o roteamento funciona, através da análise de um
exemplos simples. Vamos imaginar a situação de uma empresa que tem a matriz em
SP e uma filial no RJ. O objetivo é conectar a rede local da matriz em SP com a
rede local da filial no RJ, para permitir a troca de mensagens e documentos
entre os dois escritórios. Nesta situação o primeiro passo é contratar um link
de comunicação entre os dois escritórios. Em cada escritório deve ser instalado
um Roteador. E finalmente os roteadores devem ser configurados para que seja
possível a troca de informações entre as duas redes. Na figura a seguir temos a
ilustração desta pequena rede de longa distância (WAN). Em seguida vamos
explicar como funciona o roteamento entre as duas redes:
Nesta
pequena rede temos um exemplo simples de roteamento, mas muito a explicar.
Então vamos ao trabalho.
Como
está configurado o endereçamento das redes locais e dos roteadores?
- Rede de SP: Esta rede utiliza um esquema de endereçamento 10.10.10.0, com máscara de sub-rede 255.255.255.0. Observe que embora, teoricamente, seria uma rede Classe A, estamos utilizando uma máscara de sub-rede classe C. Na prática, é uma rede Classe C, pois, na prática, consideramos a Máscara de Sub-rede como critério para definir a classe de rede e não as faixas teóricas, apresentadas na Parte 3. Veja a parte 3 para detalhes sobre Classes de Endereços IP.
- Rede de RJ: Esta rede utiliza um esquema de endereçamento 10.10.20.0, com máscara de sub-rede 255.255.255.0. Observe que embora, teoricamente, seria uma rede Classe A, estamos utilizando uma máscara de sub-rede classe C. Veja a Parte 3 para detalhes sobre Classes de Endereços IP.
- Roteadores: Cada roteador possui duas interfaces. Uma é a chamada interface de LAN (rede local), a qual conecta o roteador com a rede local. A outra é a interface de WAN (rede de longa distância), a qual conecta o roteador com o link de dados. Na interface de rede local, o roteador deve ter um endereço IP da rede interna. No roteador de SP, o endereço é 10.10.10.1. Não é obrigatório, mas é um padrão normalmente adotado, utilizar o primeiro endereço da rede para o Roteador. No roteador do RJ, o endereço é 10.10.20.1
- Rede dos roteadores: Para que as interfaces externas dos roteadores possam se comunicar, eles devem fazer parte de uma mesma rede, isto é, devem compartilhar um esquema de endereçamento comum. As interfaces externas dos roteadores (interfaces WAN), fazem parte da rede 10.10.30.0, com máscara de sub-rede 255.255.255.0.
- Na verdade - 3 redes: Com isso temos, na prática três redes, conforme resumido a seguir:
- SP: 10.10.10.0/255.255.255.0
- RJ: 10.10.20.0/255.255.255.0
- Interfaces WAN dos Roteadores: 10.10.30.0/255.255.255.0
Na prática é como se
a rede 10.10.30.0 fosse uma “ponte” entre as duas outras redes.
Analise
da tabela de Roteamento
Rota padrão
Esta
rota é indicada por uma identificação de rede 0.0.0.0 com uma máscara de
sub-rede 0.0.0.0. Quando o TCP/IP tenta encontrar uma rota para um determinado
destino, ele percorre todas as entradas da tabela de roteamento em busca de uma
rota específica para a rede de destino. Caso não seja encontrada uma rota para
a rede de destino, será utilizada a rota padrão. Em outras palavras, se não
houver uma rota específica, mande através da rota padrão. Observe que a rota
padrão é justamente o default gateway da rede (10.204.200.1), ou seja, a
interface de LAN do roteador da rede. O parâmetro Interface (10.204.200.50) é o
número IP da placa de rede do próprio servidor. Em outras palavras: Se não
houver uma rota específica manda para a rota padrão, onde o próximo hope da
rede é o 10.204.200.1 e o envio para este hope é feito através da interface
10.204.200.50 (ou seja, a próprio placa de rede do servidor).
Endereço da rede local
Esta
rota é conhecida como Rota da Rede Local. Ele basicamente diz o seguinte:
"Quando o endereço IP de destino for um endereço da minha rede local,
envie as informações através da minha placa de rede (observe que tanto o
parâmetro Gateway como o parâmetro Interface estão configurados com o número IP
do próprio servidor). Ou seja, se for para uma das máquinas da minha rede
local, manda através da placa de rede, não precisa enviar para o roteador.
Local host (endereço local)
Este
endereço faz referência ao próprio computador. Observe que 10.204.200.50 é o
número IP do servidor que está sendo analisado (no qual executei o comando
route print). Esta rota diz que os programas do próprio computador, que
enviarem pacotes para o destino 10.204.200.50 (ou seja, enviarem pacotes para
si mesmo, como no exemplo de dois serviços trocando informações entre si),
devem usar como Gateway o endereço de loopback 127.0.0.1, através da interface
de loopback 127.0.0.1. Esta rota é utilizada para agilizar as comunicações que
ocorrem entre os componentes do próprio Windows Server 2003, dentro do mesmo
servidor. Ao usar a interface de loopback, toda a comunicação ocorre a nível de
software, ou seja, não é necessário enviar o pacote através das diversas
camadas do protocolo TCP/IP, até que o pacote chegue na camada de enlace (ou
seja, a placa de rede), para depois voltar. Ao invés disso é utilizada a
interface de loopback para direcionar os pacotes corretamente. Observe que esta
entrada tem como máscara de sub-rede o número 255.255.255.255. Esta máscara
indica que a entrada é uma rota para um endereço IP específico (no caso o
próprio IP do servidor) e não uma rota para um endereço de rede.
Network broadcast
(Broadcast de rede)
Esta
rota define o endereço de broadcast da rede. Broadcast significa enviar para
todos os computadores da rede. Quando é utilizado o endereço de broadcast,
todos os computadores da rede recebem o pacote e processam o pacote. O
broadcast é utilizado por uma série de serviços, como por exemplo o WINS, para
fazer verificações periódicas de nomes, para enviar uma mensagem para todos os
computadores da rede, para obter informações de todos os computadores e assim
por diante. Observe que o gateway é o número IP da placa de rede do servidor e
a Interface é este mesmo número, ou seja, para enviar um broadcast para a rede,
envie através da placa de rede do servidor, não há necessidade de utilizar o
roteador. Um detalhe interessante é que, por padrão, a maioria dos roteadores
bloqueia o tráfego de broadcast, para evitar congestionamentos nos links de
WAN.
Rede/endereço de loopback
Comentei
anteriormente que os endereços da rede 127.0.0.0 são endereços especiais,
reservados para fazer referência a si mesmo. Ou seja, quando faço uma referência
a 127.0.0.1 estou me referindo ao servidor no qual estou trabalhando. Esta roda
indica, em palavras simples, que para se comunicar com a rede de loopback
(127.0.0.0/255.0.0.0), utilize "eu mesmo" (127.0.0.1).
Multicast address (endereço de Multicast):
O
tráfego IP, de uma maneira simples, pode ser de três tipos: Unicast é o tráfego
direcionado para um número IP definido, ou seja, para um destinatário, definido
por um número IP. Broadcast é o tráfego dirigido para todos os computadores de
uma ou mais redes. E tráfego Multicast é um tráfego direcionado para um grupo
de computadores, os quais estão configurados e "inscritos" para
receber o tráfego multicast. Um exemplo prático de utilização do multicast é
para uma transmissão de vídeo através da rede. Vamos supor que de uma rede de
1000 computadores, apenas 30 devam receber um determinado arquivo de vídeo com
um treinamento específico. Se for usado tráfego unicast, serão transmitidas 30
cópias do arquivo de vídeo (o qual já é um arquivo grande), uma cópia para cada
destinatário. Com o uso do Multicast, uma única cópia é transmitida através do
link de WAN e o tráfego multicast (com base no protocolo IGMP), entrega uma
cópia do arquivo apenas para os 30 computadores devidamente configurados para
receber o tráfego multicast. Esta rota define que o tráfego multicast deve ser
enviado através da interface de rede, que é o número IP da placa de rede do
servidor
Limited Broadcast (Broadcast Limitado)
Esta
é a rota utilizada para o envio de broadcast limitado. O endereço de broadcast
limitado é formato por todos os 32 bits do endereço IP sendo iguais a 1
(255.255.255.255). Este endereço é utilizado quando o computador tem que fazer
o envio de um broadcast na rede local (envio do tipo um para todos na rede),
porém o computador não conhece a número da rede local (network ID). Você pode perguntar:
Mas em que situação o computador não conhecerá a identificação da rede local?
Por exemplo, quando você inicializa um computador, configurado para obter as
configurações do TCP/IP a partir de um servidor DHCP, a primeira coisa que este
computador precisa fazer é localizar um servidor DHCP na rede e requisitar as
configurações do TCP/IP. Ou seja, antes de receber as configurações do DHCP, o
computador ainda não tem endereço IP e nem máscara de sub-rede, mas tem que se
comunicar com um servidor DHCP. Esta comunicação é feita via broadcast
limitado, onde o computador envia um pacote de formato específico (chamado de
DHCP Discovery), para tentar descobrir um servidor DHCP na rede. Este pacote é
enviado para todos os computadores. Aquele que for um servidor DHCP irá
responder a requisição do cliente. Aí o processo de configuração do DHCP
continua, até que o computador esteja com as configurações do TCP/IP definidas,
configurações estas obtidas a partir do servidor DHCP.
TCP/IP camadas
O TCP/IP é um conjunto de protocolos de
comunicação entre computadores em rede (também chamado de pilha de protocolos
TCP/IP). Seu nome vem de dois protocolos: o TCP (Transmission Control Protocol - Protocolo de Controlo de Transmissão) e
o IP (Internet Protocol - Protocolo de Interconexão).
O conjunto de protocolos pode ser visto como um modelo de camadas, onde cada
camada é responsável por um grupo de tarefas, fornecendo um conjunto de
serviços bem definidos para o protocolo da camada superior. As camadas mais
altas estão logicamente mais perto do usuário (chamada camada de aplicação) e
lidam com dados mais abstratos
Camadas da pilha dos protocolos internet
O modelo TCP/IP de encapsulamento busca fornecer abstração aos protocolos e serviços para diferentes camadas de uma pilha de estruturas de dados (ou simplesmente pilha)
Camada
|
Exemplo
|
4 - Aplicação
(camadas OSI 5 até 7) |
|
3 - Transporte
(camadas OSI 4) |
|
2 - Internet ou Inter - Rede
(camada OSI 3) |
|
1 - Interface com a Rede
(camadas OSI 1 |
As camadas mais próximas do topo estão
logicamente mais perto do usuário, enquanto aquelas mais abaixo estão
logicamente mais perto da transmissão física do dado. Cada camada tem umprotocolo
de camada acima e um protocolo de camada abaixo (exceto as camadas da ponta,
obviamente) que podem usar serviços de camadas anteriores ou fornecer um
serviço, respectivamente.
Enxergar as camadas como fornecedores ou
consumidores de serviço é um método de abstração para isolar protocolos de camadas acima dos
pequenos detalhes de transmitir bits através, digamos, de ethernet, e a detecção de colisão enquanto as camadas
abaixo evitam ter de conhecer os detalhes de todas as aplicações e seus
protocolos.
Essa abstração também permite que camadas de
cima forneçam serviços que as camadas de baixo não podem fornecer. Por exemplo,
o IP é projetado para não ser confiável e é um protocolobest effort delivery.
Isso significa que toda a camada
de transporte deve indicar se irá ou não fornecer
confiabilidade e em qual nível.
O TCP (Transmission Control Protocol -
Protocolo de Controle de Transmissão), é um protocolo orientado a conexões
confiável que permite a entrega sem erros de um fluxo de bytes.
O UDP fornece integridade de dados (via um checksum) mas não fornece
entrega garantida; já o TCP fornece tanto integridade dos dados quanto garantia
de entrega (retransmitindo até que o destinatário receba o pacote).
Interconexão com Roteadores
·
Repetidor
Em informática, repetidor é um equipamento
utilizado para interligação de redes idênticas, pois eles amplificam e regeneram
eletricamente os sinais transmitidos no meio físico.
Um repetidor atua na camada
física (Modelo OSI). Ele recebe todos os pacotes de cada uma das
redes que interliga e os repete nas demais redes sem realizar qualquer tipo de
tratamento sobre os mesmos. Não se pode usar muitos destes dispositivos em uma
rede local, pois degeneram o sinal no domínio digital e causam problemas de
sincronismo entre as interfaces de rede.
Repetidores são utilizados
para estender a transmissão de ondas de rádio, por exemplo, redes wireless, wimax e telefonia celular.
·
Ponte
Uma ponte é
um dispositivo material que permite ligar redes que trabalham com o mesmo protocolo. Assim, contrariamente ao repetidor, que trabalha a nível
físico, a ponte trabalha igualmente
ao nível
lógico(a nível da camada 2 do modelo
OSI), quer dizer que é capaz de filtrar as tramas deixando passar unicamente
aquelas cujo endereço corresponde a uma máquina situada no extremo da
ponte.
Assim, a ponte
permite segmentar uma rede conservando a nível da rede local as tramas
destinadas ao nível local e transmitindo as tramas destinadas às outras redes.
Isto permite reduzir o tráfego (nomeadamente as colisões) em cada uma das redes
e aumentar o nível de confidencialidade, porque as informações destinadas a uma
rede não podem ser ouvidas no outro fio.
Por outro lado, a
operação de filtragem realizada pela ponte pode conduzir a um ligeiro atraso
aquando da passagem de uma rede à outra, é a razão pela qual as pontes devem
ser colocadas judiciosamente numa rede.
Uma ponte serve habitualmente para
transitar pacotes entre duas redes do mesmo tipo.
·
Comutador
Um comutador (em
inglês switch) é uma ponte multiportas,
o que quer dizer que se trata de um elemento activo que age no nível 2 do modelo
OSI.
O comutador analisa as tramas que
chegam às suas portas de entrada de entrada e filtra os dados a fim de as
comutar unicamente para as portas adequadas (fala-se de comutação ou redes
comutadas). De modo que o comutador permite combinar as propriedades da
ponte em matéria de filtragem e do concentrador em matéria de conexão. Eis a
representação de um switch num esquema de princípio:
Roteador
O Roteador é um
equipamento de interconexão de redes informáticas que possibilita o
encaminhamento dos pacotes entre duas redes ou mais, a fim de determinar o
caminho que o pacote de dados deve tomar.
Quando um
utilizador chama uma URL,
o cliente Web (navegador) interroga o servidor de nomes, que lhe indica o endereço IP da máquina visada.
O seu computador
envia o pedido ao router mais próximo, ou seja, à passarela, por defeito da rede onde se encontra. Este router
vai, então, determinar para que máquina os dados serão encaminhados, de maneira
a que o caminho escolhido seja o melhor.
Para fazer isso, os roteadores mantêm atualizadas as tabelas de encaminhamento, verdadeiro mapeamento de itinerários a seguir, em função do endereço visado. Existem inúmeros protocolos para realizar esta tarefa.
Para fazer isso, os roteadores mantêm atualizadas as tabelas de encaminhamento, verdadeiro mapeamento de itinerários a seguir, em função do endereço visado. Existem inúmeros protocolos para realizar esta tarefa.
Além de sua função de encaminhamento, os roteadores permitem a manipulação dos dados
que circulam sob a forma de datagramas para se certificarem da passagem de um tipo de
rede a outro. Ora, na medida em que as redes não têm as mesmas capacidades em
termos de dimensão de pacotes de dados, os roteadores estão encarregues
de fragmentar os pacotes de dados, para permitir a sua
circulação.
·
Gateway
Uma ponte estreita aplicativa (em inglês “gateway”) é um sistema material e de software que permite fazer a
ligação entre duas redes, para fazer o interface entre protocolos rede diferentes.
Quando
um utilizador distante contacta tal dispositivo, este último examina o seu
pedido e, se por acaso este corresponde às regras que o administrador rede
definiu, a ponte estreita cria uma ligação entre as duas redes. As informações
não são, assim, transmitidas directamente, mas traduzidas para assegurar a
continuidade dos dois protocolos.
Este sistema oferece, para além do interface
entre duas redes heterogéneas, uma segurança suplementar porque cada informação
é passada à lupa (o que pode causar lentidão) e às vezes acrescentada a um registo
que reconstitui o historial dos acontecimentos.
O inconveniente essencial deste sistema é que tal aplicação deve estar disponível para cada serviço(FTP, HTTP, Telnet, etc.).
O inconveniente essencial deste sistema é que tal aplicação deve estar disponível para cada serviço(FTP, HTTP, Telnet, etc.).
RIP
– Routing Internet Protocol
Existem
diferentes maneiras para criar as tabelas de roteamento. A primeira maneira é
criar as tabelas manualmente. O administrador utiliza comandos (como o comando
route add no Windows 2000 Server) para adicionar cada rota manualmente, em cada
roteador da rede. Este método somente é indicado para pequenas redes, onde
existe um pequeno número de roteadores, com poucas rotas e rotas que não são
alteradas freqüentemente.
Para
redes maiores, com muitas rotas e muitos roteadores, este método é simplesmente
impraticável. A simples adição de uma nova rota, exigiria a alteração
das tabelas de roteamento em todos os roteadores da rede.
Outro
problema com a criação manual das tabelas de roteamento, é que não existe a
detecção automática de perda de rotas quando um roteador fica indisponível ou
quando um link para uma determinada rota, está com problemas. Nestas situações,
os demais roteadores da rede continuarão a encaminhar pacotes para o roteador
com problemas ou através do link que está fora do ar, porque a tabela de
roteamento está configurada para enviar pacotes para a referida rota, quer ela
esteja disponível ou não. Nesta caso uma simples indisponibilidade de um
roteador exigiria uma reconfiguração manual em todas as tabelas de roteamento,
de todos os roteadores da rede. Quando o roteador voltar a estar disponível,
uma nova reconfiguração das tabelas de roteamento teria que ser feita. Com
estes exemplos é possível ver que a configuração manual das tabelas de
roteamento é um método que somente se aplica a pequenas redes, com um número
reduzido de roteadores e de rotas.
Outra
maneira de criar as tabelas de roteamento é dinamicamente. Com este método, os
roteadores trocam informações entre si, periodicamente e atualizam suas tabelas
de roteamento, com base nestas informações trocadas entre os roteadores. O
método dinâmico exige bem menos manutenção (intervenção manual dos
administradores da rede) e pode ser utilizado em grandes redes, como por
exemplo a Internet. A atualização dinâmica das tabelas de roteamento é possível
graças a utilização de protocolos de roteamento dinâmicos. Os protocolos mais
conhecidos, para a criação automática de tabelas de roteamento são os
seguintes:
- Routing Information Protocol (RIP)
- Open Shortest Path First (OSPF)
Nota: Se
você encontrar estes protocolos traduzidos, em algum livro ou revista, no
mínimo, faça um “biquinho” para quem traduziu. Eu já vi uma maravilha de
tradução para OSPF: Abrindo primeiro o caminho mais curto. Deus nos ajude. Tudo
a ver com roteamento.
Com
o uso dos protocolos de roteamento dinâmico, os roteadores trocam informações
entre si, periodicamente e “aprendem” sobre a rede e sobre as rotas
disponíveis.
Ou
seja, os roteadores vão “descobrindo” as rotas existentes e gravando estas
rotas em suas tabelas de roteamento. Se um roteador ficar off-line, em pouco
tempo os demais roteadores “saberão” que este roteador está off-line e
atualizarão, automaticamente, suas tabelas de roteamento. Com isso cada
roteador aprende novos caminhos, já considerando a indisponibilidade do
roteador com problemas, e repassam estas informações para os demais roteadores.
Esta possibilidade não existe quando as tabelas são criadas manualmente,
conforme descrito anteriormente.
Evidentemente
que para redes maiores, a única alternativa viável é o uso de um dos protocolos
de roteamento dinâmico, ou até mesmo uma combinação de ambos, conforme
descreverei mais adiante.
Como funcionam os protocolos de roteamento dinâmico
O
protocolo RIP é baseado em uma algoritmo conhecido como distance-vector
(distância vetorial). Este algoritmo é baseado na distância entre dois
roteadores, sendo que esta “distância” é medida em termos do número de
roteadores existentes no caminho entre os dois roteadores – também conhecido
como hopes. Já o protocolo OSPF utiliza um algoritmo baseado em propagação
de rotas entre roteadores denominados como adjacentes (veja o conceito de
formação de adjacências na Parte 15), conforme descreverei mais
adiante. As principais diferenças entre os protocolos RIP e OSPF são referentes
as seguintes características:
- Quais informações sobre rotas são compartilhadas entre os roteadores. Quando um roteador apresenta problemas, a rede deve ser capaz de reconfigurar-se, para definir novas rotas, já baseadas na nova topologia da rede, sem o roteador com problemas. O tempo que a rede leva para reconfigurar-se é conhecido como convergência. Um dos principais problemas do protocolo RIP é o alto tempo de convergência em relação ao OSPF, que tem um tempo de convergência bem menor.
- Como as informações sobre rotas e sobre a topologia da rede são compartilhadas entre os roteadores: Este aspecto também influencia o tempo de convergência da rede e apresenta diferenças significativas no RIP e no OSPF.
A seguir apresento
mais detalhes sobre o protocolo RIP. O protocolo OSPF será abordado na Parte
15
RIP - Routing Information Protocol
Neste
tópico você entenderá como funciona o RIP, como as informações são trocadas
entre os roteadores que usam RIP, quais as diferenças entre RIP versão 1 (RIP
v1) e RIP versão 2 (RIP v2) e como configurar o RIP no RRAS.
Uma
introdução ao RIP
O
protocolo RIP é baseado em uma troca de mensagens entre os roteadores que
utilizam o protocolo RIP. Cada mensagem do RIP contém uma série de informações
sobre as rotas que o roteador conhece (com base na sua tabela de roteamento
atual) e a distância do roteador para cada uma das rotas. O roteador que recebe
as mensagens, com base na sua distância para o roteador que enviou a mensagem,
calcula a distância para as demais redes e grava estas informações em sua
tabela de roteamento. É importante salientar que distância significa hope, ou
melhor, o número de roteadores existentes em um determinado caminho, em uma
determinada rota.
As
informações entre roteadores são trocadas quando o roteador é inicializado,
quando o roteador recebe atualizações em sua tabela de roteamento e também em
intervalos regulares. Aqui a primeira desvantagem do RIP. Mesmo que não exista
nenhuma alteração nas rotas da rede, os roteadores baseados em RIP, continuarão
a trocar mensagens de atualização em intervalos regulares, por padrão a cada 30
segundos.
Dentre
outros, este é um dos motivos pelos quais o RIP não é indicado para redes
maiores, pois nestas situações o volume de tráfego gerado pelo RIP, poderia
consumir boa parte da banda disponível. O RIP é projetado para intercambiar
informações de roteamento em uma rede de tamanho pequeno para médio. Além
disso, cada mensagem do protocolo RIP comporta, no máximo, informações sobre 25
rotas diferentes, o que para grandes redes, faria com que fosse necessária a
troca de várias mensagens, entre dois roteadores, para atualizar suas
respectivas tabelas, com um grande número de rotas. Ao receber atualizações, o
roteador atualiza a sua tabela de roteamento e envia estas atualizações para
todos os roteadores diretamente conectados, ou seja, a um hope de distância.
A
maior vantagem do RIP é que ele é extremamente simples para configurar e
implementar em uma rede. Sua maior desvantagem é a incapacidade de ser ampliado
para interconexões de redes de tamanho grande a muito grande.
A
contagem máxima de hopes usada pelos roteadores RIP é 15. As redes que estejam
a 16 hopes ou mais de distância, serão consideradas inacessíveis. À medida que
as redes crescem em tamanho, os anúncios periódicos de cada roteador RIP podem
causar tráfego excessivo nos links de WAN.
Outra
desvantagem do RIP é o seu longo tempo de convergência. Quando a topologia de
interconexão da rede é alterada (por queda em um link ou por falha em um
roteador, dentre outros motivos), podem ser necessários vários minutos para que
os roteadores RIP se reconfigurem, para refletir a nova topologia de
interconexão da rede. Embora a rede seja capaz de fazer a sua própria
reconfiguração, podem ser formados loops de roteamento que resultem em dados
perdidos ou sem condições de entrega.
Inicialmente,
a tabela de roteamento de cada roteador inclui apenas as redes que estão
fisicamente conectadas. Um roteador RIP envia periodicamente anúncios contendo
suas entradas de tabela de roteamento para informar aos outros roteadores RIP
locais, quais as redes que ele pode acessar.
Os
roteadores RIP também podem comunicar informações de roteamento através de
disparo de atualizações. Os disparos de atualizações ocorrem quando a topologia
da rede é alterada e informações de roteamento atualizadas são enviadas de
forma a refletir essas alterações. Com os disparos de atualizações, a
atualização é enviada imediatamente em vez de aguardar o próximo anúncio
periódico. Por exemplo, quando um roteador detecta uma falha em um link ou
roteador, ele atualiza sua própria tabela de roteamento e envia rotas
atualizadas imediatamente. Cada roteador que recebe as atualizações por
disparo, modifica sua própria tabela de roteamento e propaga a alteração
imediatamente.
Conforme
já salientado anteriormente, uma das principais desvantagens do algoritmo
distance-vector do RIP é o alto tempo de convergência. Ou seja, quando um link
ou um roteador fica indisponível, demora alguns minutos até que as atualizações
de rotas sejam passadas para todos os roteadores. Durante este período pode
acontecer de roteadores enviarem pacotes para rotas que não estejam
disponíveis. Este é um dos principais motivos pelos quais o RIP não pode ser
utilizado em redes de grande porte.
O
problema do Count-to-infinity:
Outro
problema do protocolo RIP é a situação descrita como count-to-infinity (contar
até o infinito). Para entender este problema vamos imaginar dois roteadores
conectados através de um link de WAN. Vamos chamá-los de roteador A e B,
conectando as redes 1, 2 e 3, conforme diagrama da Figura a seguir:
Figura
8.1 O problema count-to-infinity.
Agora
imagine que o link entre o roteador A e a Rede 1 apresente problemas. Com isso
o roteador A sabe que não é possível alcançar a Rede 1 (devido a falha no
link). Porém o Roteador B continua anunciando para o restante da rede, que ele
encontra-se a dois hopes da rede A (isso porque o Roteador B ainda não teve sua
tabela de roteamento atualizada com a informação de que o link para a Rede 1
está indisponível). O Roteador B manda este anúncio, inclusive para o roteador
A.
O
roteador A recebe esta atualização e considera que ele (o Roteador A) está
agora a 3 hopes da Rede 1 (um hope de distância até o Roteador B + dois hopes
de distância do roteador B até a rede 1. Ele não sabe que o caminho do Roteador
B para a rede 1, passa por ele mesmo, ou seja, pelo Roteador A). Com isso volta
a informação para o Roteador B dizendo que o Roteador A está a 3 hopes de
distância. O Roteador B atualiza a sua tabela, considerando agora que ele está
a 4 hopes da Rede 1 (um hope até o roteador A + 3 hopes que o roteador A está
da rede 1, segundo o último anúncio). E este processo continua até que o limite
de 16 hopes seja atingido. Observe que mesmo com um link com problema, o
protocolo RIP não convergiu e continuou anunciando rotas incorretamente, até
atingir uma contagem de 16 hopes (que em termos do RIP significa o infinito,
inalcançável).
O
problema do count-to-infinity é um dos mais graves com o uso do RIP Versão 1,
conhecido apenas como RIP v1. O Windows 200 Server e o Windows Server 2003 dão
suporte também ao RIP v2, o qual apresenta algumas modificações no protocolo,
as quais evitam, ou pelo menos minimizam problemas como o loops de roteamento e
count-to-infinity:
- Split horizon (horizonte dividido): Com esta técnica o roteador registra a interface através da qual recebeu informações sobre uma rota e não difunde informações sobre esta rota, através desta mesma interface. No nosso exemplo, o Roteador B receberia informações sobre a rota para a rede 1, a partir do Roteador B, logo o Roteador A não iria enviar informações sobre Rotas para a rede 1, de volta para o Roteador B. Com isso já seria evitado o problema do count-to-infinity. Em outras palavras, esta característica pode ser resumida assim: Eu aprendi sobre uma rota para a rede X através de você, logo você não pode aprender sobre uma rota para a rede X, através de minhas informações.
- Split horizon with poison reverse (Inversão danificada): Nesta técnica, quando um roteador aprende o caminho para uma determinada rede, ele anuncia o seu caminho, de volta para esta rede, com um hope de 16. No exemplo da Figura anterior, o Roteador B, recebe a informação do Roteador A, que a rede 1 está a 1 hope de distância. O Roteador B anuncia para o roteador A, que a rede 1 está a 16 hope de distância. Com isso, jamais o Roteador A vai tentar achar um caminha para a rede 1, através do Roteador B, o que faz sentido, já que o Roteador A está diretamente conectado à rede 1.
- Triggered updates (Atualizações instantâneas): Com esta técnica os roteadores podem anunciar mudanças na métrica de uma rota imediatamente, sem esperar o próximo período de anuncio. Neste caso, redes que se tornem indisponíveis, podem ser anunciadas imediatamente com um hope de 16, ou seja, indisponível. Esta técnica é utilizada em combinação com a técnica de inversão danificada, para tentar diminuir o tempo de convergência da rede, em situações onde houve indisponibilidade de um roteador ou de um link. Esta técnica diminui o tempo necessário para convergência da rede, porém gera mais tráfego na rede.
Um
estudo comparativo entre RIP v1 e RIP v2
O protocolo RIP v1
apresenta diversos problemas, sendo que os principais são os destacados a
seguir:
O
protocolo RIP v1 usa broadcast para fazer anúncios na rede: Com
isto, todos os hosts da rede receberão os pacotes RIP e não somente os hosts
habilitados ao RIP. Uma contrapartida do uso do Broadcast pelo protocolo RIP
v1, é que isso torna possível o uso dos chamados hosts de RIP Silencioso
(Silent RIP). Um computador configurado para ser um Silent RIP, processa os
anúncios do protocolo RIP (ou seja, reconhece os pacotes enviados pelo RIP e é
capaz de processá-los), mas não anuncia suas próprias rotas. Esta
funcionalidade pode ser habilitada em um computador que não esteja configurado
como roteador, para produzir uma tabela de roteamento detalhada da rede, a
partir das informações obtidas pelo processamento dos pacotes do RIP. Com estas
informações detalhadas, o computador configurado como Salient RIP pode tomar
melhores decisões de roteamento, para os programas e serviços nele instalados.
No exemplo a seguir, mostro como habilitar uma estação de trabalho com o
Windows 2000 Professional instalado, a tornar-se um Salient RIP.
Exemplo:
Para configurar uma estação de trabalho com o Windows 2000 Professional
instalado, como Salient RIP, siga os passos indicados a seguir:
1.
Faça o logon como Administrador.
2.
Abra o Painel de controle: Iniciar -> Configurações -> Painel de
controle.
3.
Abra a opção Adicionar ou remover programas.
4.
No painel da esquerda, clique em Adicionar ou remover componentes do Windows.
5.
Clique na opção Serviços de rede para marcá-la (sem selecionar a caixa de
seleção ao lado desta opção, senão todos os serviços de rede serão instalados).
6.
Clique no botão Detalhes...
7.
Nas opções que são exibidas marque a opção RIP Listener.
8.
Clique em OK. Você estará de volta a janela de componentes do Windows.
9.
Clique em Avançar para concluir a instalação.
A
máscara de sub-rede não é anunciada juntamente com as rotas: Isso
porque o protocolo RIP v1 foi projetado em 1988, para trabalhar com redes
baseadas nas classes padrão A, B e C, ou seja, pelo número IP da rota,
deduzia-as a respectiva classe. Com o uso da Internet e o uso de um número
variável de bits para a máscara de sub-rede (número diferente do número de bits
padrão para cada classe, conforme descrito naParte 7), esta fato
tornou-se um problema sério do protocolo RIP v1. Com isso, o protocolo RIP v1,
utiliza a seguinte lógica, para inferir qual a máscara de sub-rede associada
com determinada rota:
1. Se a identificação
de rede coincide com uma das classes padrão A, B ou C, é assumida a máscara de
sub-rede padrão da respectiva classe.
2. Se a identificação
de rede não coincide com uma das classes padrão, duas situações podem acontecer:
2.1 Se a
identificação de rede coincide com a identificação de rede da interface na qual
o anúncio foi recebido, a máscara de sub-rede da interface na qual o anúncio
foi recebido, será assumida.
2.2 Se a
identificação de rede não coincide com a identificação de rede da interface na
qual o anúncio foi recebido, o destino será considerado um host (e não uma
rede) e a máscara de sub-rede 255.255.255.255, será assumida.
Esta
abordagem gera problemas graves. Por exemplo, quando for utilizado o recurso de
supernetting, para juntar várias redes classe C em uma única rede lógica, o RIP
v1 irá interpretar como se fossem realmente várias redes lógicas e tentará
montar uma tabela de roteamento, como se as redes estivessem separadas
fisicamente e ligadas por links de WAN.
Sem
proteção contra roteadores não autorizados: O protocolo RIP
v1 não apresenta nenhum mecanismo de autenticação e proteção, para evitar que
roteadores não autorizados possam ser inseridos na rede e passar a anunciar
várias rotas falsas. Ou seja, qualquer usuário poderá instalar um roteador com
RIP v1 e adicionar várias rotas falsas, que o RIP v1 se encarregará de repassar
estas rotas para os demais roteadores da rede.
O
protocolo RIP v2, oferece diversas melhorias em relação ao RIP v1, dentre as
quais vamos destacar as seguintes:
Os
anúncios do protocolo RIP v2 são baseados em tráfego multicast e não mais
broadcast como no caso do protocolo RIP v1: O protocolo RIP
v2 utiliza o endereço de multicast 224.0.0.9. Com isso os roteadores
habilitados ao RIP atuam como se fossem (na verdade é) um grupo multicast,
registrado para “escutar” os anúncios do protocolo RIP v2. Outros hosts da
rede, não habilitados ao RIP v2, não serão “importunados” pelos pacotes do RIP
v2. Por questões de compatibilidade (em casos onde parte da rede ainda usa o
RIP v1), é possível utilizar broadcast com roteadores baseados em RIP v2. Mas
esta solução somente deve ser adotada durante um período de migração, assim que
possível, todos os roteadores devem ser migrados para o RIP v2 e o anúncio via
broadcast deve ser desabilitado.
Informações
sobre a máscara de sub-rede são enviadas nos anúncios do protocolo RIP v2: Com
isso o RIP v2 pode ser utilizado, sem problemas, em redes que utilizam
subnetting, supernetting e assim por diante, uma vez que cada rede fica
perfeitamente definida pelo número da rede e pela respectiva máscara de
sub-rede.
2Segurança,
autenticação e proteção contra a utilização de roteadores não autorizados: Com
o RIP v2 é possível implementar um mecanismo de autenticação, de tal maneira
que os roteadores somente aceitem os anúncios de roteadores autenticados, isto
é, identificados. A autenticação pode ser configurada através da definição de
uma senha ou de mecanismos mais sofisticados como o MD5 (Message Digest 5). Por
exemplo, com a autenticação por senha, quando um roteador envia um anúncio, ele
envia juntamente a senha de autenticação. Outros roteadores da rede, que
recebem o anúncio, verificam se a senha está OK e somente depois da
verificação, alimentam suas tabelas de roteamento com as informações recebidas.
É
importante salientar que tanto redes baseadas no RIP v1 quanto no RIP v2 são
redes chamadas planas (flat). Ou seja, não é possível formar uma hierarquia de
roteamento, baseada no protocolo RIP. Por isso que o RIP não é utilizado em
grandes redes. A tendência natural do RIP, é que todos os roteadores sejam
alimentados com todas as rotas possíveis (isto é um espaço plano, sem
hierarquia de roteadores). Imagine como seria utilizar o RIP em uma rede como a
Internet, com milhões e milhões de rotas possíveis, com links caindo e voltando
a todo momento? Impossível. Por isso que o uso do RIP (v1 ou v2) somente é
indicado para pequenas redes.
OSPF – Open Shorted Path First:
Nesta
parte do tutorial você aprenderá sobre o OSPF, suas vantagens em relação ao
RIP, o seu uso para roteamento em grandes redes, sobre os conceitos de sistemas
autônomos, adjacências e assim por diante.
Uma
introdução ao OSPF
O
protocolo OSPF - Open Shortest Path First (OSPF, uma tradução, digamos, muito
forçada, seria: abrir primeiro o caminho mais curto) é a alternativa para redes
de grande porte, onde o protocolo RIP não pode ser utilizado, devido a suas
características e limitações.
O
OSPF permite a divisão de uma rede em áreas e torna possível o roteamento
dentro de cada área e entre as diferentes áreas, usando os chamados roteadores
de borda. Com isso, usando o OSPF, é possível criar redes hierárquicas de
grande porte, sem que seja necessário que cada roteador tenha uma tabela de
roteamento gigantesca, com rotas para todas as redes, como seria necessário no
caso do RIP. O OSPF é projetado para intercambiar informações de roteamento em
uma interconexão de rede de tamanho grande ou muito grande, como por exemplo a
Internet.
A
maior vantagem do OSPF é que ele é eficiente em vários pontos: requer
pouquíssima sobrecarga de rede mesmo em interconexões de redes muito grandes, pois
os roteadores que usam OSPF trocam informações somente sobre as rotas que
sofreram alterações e não toda a tabela de roteamento, como é feito com o uso
do RIP. Sua maior desvantagem é a complexidade: requer planejamento
adequado e é mais difícil de configurar e administrar do que o protocolo RIP.
O
OSPF usa um algoritmo conhecido como Shortest Path First (SPF,
primeiro caminho mais curto) para calcular as rotas na tabela de roteamento. O
algoritmo SPF calcula o caminho mais curto (menor custo) entre o roteador e
todas as redes da interconexão de redes. As rotas calculadas pelo SPF são
sempre livres de loops (laços). O OSPF usa um algoritmo de roteamento conhecido
como link-state (estado de ligação). Lembre que o RIP usava um algoritmo
baseado em distância vetorial. O OSPF aprende as rotas dinamicamente, através
de interação com os roteadores denominados como seus vizinhos.
Em
vez de intercambiar as entradas de tabela de roteamento como os roteadores RIP
(Router Information Protocol, protocolo de informações do roteador), os
roteadores OSPF mantêm um mapa da interconexão de redes que é atualizado após
qualquer alteração feita na topologia da rede (é importante salientar
novamente que somente informações sobre as mudanças são trocadas entre os
roteadores usando OSPF e não toda a tabela de roteamento, como acontece com o
uso do RIP). Esse mapa, denominado banco de dados do estado de vínculo
ou estado de ligação, é sincronizado entre todos os roteadores OSPF e é usado
para calcular as rotas na tabela de roteamento. Os roteadores OSPF vizinhos
(neghboring) formam uma adjacência, que é um relacionamento lógico entre
roteadores para sincronizar o banco de dados com os estados de vínculo.
As
alterações feitas na topologia de interconexão de redes são eficientemente
distribuídas por toda a rede para garantir que o banco de dados do estado de
vínculo em cada roteador esteja sincronizado e preciso o tempo todo. Ao receber
as alterações feitas no banco de dados do estado de vínculo, a tabela de
roteamento é recalculada.
À medida que o tamanho do banco de dados do estado de vínculo aumenta, os requisitos de memória e o tempo de cálculo do roteamento também aumentam. Para resolver esse problema, principalmente para grandes redes, o OSPF divide a rede em áreas (conjuntos de redes contíguas) que são conectadas umas às outras através de uma área de backbone. Cada roteador mantém um banco de dados do estado de vínculo apenas para aquelas áreas que a ele estão conectadas. Os ABRs (Area Border Routers, roteadores de borda de área) conectam a área de backbone a outras áreas.
À medida que o tamanho do banco de dados do estado de vínculo aumenta, os requisitos de memória e o tempo de cálculo do roteamento também aumentam. Para resolver esse problema, principalmente para grandes redes, o OSPF divide a rede em áreas (conjuntos de redes contíguas) que são conectadas umas às outras através de uma área de backbone. Cada roteador mantém um banco de dados do estado de vínculo apenas para aquelas áreas que a ele estão conectadas. Os ABRs (Area Border Routers, roteadores de borda de área) conectam a área de backbone a outras áreas.
Esta divisão em áreas
e a conexão das áreas através de uma rede de backbone é ilustrada na Figura a
seguir, obtida na Ajuda do Windows 2000 Server:
Cada
anúncio de um roteador OSPF contém informações apenas sobre os estados de
ligação dos roteadores vizinhos, isto é, dentro da área do roteador. Com isso a
quantidade de informação transmitida na rede, pelo protocolo OSPF, é bem menor
do que a quantidade de informação transmitida quando é usado o protocolo RIP.
Outra vantagem é que os roteadores OSPF param de enviar anúncios, quando a rede
atinge um estado de convergência, ou seja, quando não existem mais alterações a
serem anunciadas. O RIP, ao contrário, continua enviando anúncios
periodicamente, mesmo que nenhuma alteração tenha sido feita na topologia da
rede (tal como um link ou roteador que tenha falhado).
Nota:
Na Internet existe a divisão nos chamados Sistemas Autônomos. Um sistema
autônomo, por exemplo, pode representar a rede de um grande provedor. Neste
caso, o próprio sistema autônomo pode ser dividido em uma ou mais áreas usando
OSPF e estas áreas são conectadas por um backbone central. O roteamento dentro
de cada sistema autônomo é feito usando os chamados protocolos de roteamento
interno (IGP – Interior Gateway Protocol). O OSPF é um
protocolo IGP, ou seja, para roteamento dentro dos sistemas autônomos. O
roteamento entre os diversos sistemas autônomos é feito por protocolos de
roteamento externos (EGP – Exterior Gateway Protocol) e pelos
chamados protocolos de roteamento de borda(BGP – Border Gateway Protocol).
Importante:
Podem ocorrer situações em que uma nova área que é conectada a rede, não pode
ter acesso físico direto ao backbone OSPF. Nestas situações, a conexão da nova
área com o backbone OSPF é feita através da criação de um link virtual (virtual
link). O link virtual fornece uma caminho “lógico” entre a área fisicamente
separada do backbone e o backbone OSPF. Criar o link virtual significa criar
uma rota entre a área que não está fisicamente conectada ao backbone e o
backbone, mesmo que este link passe por dois ou mais roteadores OSPF, até
chegar ao backbone. Para um exemplo passo-a-passo de criação de links virtuais,
consulte o Capítulo 8 do livro de minha autoria:Manual de Estudos Para o Exame
70-216, 712 páginas, publicado pela editora Axcel Books (www.axcel.com.br).
Vantages
do OSPF em relação ao RIP:
- As rotas calculadas pelo algoritmo SPF são sempre livres de loops.
- O OSPF pode ser dimensionado para interconexões de redes grandes ou muito grandes.
- A reconfiguração para as alterações da topologia de rede é muito rápida, ou seja, o tempo de convergência da rede, após alterações na topologia é muito menor do que o tempo de convergência do protocolo RIP.
- O tráfego de informações do protocolo OSPF é muito menor do que o do protocolo RIP.
- O OSPF permite a utilização de diferentes mecanismos de autenticação entre os roteadores que utilizam OSPF.
- O OSPF envia informações somente quando houver alterações na rede e não periodicamente.
A implementação OSPF
como parte dos serviços de roteamento do RRAS – Routing em Remote Access
Services, do Windows 2000 Server e no Windows Server 2003, tem os seguintes
recursos:
- Filtros de roteamento para controlar a interação com outros protocolos de roteamento.
- Reconfiguração dinâmica de todas as configurações OSPF.
- Coexistência com o RIP.
- Adição e exclusão dinâmica de interfaces.
Importante:
O Windows 2000 Server não oferece suporte ao uso do OSPF em uma interface de
discagem por demanda (demand-dial) que usa vínculos dial-up temporários.
Dica:
Se você está usando vários protocolos de roteamento IP, configure apenas um
único protocolo de roteamento por interface.
Operação
do protocolo OSPF
O
protocolo OSPF é baseado em um algoritmo conhecido com SPF – Short
Path First. Depois que um roteador (ou um servidor com o Windows 2000
Server ou Windows Server 2003, configurado como roteador e usando o OSPF) é
inicializado e é feita a verificação para detectar se as interfaces de rede
estão OK, é utilizado o protocolo OSPF Hello para identificar quem são os
“vizinhos” do roteador.
O
roteador envia pacotes no formato do protocolo Hello, para os seus vizinhos e
recebe os pacotes Hello enviados pelos seus vizinhos.
Conforme descrito
anteriormente, uma rede baseada em OSPF é dividia em áreas e as diversas áreas
são conectadas através de um backbone comum a todas as áreas. O algoritmo SPF é
baseado na sincronização do banco de dados de estados de ligação entre os
roteadores OSPF dentro de uma mesma área. Porém, ao invés de cada roteador
fazer a sincronização com todos os demais roteadores OSPF da sua área, cada
roteador faz a sincronização apenas com seus vizinhos (neghboring routers).
A relação entre roteadores OSPF vizinhos, com o objetivo de sincronizar suas
bases de dados é conhecida como “Adjacência”. O termo mais comum é “formar uma
adjacência”. Porém, mesmo com o uso de adjacências, em uma rede com vários
roteadores dentro da mesma área, um grande número de adjacências poderá ser
formado, o que implicaria em um grande volume de troca de informações de
roteamento. Por exemplo, imagine uma rede com seis roteadores OSPF dentro da
mesma área. Neste caso, cada roteador poderia formar uma adjacência com os
outros cinco roteadores da área, o que resultaria em um total de 15
adjacências. O número de adjacências é calculado usando a seguinte fórmula,
onde n representa o número de roteadores:
Número
de adjacências = n*(n-1)/2
Com
um grande número de adjacências, o tráfego gerado pela sincronização do OSPF
seria muito elevado. Para resolver esta questão é utilizado o conceito de
Designated Router (Roteador designado). Um roteador designado é
um roteador que será considerado vizinho de todos os demais roteadores da rede.
Com isso é formada uma adjacência entre cada roteador da rede e o roteador designado.
No nosso exemplo, da rede com 6 roteadores OSPF, dentro da mesma área, seriam
formadas apenas cinco adjacências. Uma entre cada um dos cinco roteadores,
diretamente com o sexto roteador, o qual foi configurado como roteador
designado. Neste caso, cada roteador da rede troca informações com o roteador
designado. Como o roteador designado recebe informações de todos os roteadores
da área, ele fica com uma base completa e repassa esta base para cada um dos
roteadores da mesma área. Observe que com o uso de um roteador designado,
obtém-se uma sincronização da base completa dos roteadores e com o uso de um
número bem menor de adjacências, o que reduz consideravelmente o tráfego de
pacotes do OSPF.
Por questões de
contingência, também é criado um Designated Backup Router (Roteador
designado de backup), o qual assumirá o papel de roteador designado, no caso de
falha do roteador designado principal. A eleição de qual será o roteador
designado é feita automaticamente pelo OSPF, mediante uma troca de pacotes
Hello, de acordo com as regras contidas no protocolo, um dos roteadores será
eleito como roteador designado e um segundo como roteador designado backup.
O que é uma
Virtual VLAN
Existem várias
definições técnicas para VLAN, mas a meu ver nenhuma delas ajuda a entender realmente
o seu funcionamento. Prefiro a definição prática: VLAN é quando você divide um switch
em partes que não se conversam diretamente.Exemplo: tenho um switch com 24
portas Ethernet. Configuro as portas 1, 2, 5, 6 e 20 na VLAN12 (as VLANs
são identificadas por números, de 0 a 4096) e as portas 2, 4 e 23 na VLAN
15.Nenhum equipamento da VLAN 12 envia pacotes diretamente (vamos falar
sobre o envio indireto, através de roteador, mais na frente) para a
VLAN 15. A coisa é tão forte, que posso ter um equipamento com IP
192.168.0.5 na porta 2 e outro com o mesmo IP na porta 23 e não haverá conflito
de endereços na rede (teremos problema de roteamento se isso for
feito, mas ai é outra história). Assim VLAN isola grupos de computadores.
Simples assim, VLAN é isso. O poder da VLAN está nas consequências dessa
separação (e as dificuldades também estão nesse fator).
Vantagens do
uso de uma VLAN
Por ser algo simples, a VLAN tem apenas uma função:
impedir que equipamentos de VLAN diferentes se falem diretamente. Então vamos
responder à pergunta: que tipo de problemas a VLAN resolve? Existem vários
momentos em que o administrador de uma rede vê necessidade de separar a rede em
pedaços.
Redução de
Broadcast
Em primeiro lugar vem a divisão da rede em partes
para diminuir broadcast. Quando um equipamento envia um broadcast para a rede
(por exemplo ARP, RARP ou requisição DHCP)esse pacote chega a todos os outros
equipamentos daquela VLAN. Em redes pequenas o broadcast não é problema, mas em
redes maiores isso pode ser desperdício de banda importante. Ao separar a rede
em pedaços, o administrador limita a alcance de cada broadcast e controla o
problema
Segurança
dentro de redes e isolação de Usuários
A segunda aplicaçao das VLANs é garantir a segurança. Nesse caso podemos ter várias situações onde esse benfício é útil. Por ser dentro de um provedor, que quer evitar que um cliente cause problemas em outros, quer seja por receio de existir um hacker entre os clientes, quer seja por receio de um cliente com vírus contamine outros. Neste caso a separação em VLAN impede que o usuários se enxerguem e causem problemas entre si. Ainda dentro da questão de segurança, as VLANs podem ser utilizadas em projetos de cidades digitais, aonde a prefeitura contrata uma rede wireless e dentro dela coloca vários serviços: acesso a Internet para a população, acesso Internet as escolas, comunicação entre postos de saúde, etc. Cada um desses serviços é realizada em uam VLAN diferente. Para finalizar os comentários sobre segurança, dentro de uma empresa, o administrador pode usar VLANs para separar os departamentos (diretoria, vendas, marketing, call-center, etc..) de forma que um problema em uma rede não afete as demais. Esse problema pode ser um funcinário-hacker ou um funcionário-problema (do tipo que tenta "fuçar" nas configrações e causa conflito de endereços IP na rede).
Referencia:
A segunda aplicaçao das VLANs é garantir a segurança. Nesse caso podemos ter várias situações onde esse benfício é útil. Por ser dentro de um provedor, que quer evitar que um cliente cause problemas em outros, quer seja por receio de existir um hacker entre os clientes, quer seja por receio de um cliente com vírus contamine outros. Neste caso a separação em VLAN impede que o usuários se enxerguem e causem problemas entre si. Ainda dentro da questão de segurança, as VLANs podem ser utilizadas em projetos de cidades digitais, aonde a prefeitura contrata uma rede wireless e dentro dela coloca vários serviços: acesso a Internet para a população, acesso Internet as escolas, comunicação entre postos de saúde, etc. Cada um desses serviços é realizada em uam VLAN diferente. Para finalizar os comentários sobre segurança, dentro de uma empresa, o administrador pode usar VLANs para separar os departamentos (diretoria, vendas, marketing, call-center, etc..) de forma que um problema em uma rede não afete as demais. Esse problema pode ser um funcinário-hacker ou um funcionário-problema (do tipo que tenta "fuçar" nas configrações e causa conflito de endereços IP na rede).
Referencia:
http://pt.kioskea.net/contents/lan/gateway.php3
Slides de aulas de Interconexão de Redes, professor Eudes Danilo Mendonça (http://www.4shared.com/file/EpMZ8Cvg/Interconexo_de_redes.html)
Slides de aulas de Interconexão de Redes, professor Eudes Danilo Mendonça (http://www.4shared.com/file/EpMZ8Cvg/Interconexo_de_redes.html)
Nenhum comentário:
Postar um comentário