Redes de Computadores Aula 6:, roteamento broadcast e multicast, protocolos IPv6 e ICMP Prof. Silvana Rossetto 5 de maio de 2010
1 Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) 2 Algoritmos de roteamento broadcast Roteamento multicast 3 Protocolo ICMP Protocolo IPv6 4 5
Recaptulando roteamento hierárquico... Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP)..resolve os problemas de escalabilidade e autoridade administrativo definindo-se Sistemas Autônomos (ASs) Os ISPs podem usar um único AS para toda a sua rede ou dividí-la em vários ASs interconectados A escalabilidade é resolvida porque um roteador intra-as precisa saber apenas sobre os roteadores dentro do AS A autoridade administrativa é resolvida uma vez que cada organização pode escolher o protocolo de roteamento intra-as Examinaremos dois protocolos de roteamento intra-as (RIP e OSPF) e um protocolo inter-as (BGP), usados atualmente na Internet
Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Histórico RIP (Routing Information Protocol) é um protocolo de vetor de distância Foi incluído no início dos anos 80 na versão BSD do UNIX com suporte a TCP/IP A versão original (RFC1058) usa número de saltos (hops) como métrica de custo, i.e. cada enlace tem custo 1 Os custos são contabilizados do roteador fonte até a subrede de destino (cada AS normalmente contém várias subredes), incluindo essa subrede
Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Figura: Fonte: Computer Networking, Kurose and Ross, 5ed, 2009.
Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) O custo máximo de um caminho é limitado em 15, o que restringe o uso do RIP em ASs com diâmetro menor que 15 saltos No RIP atualizações de roteamento são trocadas entre vizinhos a cada 30seg (aproximadamente) usando a mensagem RIP response message ou RIP advertisements A mensagem enviada contém uma lista de até 25 subredes destino dentro do AS, junto com a distância do emissor a cada uma delas Cada roteador mantém uma tabela de roteamento: tabela de redirecionamento + vetor de distância
Exemplo de RIP (tabela do roteador D) Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Figura: Fonte: Computer Networking, Kurose and Ross, 5ed, 2009.
Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Aspectos da implementação do protocolo RIP Falhas nos roteadores vizinhos Se um roteador não receber mensagens de um vizinho por mais de 180 seg, o vizinho é considerado inalcançável (o rotador morreu ou o enlace foi perdido) O RIP modifica a sua tabela de roteamento e a propaga para os demais vizinhos
Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Aspectos da implementação do protocolo RIP Um roteador pode requisitar informações sobre custos dos vizinhos para um dado destino usando mensagens RIP (usa UDP e porta 520) (uso de protocolo de transporte para implementar roteamento da camada 3!) A implementação do RIP em uma estação de trabalho UNIX cria uma processo chamado routed (esse processo é responsável por manter informações de roteamento e troca mensagens com outros processos routed em roteadores vizinhos)
Processamento da tabela RIP Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Figura: Fonte: Computer Networking, Kurose and Ross, 5ed, 2009.
Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Roteamento intra-as na Internet (OSPF) OSPF (Open Shortest Path First): projetado como sucessor do RIP, apresenta várias características avançadas A versão mais atual do OSPF é definida na RFC2328 (versão 2 de 1998) É um protocolo de estado de enlace: usa flooding (inundação) para obter informações do grafo de roteadores e o algoritmo de caminhos mínimos de Dijkstra Os custos individuais de cada enlace são configurados pelo administrador da rede Os roteadores divulgam as informações de estado de enlace sempre que há mudanças, e periodicamente (cerca de 30min) para aumentar a robustez
Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Roteamento intra-as na Internet (OSPF) Avisos (advertisements) OSPF são incluídos em mensagens OSPF que são carregadas diretamente pelo protocolo IP, usando o código de protocolo 89 (o próprio OSPF deve implementar funcionalidades como transferência confiável de mensagens e broadcast LS)
Vantagens incorporadas pelo OSPF Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Segurança: trocas de mensagens entre roteadores (ex., atualizações de LS) podem ser autenticadas (uso de MD5 e chaves secretas pré-configuradas nos roteadores) Vários rotas de mesmo custo: permite que várias rotas de mesmo custo sejam usadas Suporte integrado para roteamento unicast e multicast: MOSPF (Multicast OSPF) (RFC1584) provê extensões ao OSPF para oferecer roteamento multicast Suporte para hierarquia dentro de um domínio único de roteamento: possibilidade de estruturar um AS de forma hierárquica
Suporte a hierarquia no OSPF Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Figura: Fonte: Computer Networking, Kurose and Ross, 5ed, 2009.
Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Roteamento inter-as na Internet (BGP) BGP (Border Gateway Protocol) (RFC4271): é o padrão usado hoje na Internet, e provê as seguintes funcionalidades para os ASs: 1 Obter informação de alcance de subredes de ASs vizinhos 2 Propagar a informação de alcance para todos os roteadores internos ao AS 3 Determinar boas rotas para subredes baseado nas informações de alcance e poĺıticas do AS 4 As poĺıticas são configuradas manualmente em cada roteador (não fazem parte do protocolo) 5 O BGP permite que cada subrede avise sua existência para o resto da Internet
Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Roteamento inter-as na Internet (BGP)
Sessões internas e externas no BGP Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Os pares de roteadores trocam informações de roteamento sobre conexões usando TCP e a porta 179 Para cada conexão TCP, os dois roteadores nas portas de conexão são chamados peers BGP e a conexão TCP com todas as mensagens trocadas é chamada BGP session Uma sessão BGP que envolve dois ASs é chamada external BGP session e uma sessão entre roteadores do mesmo AS é chamada internal BGP session (ibgp)
Sessões internas e externas no BGP Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Usando as sessões externas, os ASs trocam listas de prefixos de subredes alcançáveis por cada AS Usando as sessões internas, quando um gateway recebe prefixos BGP, ele os distribui para outros roteadores do AS Destinos em BGP não são hosts, e sim subredes ou coleção de subredes (ex., 138.16.64/22)
Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Características de implementação do BGP O BGP é um protocolo de vetor de distância, mas um pouco diferente de outros protocolos desse tipo (ex., o RIP) Ao invés de manter apenas o custo de cada destino, cada roteador BGP mantém a informação do caminho (rota) usado e informa aos seus vizinhos (periodicamente) esse caminho (ajuda a resolver o problema de count-to-infinity)
Exemplo de execução do BGP Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP)
Exemplo de execução do BGP Roteamento intra-as na Internet (RIP) Roteamento intra-as na Internet (OSPF) Roteamento inter-as na Internet (BGP) Supondo que F usa a rota FGCD para chegar a D Depois de receber as informações dos vizinhos, ele descarta os caminhos de I e E porque passam pelo próprio F O BGP examina as outras rotas recalculando as distâncias ao destino D Se existir alguma restrição em uma rota sugerida, o custo vai para infinito
Algoritmos de roteamento broadcast Roteamento multicast Roteamento unicast: comunicação ponto-a-ponto, um nó fonte envia um pacote para um destino único Roteamento broadcast: a camada de rede provê um serviço de entrega de pacotes enviados de um nó fonte para todos os outros nós da rede Roteamento multicast: permite que um nó fonte envie uma cópia de um pacote para um grupo de outros nós da rede
Algoritmos de roteamento broadcast Algoritmos de roteamento broadcast Roteamento multicast Modo mais elementar Dado N nós destinos, o nó fonte cria N cópias do pacote, os endereça a cada nó da rede e os envia de forma unicast A primeira otimização: enviar apenas uma cópia em cada enlace e os nós ao longo do caminho criam as cópias quando necessário
Algoritmos de roteamento broadcast Algoritmos de roteamento broadcast Roteamento multicast Problemas 1 Necessidade de conhecer a priori o endereço de todos os nós da rede (pode precisar de um algoritmo anterior para registros de endereços) 2 O propósito do algoritmo broadcast pode ser a descoberta de enlaces, por isso ele não deveria assumir essa informação a priori Requisitos Os próprios nós da rede desempenham papel ativo na duplicação de pacotes, no redirecionamento de pacotes e na computação de rotas broadcast
Inundação (flooding) não-controlado Algoritmos de roteamento broadcast Roteamento multicast Um nó fonte envia uma cópia do pacote a cada nó vizinho Quando um nó recebe um pacote broadcast, ele cria cópias do pacote e as envia para cada um dos seus vizinhos (exceto o nó fonte) Se o grafo da rede possui ciclos, uma ou mais cópias de cada pacote broadcast irá circular indefinidamente (ver figura anterior!) O problema crítico é a inundação de cópias do pacote na rede quando os nós têm mais de 2 vizinhos
Inundação controlada Algoritmos de roteamento broadcast Roteamento multicast Para limitar a inundação de pacotes, o nó deve julgar quando deve retransmitir um pacote, há diferentes modos para isso: Usar número de sequência: o nó fonte insere no pacote seu endereço (ou um ID único) e um número de sequência de broadcast Cada nó mantém uma lista de endereços fonte e números de sequência dos pacotes que já foram recebidos, duplicados e redirecionados Quando um pacote é recebido e já está nessa lista, ele é descartado ex., o software Gnutella usa essa técnica
Redirecionamento de caminho reverso Algoritmos de roteamento broadcast Roteamento multicast Reverse Path Forwarding (RPF) Um roteador retransmite o pacote para todos os seus enlaces de saída (exceto aquele de quem recebeu o pacote) apenas se o pacote chegou pelo enlace que é seu caminho mais curto (rotas unicast) de volta ao nó fonte Em outro caso, o pacote é descartado (porque já foi recebido ou porque irá recebê-lo ainda nesse enlace) O RPF precisa saber apenas quem é o próximo roteador no caminho mais curto para o emissor do pacote recebido!
Broadcasting em árvores geradoras Algoritmos de roteamento broadcast Roteamento multicast Os algoritmos anteriores controlam a inundação, mas não evitam tansmissão redundante de pacotes Idealmente, todo nó deveria receber apenas uma cópia do pacote Isso pode ser alcançado usando a estrutura de uma Árvore Geradora (AG) (grafo sem ciclos)
Broadcasting em árvores geradoras Algoritmos de roteamento broadcast Roteamento multicast Funcionamento Os nós da rede inicialmente contrõem a AG Quando um nó deseja enviar um pocote broadcast, ele o envia a todos os enlaces que fazem parte da AG O nó não precisa conhecer toda a AG, apenas os vizinhos do grafo que são seus vizinhos na AG
Construção da Árvore Geradora Algoritmos de roteamento broadcast Roteamento multicast A complexidade maior dessa técnica está na construção da AG, há diferentes algoritmos para isso Algoritmo do ponto de encontro Um nó central é escolhido Os nós enviam mensagens tree-join endereçadas a esse nó Essas mensagens são redirecionadas usando roteamento unicast para o nó destino até chegarem nele ou a um outro nó que já faça parte da AG Em qualquer caso, o caminho percorrido pela mensagem é considerado um ramo da AG
Algoritmo do ponto de encontro Algoritmos de roteamento broadcast Roteamento multicast Figura: Fonte: Computer Networking, Kurose and Ross, 5ed, 2009.
Construção e uso da AG Algoritmos de roteamento broadcast Roteamento multicast Figura: Fonte: Computer Networks, Tanenbaum, 4ed, 2003.
Algoritmos broadcast na prática Algoritmos de roteamento broadcast Roteamento multicast Protocolos broadcast são usados nas camadas de rede e de aplicação Um campo adicional que pode ser incluído é o TTL (Time-To-Live) para limitar o número de saltos (hops) de um pacote Quando um pacote duplicado é recebido, o TTL é decrementado, assim os pacotes irão atingir os nós que estão a um certo número de saltos (TTL) (inundação com escopo limitado)
Roteamento multicast Algoritmos de roteamento broadcast Roteamento multicast Requer gerência de grupos! Problemas principais: 1 Como identificar os destinatários de um pacote multicast? 2 Como endereçar um pacote enviado para esses destinatários?
Destinatários dos pacotes Algoritmos de roteamento broadcast Roteamento multicast No caso unicast, o IP do destino é colocado no datagrama No caso broadcast, todos devem receber o pacote, então não é necessário endereçá-lo No caso multicast, há vários destinatários, e nem sempre é o caso do emissor saber exatamente quem são esses destinatários
Destinatários dos pacotes Algoritmos de roteamento broadcast Roteamento multicast Indireção de endereço Na Internet (e em outras redes), um pacote multicast é endereçado usando indireção de endereço (address indirection), i.e., um único identificador é usado para o grupo de receptores e uma cópia do pacote é entregue a todos os nós associados ao grupo especificado Na Internet, o ID de um grupo é um endereço IP multicast de classe D O grupo de receptores associados a um endereço de classe D é um grupo multicast Cada membro do grupo tem seu próprio endereço IP, que é independente do endereço de grupo
Grupos multicast Sumário Algoritmos de roteamento broadcast Roteamento multicast Outras questões a tratar: 1 Como um grupo começa e termina? 2 Como o endereço do grupo é escolhido? 3 Como os hosts são adicionados ao grupo? 4 Qualquer host pode se juntar ao grupo como emissor e receptor? 5 Os membros sabem a identidade dos outros membros? 6 Como os nós da rede interoperam para entregar um pacote multicast para todos os membros do grupo? Protocolo IGMP Na Internet essas questões são respondidas pelo protocolo IGMP
Protocolo IGMP (RFC3376) Algoritmos de roteamento broadcast Roteamento multicast O IGMP (Internet Group Management Protocol) opera entre um host e seu roteador direto Ele provê meios para um host informar ao seu roteador que uma aplicação rodando nesse host quer se juntar a um grupo multicast específico Outra funcionalidade é dada por um algoritmo de roteamento multicast da camada de rede, o qual deve coordenar a operação multicast dos roteadores (os pacotes trocados são encapsulados em datagramas IP com código 2)
Mensagens do protocolo IGMP Algoritmos de roteamento broadcast Roteamento multicast membership-query: enviada pelo roteador a todos os hosts em uma interface anexada (ex., todos os hosts de uma LAN), para determinar o conjunto de todos os grupos multicast para os quais os hosts da interface se incluiram (pode ser enviada também por um host quando uma aplicação quer se juntar a um grupo) membership-report: resposta para a mensagem anterior leave-group: é opcional pois um roteador infere que um host não está mais em um grupo multicast se ele não responde a mensagens membership-query com o ID do grupo
Exemplo de protocolo soft state Algoritmos de roteamento broadcast Roteamento multicast A informação de estado é removida via um evento de timeout (no caso do IGMP, por uma mensagem membership-query) se ele não fo explicitamente atualizado Essa estratégia elimina a necessidade de mecanismos para tratar o caso de entidades que terminam abruptamente e não removem os seus estados
Algoritmos de roteamento multicast Algoritmos de roteamento broadcast Roteamento multicast Árvore de enlaces de conexão do grupo A meta do algoritmo de roteamento multicast é encontrar uma árvore de enlaces que conecta todos os roteadores que possuem hosts anexados pertencentes a um grupo multicast Os pacotes multicast serão roteados ao longo dessa árvore A árvore pode conter roteadores que não possuem hosts anexados pertencentes ao grupo multicast Duas abordagens são usadas para encontar essa árvore: árvore de grupo compartilhada árvore baseada em um nó fonte
Algoritmos de roteamento broadcast Roteamento multicast Árvore de grupo compartilhada e baseada em nó fonte Figura: Fonte: Computer Networks, Tanenbaum, 4ed, 2003.
Árvore de grupo compartilhada Algoritmos de roteamento broadcast Roteamento multicast Contrõe uma árvore que inclui todos as arestas de roteadores com hosts anexados pertencentes ao grupo multicast Abordagem baseada na escolha de um nó central (uma questão crítica é a escolha desse nó)
Árvore baseada em nó fonte Algoritmos de roteamento broadcast Roteamento multicast Constrõe uma árvore de roteamento multicast para cada host fonte no grupo multicast Na prática, um algoritmo RPF (com fonte x) é usado para construir a árvore multicast de pacotes originados em X Um problema é a possibilidade dos roteadores receberem pacotes multicast sem terem hosts anexados para um dado grupo Nesse caso, os roteadores enviam uma mensagem prune para o seu roteador superior Se um roteador recebe uma mensagem prune de cada um dos seus roteadores inferiores, ele pode redirecionar a mensagem para o roteador acima
Roteamento multicast na Internet Algoritmos de roteamento broadcast Roteamento multicast O primeiro protocolo de roteamento multicast usado na Internet foi o DVMRP (Distance Vector Multicast Routing Protocol), usando um algoritmo RPF com pruning O protocolo mais usado na Internet é o PIM (Protocol Independent Multicast), o qual explicitamente reconhece dois cenários de distribuição multicast: 1 modo denso (RFC3973): membros do grupo estão densamente localizados, usa técnica similar ao DVMRP 2 modo esparso (RFC4601): membros do grupo estão dispersos, usa pontos de encontro para configurar a árvore de distribuição multicast
Protocolo ICMP Protocolo IPv6 ICMP (Internet Control Message Protocol) A camada de rede da Internet tem três componentes principais: 1 Protocolo IP 2 Protocolos de roteamento (RIP, OSPF e BGP) 3 ICMP (RFC792): usado pelos hosts e roteadores para trocar informações da camada de rede
Protocolo ICMP Sumário Protocolo ICMP Protocolo IPv6 Arquiteturalmente o ICMP está acima do protocolo IP, uma vez que as mensagens ICMP são transportadas dentro de datagramas IP (da mesma maneira que segmentos TCP e UDP) Mensagens ICMP possuem um campo de tipo e código, acrescidas dos cabeçalho e dos primeiros 8 bytes do datagrama IP que gerou a mensagem ICMP (assim o emissor pode determinar o datagrama que causou o erro)
Protocolo ICMP Sumário Protocolo ICMP Protocolo IPv6 Exemplo o programa ping envia uma mensagem ICMP do tipo 8, código 0 o receptor envia de volta uma mensagem do tipo 0, código 0 (o programa traceroute usa as respostas ICMP para realizar a sua tarefa)
Tipos de mensagens ICMP Protocolo ICMP Protocolo IPv6
Protocolo IPv6 Sumário Protocolo ICMP Protocolo IPv6 No início dos anos 90, a IETF iniciou a tarefa de desenvolver um sucessor do protocolo IPv4 A motivação principal foi o fato do espaço de endereços IP de 32 bits começar a ficar insuficiente A idéia foi aproveitar o esforço para propor avanços e melhorias no protocolo IP
Formato do datagrama IPv6 Protocolo ICMP Protocolo IPv6 Mudanças principais em relação ao IPv4 Extensão do espaço de endereçamento: o endereço IP passa de 32 bits para 128 bits (é possível dar um endereço IP a cada grão de areia..) Introdução do tipo de endereço anycast: permite que um datagrama seja enviado para qualquer membro de um grupo de hosts (ex., enviar um HTTP GET para o site/mirror mais próximo que contenha um determinado documento) Cabeçalho de tamanho fixo em 40 bytes: o campo de opções foi eliminado Prioridade e rotulamento de fluxo: IPv6 define fluxo permitindo rotular pacotes pertencentes a um fluxo para o qual o emissor requisita um tratgamento especial
Formato do datagrama IPv6 Protocolo ICMP Protocolo IPv6 Figura: Fonte: Computer Networking, Kurose and Ross, 5ed, 2010.
Protocolo ICMP Protocolo IPv6 Campos do IPv4 que não aparecem no IPv6 Fragmentação Checksum do cabeçalho Opções
Protocolo ICMP Protocolo IPv6 Campos do IPv4 que não aparecem no IPv6 Fragmentação IPv6 não permite fragmentação e remontagem de datagramas nos roteadores intermediários (apenas na fonte e no destino) Se o datagrama for maior que o MTU do roteador, ele é descartado e uma mensagem ICMP apropiada é enviada de volta
Protocolo ICMP Protocolo IPv6 Campos do IPv4 que não aparecem no IPv6 Checksum do cabeçalho Os projetistas consideram a redundância de checagem de erro já realizada nas camadas de enlace e de transporte suficiente Lembrando que, uma vez que um dos campos do cabeçalho é o TTL, o qual deve ser alterado em cada roteador, o checksum precisa ser recalculado em cada roteador, com implicações de desempenho
Protocolo ICMP Protocolo IPv6 Campos do IPv4 que não aparecem no IPv6 Opções O campo de opções foi excluído do datagrama Permite fixar o tamanho do cabeçalho O antigo campo de opções foi reprojetado como um dos possíveis next headers apontado de dentro do cabeçalho IPv6 (i.e., assim como cabeçalhos UDP e TCP podem ser os próximos cabeçalhos dentro do pacote IP, o mesmo vale para o campo opções)
ICMP para IPv6 Sumário Protocolo ICMP Protocolo IPv6 Uma nova versão do ICMP foi definida para o IPv6 (RFC4443) Foram incluídos novos códigos e tipos ICMPv6 também incorpora as funcionalidades do protocolo IGMP (usados para gerenciar grupos multicast)
Transição de IPv4 para IPv6 Protocolo ICMP Protocolo IPv6 Alternativas para migrar de IPv4 para IPv6 O problema de migrar de IPv4 para IPv6 na Internet pública é que sistemas IPv4 já em uso não são capazes de manipular datagramas IPv6 Pilha dual: nós IPv6 possuem também uma implementação IPv4 completa (RFC4213) (um problema é forçar dois nós IPv6 falarem IPv4) Tunelamento (Tunneling): os roteadores IPv4 entre dois roteadores IPv6 são chamados tunnel (RFC4213)
Protocolo ICMP Protocolo IPv6 Tunelamento para migração IPv4 para IPv6 Figura: Fonte: Computer Networking, Kurose and Ross, 5ed, 2010.
Protocolo ICMP Protocolo IPv6 Tunelamento para migração IPv4 para IPv6 Usando tunelamento, um nó fonte IPv6 coloca o datagrama IPv6 completo no campo payload de uma datagrama IPv4 Esse datagrama IPv4 é então endereçado para o nó IPv6 do lado do receptor O datagrama é enviado para o primeiro nó no túnel O receptor determina que o datagrama IPv4 contém um datagrama IPv6, extrai esse datagrama e então passa a rotear o datagrama IPv6
Protocolo ICMP Protocolo IPv6 Tunelamento para migração IPv4 para IPv6
Transição de IPv4 para IPv6 Protocolo ICMP Protocolo IPv6 Mesmo que a transição inicial para o IPv6 tenha sido lenta (primeiros 10 anos) a visão a longo prazo é que ela irá acontecer de fato Meta de aplicar o IPv6 na computação ubíqua A experiência com o IPv6 mostra o quanto é difícil alterar protocolos da Internet pública (é como mexer nas fundações de uma casa!)
Roteamento em nós móveis A meta do roteamento em redes com nós móveis é tornar possível enviar pacotes para nós que mudam de lugar usando seus endereços locais Cada unidade/área da rede (LAN) possui um ou mais agentes estrangeiros e um agente local Um agente estrangeiro mantém as informações sobre todos os nós móveis que visitam a área Um agente local mantém informações sobre todos os nós cujo home é a área local, mas estão visitando outra área no momento
Roteamento em nós móveis Figura: Fonte: Computer Networks, Tanenbaum, 4ed, 2003.
Roteamento em nós móveis Registro de nós móveis Quando um novo nó entra na área, seu computador deve se registrar com o agente estrangeiro: Periodicamente, cada agente estrangeiro propaga um pacote anunciando a sua existência e endereço O nó visitante pode esperar por uma mensagem desse tipo ou enviar uma mensagem de pergunta O nó móvel faz seu registro passando as informações necessárias
Roteamento em nós móveis Registro de nós móveis O agente estrangeiro contacta o agente local do nó e diz um dos seus nós está aqui O agente local examina as informações (checagem de segurança) e manda um ok Quando o agente estrangeiro recebe a resposta do agente local, ele cria uma entrada na sua tabela e informa o ao nó móvel que ele está registrado
Roteamento em nós móveis Quando um pacote é enviado para o nó móvel, ele é roteado para a sua LAN home O agente local consulta a sua tabela e informa a localização atual do nó
Roteamento em redes ad hoc Um caso mais extremo é aquele em que nós e roteadores são móveis (redes não-estruturas, ou redes ad-hoc): MANETs (Mobile Ad hoc Networks) Nesses casos, cada nó normalmente tem o papel de host e de roteador Todas as regras usuais de topologias fixas, vizinhos fixos e conhecidos, relacionamento fixo entre IPs e localização são inválidos Vários algoritmos de roteamento tem sido propostos para essas redes
1 KUROSE and ROSS, Computer Networking, 5ed, 2010. 2 TANENBAUM, Computer Networks, 4ed, 2003.