Existem duas atividades que são básicas a um roteador. São elas:
A determinação das melhores rotas
Determinar a melhor rota é definir por qual enlace uma determinada mensagem deve
ser enviada para chegar ao seu destino de forma segura e eficiente. Para realizar esta
função, o roteador utiliza dois conceitos muito importantes: o conceito de métrica e o
conceito de tabelas de roteadores.
O transporte dos pacotes
Transportar os pacotes pela rede é uma função relativamente simples realizada pelos
roteadores. Consiste em verificar o endereço de rede para quem a mensagem está
destinada, determinar se conhece este endereço. E, por fim, traduzir para um novo
endereço físico e enviar pacote. Métrica
Definição
Métrica é o padrão de medida que é usado pelos algoritmos de roteamento para
determinar o melhor caminho para um destino. Pode-se utilizar apenas um parâmetro
ou vários parâmetros. A utilização de vários parâmetros permite uma melhor
modelagem da métrica e uma decisão mais eficiente de qual é o melhor caminho.
Alguns parâmetros utilizados
· Tamanho do caminho
· Confiabilidade
· Atraso
· Largura de banda
· Carga
· Custo da comunicaçãoT
abela de roteamento
Os roteadores constroem tabelas de roteamento para realizarem as suas tarefas. Estas
tabelas de roteamento contêm entradas que relacionam um determinado destino com
um enlace e uma métrica. Dependento das implementações, podem apresentar mais
dados, entretanto estes três são os dados essenciais.
Abaixo é apresentada a tabela de roteamento do roteador A.
Destino Enlace Métrica
B 1 1
C 1 2
D 3 1
E 3 2
Requisitos de um roteador
Para um roteador funcionar de forma adequada é necessário que ele faça algumas
tarefas.
· O roteador deve conhecer a topologia da subrede e escolher os caminhos
adequados dentro da mesma.
· O roteador deve cuidar para que algumas rotas não sejam sobrecarregadas,
enquanto outras fiquem sem uso.
· O roteador deve resolver os problemas que ocorrem quando a origem e o
destino estão em redes diferentes Algoritmo de roteamento
Definição
O algoritmo de roteamento é a parte do programa de nível de rede responsável por
decidir para qual linha um pacote deve ser enviado a fim de chegar ao seu destino.
Todos os roteadores executam um algoritmo de roteamento.
Características desejadas em um algoritmo de roteamento
· Correção
· Simplicidade
· Robustez
· Estabilidade
· Consideração com o usuário
· Eficiência global Algoritmo de roteamento
Características desejáveis
Correção
O algoritmo de roteamento tem de calcular rotas corretas para todos os destinos, não
pode falhar para nenhum e não pode indicar uma rota inexistente. Esta é uma
característica evidente que deve ser, ainda, complementada pela derivação da melhor
rota. Não basta que o algoritmo descubra uma rota para um destino, é necessário que
ele descubra a melhor rota possível.
Simplicidade
O algoritmo de roteamento tem de ser eficiente sem sobrecarregar a máquina. Além
disso, é importante que o administrador da rede possa entender como o algoritmo é
executado.
Estabilidade
O algoritmo de roteamento tem de convergir rapidamente. Convergir é ficar em um
estado correto. Por exemplo, quando acontece alguma modificação na topologia da
rede, as tabelas de roteamento de alguns roteadores apresentarão uma informação
errada. No momento em que todos os roteadores da rede estiverem com suas tabelas
certas, diz-se que o algoritmo convergiu. Quanto mais rápido for este processo, melhor.
Robustez
Uma vez que a rede entre em operação, deve permanecer assim durante anos, sem
que ocorram falhas de todo o sistema. Durante este período, ocorrerão falhas isoladas
de hardware e software e a topologia da rede modificar-se-á diversas vezes. O
algoritmo de roteamento deve ser capaz de resolver estas modificações sem requerer
uma reinicialização.
Características desejáveis
Consideração com o usuário e eficiência global
Estes dois requisitos são, de certa forma, contraditórios. Existe um compromisso entre
eles. Às vezes, para melhorar o fluxo de dados na rede toda, seria necessário terminar
com o fluxo de dados entre duas máquinas específicas . Evidentemente, isto
prejudicaria os usuários destas duas máquinas. Desta forma a melhora da eficiência
global somente seria alcançada a partir da desconsideração de alguns usuários. Um
algoritmo de roteamento deve melhorar a eficiência da rede sem deixar de levar em
conta os diversos usuários. Tipos de algoritmo
· Estático ou dinâmico
Estrutura plana ou hierárquica
Intra-domínio ou inter-domínio
Vetor de distância ou Estado do enlace
Tipos de algoritmos de roteamento
Estático
Um algoritmo de roteamento do tipo estático não baseia as suas decisões de
roteamento em medidas ou estimativas de tráfego e em topologias correntes. As rotas
são definidas anteriormente e carregadas no roteador na inicialização da rede.
Dinâmico
Um algoritmo de roteamento dinâmico tenta mudar as suas decisões de roteamento de
acordo com as mudanças de tráfego e de topologia. A tabela de roteamento vai-se
modificando com o passar do tempo. Evidentemente que este tipo de roteamento
apresenta uma flexibilidade e uma eficiência em condições adversas muito maiores.
Estrutura plana
Neste tipo de algoritmo, todos os roteadores estão em um mesmo nível. As
informações não são organizadas e distribuídas hierarquicamente.
Estrutura hierárquica
Neste tipo de algoritmo as informações de roteamento são organizadas
hierarquicamente. Dependendo da hierarquia do roteador, a sua tabela de roteamento
e a sua comunicação com outros roteadores são diferentes.
Algoritmos intra-domínio
Estes são algoritmos que são executados por roteadores de dentro de um determinado
Sistema Autônomo (AS-Autonomous System). Permitem que sejam definidas as rotas
para dentro da rede de uma determinada organização.
Algoritmos inter-domínios
Estes são algoritmos que são executados por roteadores que estão nos limites dos
domínios. Permitem a definição das rotas que são utilizadas para a comunicação com
equipamentos de fora de um determinado Sistema Autônomo.
Dois algoritmos são os mais comumente utilizados por protocolos de roteamento:
· Vetor de Distância (Distance Vector Algorithm) e
· Estado do Enlace (Link State Algorithm).
Para entender o funcionamento destes algoritmos clique nas opções abaixo
relacionadas
· Vetor de Distância
· Estado do Enlace Algoritmo de Vetor de Distância (Distance Vector)
Funcionamento
1. O roteador apresenta em sua tabela a rota para os roteadores vizinhos.
2. Em intervalos de tempo regulares o roteador envia toda a sua tabela de rotas
para, e somente para, os seus vizinhos.
3. Após algum tempo os diversos roteadores da rede convergem (ficam com as
suas tabelas completas e atualizadas).
4. As tabelas apresentam o endereço destino, a métrica, e o próximo roteador para
onde a mensagem deve ser enviada.
5. Exige menos recursos de memória e processamento do que o algoritmo de
Estado do Enlace.
6. Apresenta convergência mais lenta e alguns problemas enquanto o algoritmo
não se estabilizou.
Algoritmo de Estado do Enlace (Link State)
Neste algoritmo o roteador faz as seguintes tarefas:
1. Descobre quem são os vizinhos e qual o estado do enlace dos vizinhos.
2. Mede os custos associados aos diversos enlaces que possui.
3. Transmite as informações sobre os enlaces para todos os roteadores da rede.
4. Recebe o estado de todos os enlaces da rede.
5. Constrói um mapa completo da rede.
6. Constrói o melhor caminhos para cada roteador da rede utilizando o algoritmo de
Dijkstra. Protocolos de Roteamento
Função
A função dos protocolos de roteamento é construir as tabelas de roteamento completas
nos diversos roteadores de uma rede através da troca de mensagens entre eles.
Tipos
· igp (interior gateway protocol) - Estes são utilizados para realizar o roteamento
dentro de um Sistema Autônomo.
· egp (exterior gateway protocol) - Estes são utilizados para realizar o roteamento
entre Sistemas Autônomos diferentes.
Protocolos de Roteamento
Protocolos do tipo igp (interior gateway protocol)
· RIP (Routing Information Protocol)
· IGRP (Interior Gateway Routing Protocol)
· Enhanced IGRP
· OSPF (Open Shortest Path First)
· IS-IS (Intermediate System-to-Intermediate System)
Protocolos do tipo egp (exterior gateway protocol)
· EGP (Exterior Gateway Protocol) - este protocolo apresenta o mesmo nome que
o seu tipo.
· BGP (Border Gateway Protocol) RIP (Routing Information Protocol)
Características básicas
· Projetado como um protocolo intra-domínio (igp).
· Utiliza um algoritmo do tipo Vetor de Distância.
· A métrica utilizada é a distância da origem até o destino em número de enlaces
que devem ser percorridos.
· Não permite o balanceamento do tráfego.
· A rota inatingível apresenta uma métrica igual a 16.
· Realiza atualizações a cada 30 segundos. RIP (Routing Information Protocol)
Informações guardadas na tabela de roteamento
· endereço de destino
· endereço do próximo roteador
· interface do host a ser utilizada
· métrica da rota
· flags e timers que controlam tempos de atualização
RIP (Routing Information Protocol)
Dados transmitidos nas mensagens de atualização
· Comando (Request ou Response)
· Identificador da família de endereçoes
· Endereço destino
· Métrica Processamento do RIP
Atualização da tabela de roteamento a cada chegada de um Response
As atualizações sempre chegam por mensagens designadas como Response. Cada
vez que chega uma atualização o roteador busca na tabela a entrada correspondente e
modifica se as seguintes condições forem satisfeitas:
1. Se a rota não existe: acrescenta 1 à métrica recebida e coloca a rota na tabela.
2. Se a rota já existe na tabela e apresenta métrica maior: substitui a rota atual
pela que chegou com métrica menor.
3. Se a rota já existe na tabela e o roteador destino é o mesmo: atualiza a
métrica independente se aumentou ou diminuiu. Processamento do RIP
Características de estabilidade
Para que o algoritmo de Vetor de Distância, utilizado no RIP, funcione de forma
eficiente os seguintes mecanismos de estabilidade relacionados abaixo são utilizados
no RIP.
1. Hop-count limit
2. Hold-down
3. Split horizon
4. Poison reverse updates
5. Triggered updates - são transmitidas apenas as rotas modificadas
Processamento do RIP
Características gerais
1. O endereço default é referenciado pela destino 0.0.0.0.
2. A mensagem de Request é utilizada para que um roteador solicite a tabela de
roteamento de um vizinho, ou apenas uma rota para um determinado destino.
3. Apresenta implementação simples, uma vez que utiliza um algoritmo simples e
apenas duas mensagens.
4. Apresenta uma convergência lenta.
5. Os estados intermediários, isto é, até os roteadores convergirem, podem
apresentar laços.