Roteamento IP: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
 
(9 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 1: Linha 1:
=Roteamento de Pacotes <ref name="KUROSE">KUROSE, J.F; ROSS K. W. Redes de Computadores e a Internet: Uma abordagem ''top-down'', São Paulo: Pearson, 2010.</ref>=
=Roteamento de Pacotes=


O '''roteamento de pacotes''' é uma das principais funções da camada rede da Internet. O protocolo IP assume que um computador é capaz de enviar datagramas a qualquer outro computador conectado a mesma rede local. Caso o destinatário não esteja na mesma rede, parte da função de roteamento é transferida para os roteadores.
O '''roteamento de pacotes''' é uma das principais funções da camada rede da Internet. O protocolo IP assume que um computador é capaz de enviar datagramas a qualquer outro computador conectado a mesma rede local. Caso o destinatário não esteja na mesma rede, a função de roteamento é transferida para os '''roteadores''' <ref name="KUROSE">KUROSE, J.F; ROSS K. W. Redes de Computadores e a Internet: Uma abordagem ''top-down'', São Paulo: Pearson, 2010.</ref>.


Os '''roteadores''' (ou '''''gateways''''') podem ser equipamentos específicos ou computadores normais que possuem mais de uma interface de rede.  
Os '''roteadores''' (ou '''''gateways''''') podem ser equipamentos específicos ou computadores normais que possuem mais de uma interface de rede.  


O roteamento no IP baseia-se exclusivamente no '''identificador de rede''' do endereço destino. Cada roteador possui uma tabela, chamada '''tabela de roteamento''', cujas entradas são pares: '''endereço de rede/endereço de roteador'''. Por exemplo, quando um computador deseja enviar um datagrama, inicialmente ele verifica se o destinatário está conectado a rede local. Se for o caso, ele entrega o datagrama a interface de rede que se encarrega de mapear o IP no endereço físico do computador destino, encapsular o datagrama IP em um quadro da rede e transmiti-lo. Caso o computador destino não se encontre na rede local, ele envia o datagrama ao '''roteador padrão''' ('''''gateway default''''') da rede local. O roteador procura na sua '''tabela de roteamento''' o endereço do roteador que deve ser usado para alcançar a rede onde está conectado o destinatário do datagrama. O roteador encontrado pode não fazer parte da rede destino, mas, deve fazer parte do caminho a ser percorrido para alcançá-la.
O roteamento no IP baseia-se exclusivamente no '''identificador de rede''' do endereço destino. Cada roteador possui uma tabela, chamada '''tabela de roteamento''', cujas entradas são pares:
Endereço da rede destino / Endereço do próximo roteador  
Quando um computador deseja enviar um datagrama, inicialmente ele verifica se o destinatário está conectado a rede local. Se for o caso, ele entrega o datagrama a interface de rede que se encarrega de mapear o IP no endereço físico do computador destino, encapsular o datagrama IP em um quadro da rede e enviá-lo. Caso o computador destino não se encontre na rede local, ele envia o datagrama ao '''roteador padrão''' ('''''gateway default''''') da rede local. O roteador procura na sua '''tabela de roteamento''' o endereço do roteador que deve ser usado para alcançar a rede onde está conectado o destinatário do datagrama. O roteador encontrado pode não fazer parte da rede destino, mas, deve fazer parte do caminho a ser percorrido para alcançá-la.


Veja um exemplo de como funcionam as tabelas de roteamento, considerando a rede apresentada na figura:
Veja um exemplo de como funcionam as tabelas de roteamento, considerando a rede apresentada na figura:
Linha 37: Linha 39:


;Exemplo:
;Exemplo:
  evandro@NBP-EVANDRO:/etc$ route -n
  evandro@NTB-HP-Evandro:~$ route -n
  Tabela de Roteamento IP do Kernel
  Tabela de Roteamento IP do Kernel
  Destino        Roteador        MáscaraGen.    Opções Métrica Ref  Uso Iface
  Destino        Roteador        MáscaraGen.    Opções Métrica Ref  Uso Iface
  0.0.0.0        192.168.0.1    0.0.0.0        UG    0      0        0 wlan0
  0.0.0.0        192.168.1.1    0.0.0.0        UG    0      0        0 eth1
  192.168.0.0    0.0.0.0        255.255.255.0  U    2      0        0 wlan0
169.254.0.0    0.0.0.0        255.255.0.0    U    1000  0        0 eth1
*Na primeira linha o '''destino 0.0.0.0''' indica uma '''rota ''default''''', ou qualquer IP diferente da rede local '''->''' Para tal a saída é o '''roteador padrão''' 192.168.0.1.
  192.168.1.0    0.0.0.0        255.255.255.0  U    2      0        0 eth1
*Na segunda linha o destino 192.168.0.0 indica a '''rede local''' '''->''' Para tal, o '''roteador 0.0.0.0''' indica que '''não há necessidade de roteamento''' pois o destino está na própria rede.
 
*Na primeira linha o '''destino 0.0.0.0''' indica uma '''rota ''default''''', ou qualquer IP diferente da rede local.
*: '''->''' Para tal a saída é o '''roteador padrão''' 192.168.0.1.
*Na segunda linha o destino 169.254.0.0 é atribuído pelo sistema operacional do host por auto configuração quando outros modos de endereçamento não estão disponíveis, como por exemplo por DHCP. Isto permite que, automaticamente, os hosts conectados a uma rede local se comuniquem entre si.
*Na terceira linha o destino 192.168.0.0 indica a '''rede local'''  
*:'''->''' Para tal, o '''roteador 0.0.0.0''' indica que '''não há necessidade de roteamento''' pois o destino está na própria rede.
 
==Protocolos de Roteamento==
 
A construção das tabelas de roteamento em cada roteador pode ser feita manualmente por um administrador de rede ou através do uso de '''protocolos de roteamento'''. A construção manual das tabelas de roteamento chama-se '''roteamento estático'''.
 
O uso de '''protocolos de roteamento''' permite que as tabelas sejam construídas e atualizadas dinamicamente. Devido a problemas de escala e de autonomia administrativa, os roteadores que vão participar de um roteamento dinâmico devem ser agrupados em regiões, ou '''sistemas autônomos''' ('''SA'''s) e devem rodar o mesmo protocolo em cada região.
 
Há duas classes de '''protocolos de rotemento dinâmico''' na Internet: os '''protocolos intra-SA'''  e '''inter-SA'''.
 
Os protocolos de rotemento '''intra-SA''' atuam internamente ao sistema autônomo, definindo as melhores rotas em função de um custo atribuido a cada enlace a percorrer. Dois protocolos de rotemento intra--SA bastante utilizados na Internet são o '''RIP''' e o '''OSPF'''.
 
O '''RIP''' (''Routing Information Protocol'') constrói as tabelas dinamicamente utilizando um '''algoritmo de roteamento''' chamado '''vetor de distâncias''', calculando as melhores rotas tendo como base o número de enlaces a percorrer.
 
O '''OSPF''' (''Open Shortest Path First'') é um protocolo de roteamento mais elaborado, baseado no algoritmo '''estado do enlace''', desenhado para convergir rapidamente ao ser informado de qualquer alteração de estado do enlace dentro da rede.
 
O roteamento '''inter-SA''' permite interconectar diferentes sistemas autônomos. Na Internet o protocolo mais utilizado neste domínio é o '''BGP''' (''Border Gateway Protocol''), o qual permite implementar políticas específicas dependendo dos sistemas autônomos que serão integrados.


===Referências===
===Referências===

Edição atual tal como às 11h01min de 4 de dezembro de 2015

Roteamento de Pacotes

O roteamento de pacotes é uma das principais funções da camada rede da Internet. O protocolo IP assume que um computador é capaz de enviar datagramas a qualquer outro computador conectado a mesma rede local. Caso o destinatário não esteja na mesma rede, a função de roteamento é transferida para os roteadores [1].

Os roteadores (ou gateways) podem ser equipamentos específicos ou computadores normais que possuem mais de uma interface de rede.

O roteamento no IP baseia-se exclusivamente no identificador de rede do endereço destino. Cada roteador possui uma tabela, chamada tabela de roteamento, cujas entradas são pares:

Endereço da rede destino / Endereço do próximo roteador 

Quando um computador deseja enviar um datagrama, inicialmente ele verifica se o destinatário está conectado a rede local. Se for o caso, ele entrega o datagrama a interface de rede que se encarrega de mapear o IP no endereço físico do computador destino, encapsular o datagrama IP em um quadro da rede e enviá-lo. Caso o computador destino não se encontre na rede local, ele envia o datagrama ao roteador padrão (gateway default) da rede local. O roteador procura na sua tabela de roteamento o endereço do roteador que deve ser usado para alcançar a rede onde está conectado o destinatário do datagrama. O roteador encontrado pode não fazer parte da rede destino, mas, deve fazer parte do caminho a ser percorrido para alcançá-la.

Veja um exemplo de como funcionam as tabelas de roteamento, considerando a rede apresentada na figura:

Suponha que o computador A (200.1.1.1) tenha a tabela de roteamento dada na tabela a seguir e deseja enviar um datagrama IP ao computador B (200.1.1.2). Neste caso, o computador consulta sua tabela de roteamento e descobre que a rede 200.1.1.0/24 casa com o identificador da rede do computador B. A tabela indica que o próximo roteador é 0.0.0.0, o que quer dizer que está na mesma rede local. Então o computador A passa o datagrama diretamente a camada enlace através da interface eth0 para proceder à entrega ao computador B.

Tabela de Roteamento do computador A
Destino         Roteador        Máscara           Interface
200.1.1.0       0.0.0.0         255.255.255.0     0 eth0
200.1.2.0       200.1.1.3       255.255.255.0     0 eth0
200.1.3.0       200.1.1.3       255.255.255.0     0 eth0

Suponha agora o caso em que o computador A queira enviar um datagrama ao computador C (200.1.3.2), situado em outra rede, no caso a rede 200.1.3.0/24. Consultando sua tabela de roteamento ele verifica que esta rede é acessível a partir do roteador 200.1.1.3. Então ele passa o datagrama ao roteador para dar prosseguimento a entrega, o qual também é acessível a partir da interface eth0.

O roteador então consulta sua tabela de roteamento (veja tabela abaixo) e verifica que a rede 200.1.3.0/24 é acessível diretamente através da sua interface eth2. Sendo assim, ele entrega o datagrama a camada de enlace da rede 200.1.3.0/24 para fazer a entrega ao computador C.

Tabela de Roteamento do roteador R
Destino         Roteador      Máscara           Interface
200.1.1.0       0.0.0.0       255.255.255.0     0 eth0
200.1.2.0       0.0.0.0       255.255.255.0     0 eth1
200.1.3.0       0.0.0.0       255.255.255.0     0 eth2

Comando route

O comando route mostra e manipula tabelas de roteamento no Linux.

Para verificar a tabela de roteamento do computador, executar o comando:

route -n

O parâmetro -n imprime os endereços IP no formato numérico.

Exemplo
evandro@NTB-HP-Evandro:~$ route -n
Tabela de Roteamento IP do Kernel
Destino         Roteador        MáscaraGen.    Opções Métrica Ref   Uso Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth1
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth1
192.168.1.0     0.0.0.0         255.255.255.0   U     2      0        0 eth1
  • Na primeira linha o destino 0.0.0.0 indica uma rota default, ou qualquer IP diferente da rede local.
    -> Para tal a saída é o roteador padrão 192.168.0.1.
  • Na segunda linha o destino 169.254.0.0 é atribuído pelo sistema operacional do host por auto configuração quando outros modos de endereçamento não estão disponíveis, como por exemplo por DHCP. Isto permite que, automaticamente, os hosts conectados a uma rede local se comuniquem entre si.
  • Na terceira linha o destino 192.168.0.0 indica a rede local
    -> Para tal, o roteador 0.0.0.0 indica que não há necessidade de roteamento pois o destino está na própria rede.

Protocolos de Roteamento

A construção das tabelas de roteamento em cada roteador pode ser feita manualmente por um administrador de rede ou através do uso de protocolos de roteamento. A construção manual das tabelas de roteamento chama-se roteamento estático.

O uso de protocolos de roteamento permite que as tabelas sejam construídas e atualizadas dinamicamente. Devido a problemas de escala e de autonomia administrativa, os roteadores que vão participar de um roteamento dinâmico devem ser agrupados em regiões, ou sistemas autônomos (SAs) e devem rodar o mesmo protocolo em cada região.

Há duas classes de protocolos de rotemento dinâmico na Internet: os protocolos intra-SA e inter-SA.

Os protocolos de rotemento intra-SA atuam internamente ao sistema autônomo, definindo as melhores rotas em função de um custo atribuido a cada enlace a percorrer. Dois protocolos de rotemento intra--SA bastante utilizados na Internet são o RIP e o OSPF.

O RIP (Routing Information Protocol) constrói as tabelas dinamicamente utilizando um algoritmo de roteamento chamado vetor de distâncias, calculando as melhores rotas tendo como base o número de enlaces a percorrer.

O OSPF (Open Shortest Path First) é um protocolo de roteamento mais elaborado, baseado no algoritmo estado do enlace, desenhado para convergir rapidamente ao ser informado de qualquer alteração de estado do enlace dentro da rede.

O roteamento inter-SA permite interconectar diferentes sistemas autônomos. Na Internet o protocolo mais utilizado neste domínio é o BGP (Border Gateway Protocol), o qual permite implementar políticas específicas dependendo dos sistemas autônomos que serão integrados.

Referências

  1. KUROSE, J.F; ROSS K. W. Redes de Computadores e a Internet: Uma abordagem top-down, São Paulo: Pearson, 2010.

--Evandro.cantu (discussão) 14h17min de 1 de agosto de 2014 (BRT)