| WirelessBR | 
 | WirelessBr é um site brasileiro, independente, sem vínculos com empresas ou organizações, sem finalidade comercial, feito por voluntários, para divulgação de tecnologia em telecomunicações | 
| IPv6  (Internet Protocol
          version 6) | ||
| Autor: Wiliam Hiroshi Hisatugu (*) | ||
            
  Em 1991, membros do IETF (Internet Engineering Task Force) 
  coletaram dados referentes ao crescimento da internet. O resultado concluía
  que até 1994 os endereços de internet iriam se esgotar, uma vez que o espaço
  de endereçamento é de 32 bits e as tabelas de roteamento estavam se tornando
  grandes demais para serem gerenciadas de maneira satisfatória tornando,
  assim, as redes mais lentas. 
Com
  a adoção de controle de costas de domínio esse prazo vem sendo prorrogado
  para adoção de uma solução mais eficiente e eficaz, uma vez que a
  capacidade de processamento dos computadores também cresce a altas taxas,
  enquanto que a questão das tabelas de roteamento continuava.
As
  aplicações para internet começaram a variar e apresentar novas
  necessidades, as quais o IPv4 mostrou-se deficiente. Naquele momento a
  internet já era acessível a uma parte considerável da população mundial,
  novos nichos de mercado foram descobertos como o e-commerce e vídeo conferências.
  Atualmente essas necessidades estão se tornaram mais essenciais, assim como
  um novo mercado está se abrindo : a transmissão de dados via comunicação móvel
  celular a partir da Terceira Geração de Telefonia Móvel Celular.
Em 1993 grupos sugeriram soluções que fosse compatíveis com o IP e que pudesse substituí-lo gradualmente. A proposta escolhida foi o SIPP – Simple Internet Protocol Plus – , porém as demais propostas não foram totalmente descartadas e algumas de suas características foram anexadas à nova tecnologia que passaria a ser denominada IPv6. Atualmente um novo protocolo está sendo estudado, chamado de IP Móvel
 
           
  
  As principais características das redes IP são: 
·       
  Baseadas em datagramas;
·       
  Não oferecem segurança;
·       
  Não garantem entrega dos datagramas e nem com a ordem em que esses
  datagramas serão entregues;
·       
  Utiliza endereços para identificar origem e destino do datagrama. 
           
  
  O protocolo utilizado nessas redes é o protocolo IP que após os
  estudos que resultaram nas especificações do IPv6 passou a ser denominado
  IPv4. Que possui o seguinte formato de datagrama:
 
 
·       
  campo VERSION ( 4 bits) contém
  a versão do IP que foi usado para criar o datagrama. Desta maneira checa-se a
  versão antes de processá-lo, evitando-se que formato de pacotes diferentes
  sejam usados. 
·       
  campo IHL ( header
  length ) possui quatro bits que indicam o comprimento do datagrama em
  palavras de 32 bits. O seu valor mínimo é 5, o que indica um cabeçalho
  variando de 20 octetos ( sem o campo OPTIONS que é opcional ) a 60 octetos.
·       
  TYPE
  OF SERVICE ( 8 bits)
  indica o tipo de serviço de rede que se deseja. Como pode ser visto na figura
  4.2, o campo pode ser quebrado em 5 ( cinco) sub-campos. Os três primeiros
  bits correspondem ao sub-campo PRECEDENCE
  que diz a prioridade de cada datagrama àquele que enviará os dados. O
  valor 1 indica prioridade normal, e 7 a mais alta prioridade que é utilizada
  para pacotes de controle de rede. Os bits D, T e R especificam
  respectivamente, o que é mais importante no envio do pacote: retardo, taxa de
  envio e confiabilidade. Desta maneira pode-se escolher prioridades de tipos de
  links diferentes de acordo com o desejado. Os dois últimos bits não são
  utilizados. Na prática os roteadores ( equipamentos utilizados para
  especificar rotas aos datagramas ) ignoram totalmente todas as opções do
  campo TYPE OF SERVICE, pois é
  necessário um conhecimento prévio da tecnologia dos links utilizados.
·       
  campo TOTAL LENGTH indica o
  tamanho total do datagrama, incluindo cabeçalho e dados, em octetos. O valor
  máximo que lhe é atribuído é de 65.535 bytes. Nas tecnologias de redes
  existentes este valor é suficiente, porém, com a utilização de redes de
  altíssima velocidade é um fator limitante.Antes de falar sobre os próximos
  campos, seria interessante visualizar como os datagrama relacionam-se com os
  quadros da sub-rede. Verificou-se anteriormente que o datagrama poderia ter um
  tamanho de até 65.535 octetos, porém na prática, existem outros limites
  fundamentais. Sabe-se que os datagramas, movem-se de uma máquina para outra,
  e que estes devem ser transportados pela camada de sub-rede. Para fazer um
  transporte eficiente é preciso que cada datagrama seja transportado em um
  quadro distinto desta camada. Este processo denomina-se encapsulamento
  representado pela figura 5.3. Ao tamanho máximo do quadro suportado por uma
  camada de sub-rede denomina-se MTU ( maximum
  transfer unit ). 
·       
  campo IDENTICATION (16
  bit's), permite no caso de uma fragmentação, o destino identificar a qual
  datagrama pertence o fragmento, utilizando-se deste e do endereço daquele que
  o originou.
·       
  bit DF indica que o Datagrama não deve ser fragmentado. Garantindo que
  isto não ocorrerá, mesmo que se tenha um desempenho baixo se o mesmo for forçado
  a passar por uma rede lenta.
·       
  bit MF indica que existem mais fragmentos a seguir. Todos os fragmentos
  devem tê-los setados, menos o último.
·       
  campo FRAGMENT OFFSET indica
  a que ponto do Datagrama original o fragmento pertence. Todos os fragmentos
  devem ser múltiplos de 8 bytes.
·       
  campo TIME TO LIVE
  representa o tempo de processamento dos pacotes em segundos. Cada roteador ao
  processar o datagrama decrementa o tempo gasto para este processamento, se
  alcançar zero o datagrama é descartado. Com a dificuldade dos roteadores
  saberem detalhes do tempo de transmissão sub-redes, na prática ao passar
  pelos mesmos, este campo é decrementado de 1. Garantindo, assim, que um
  datagrama não trafegue indefinidamente pela rede caso haja uma rota em loop,
  ou seja, um caminho que seja cíclico.
·       
  campo PROTOCOL especifica
  qual protocolo de transporte foi utilizado para criar os dados transportados
  pelo datagrama. É utilizado para entregar o dados diretamente ao tipo do
  protocolo que o criou.
·       
  campo HEADER CHECKSUM
  garante a integridade do cabeçalho. Este processo é feito considerando o
  cabeçalho como uma seqüência de inteiros de 16 bits, onde soma-se eles
  utilizando aritmética de complemento de 1 e depois calcula-se o complemento
  de 1 do resultado. Se o valor der 0, não houve erro no cabeçalho.
·       
  Os campos SOURCE IP ADDRESS
  e DESTINATION IP ADDRESS (32 bits),
  contém respectivamente os endereços do host de origem e do host de destino. 
·       
  campo OPTIONS não é
  requerido em todos os datagramas. Foi criado inicialmente para permitir novas
  implementações ao projeto original. O comprimento deste campo depende de
  quais opções foram selecionadas. Algumas possuem somente 1 octeto, outras
  possuem comprimentos variáveis. Quando presentes no datagrama, as opções
  aparecem de forma contígua e sem separadores. Cada opção consiste de 1
  octeto simples que representa o OPTION
  CODE, que pode ser seguido de um outro octeto LENGTH
  e um conjunto de octetos de dados.
·       
  OPTION
  CODE é dividido em 3
  sub-campos, como pode ser visto na figura 4.4. O primeiro campo, o COPY,
  controla como os roteadores devem tratar as opções durante a fragmentação.
  Quando tem o seu valor 1 especifica que a opção será copiada em todos os
  fragmentos, quando 0, somente no primeiro. O OPTION
  CLASS indica as várias classes de opções. 
 
 ·       
  Crescimento da população utilizando a Internet – como a IP é o
  protocolo que viabiliza a Internet e esta vem crescendo a passos largos, sua
  capacidade de endereçamento está chegando ao seu limite
 ·       
  Novas aplicações para Internet – o aumento da utilização da
  internet trouxe uma série de novas aplicações que necessitavam de novos
  serviços que o IPv4 não pode fornecer. Um exemplo é a transmissão de vídeo
  em tempo real. 
·       
  Comércio eletrônico – Dentre as aplicações desenvolvidas para a
  Internet podemos destacar o comércio eletrônico, mas para tanto é necessário
  ter mecanismo de segurança e privacidade.
  
           
  
  O IPv6 tem como principal característica o espaço de endereçamento
  que é muito maior que o IPv4. Além disso, foram acrescentadas outras
  características para suprir as necessidades descritas acima, da mesma forma
  que foi lhe dado robustez para atender as novas tendências de mercado. 
           
  
  Conforme será mostrado adiante,  uma
  nova necessidade surgiu quando o IPv6 já estava definido, fazendo com que um
  novo protocolo fosse concebido, o qual também é objeto de estudo deste
  trabalho: o IP Móvel. Esta mobilidade não está simplesmente relacionada com
  a mobilidade física  do
  equipamento portador de um endereço IP. 
 
 
           
  
  O IPv6 trouxe consigo uma série de vantagens sobre o protocolo IP
  original, também chamado por IPv4.  
·       
  Espaço de endereçamento de 128 bits – estima-se que seja suficiente
  para os próximos 30 anos;
·       
  Propõe uma redução na tabela de rotemamento e por conseqüência uma
  maior rapidez na rede;
·       
  Mecanismo para encapsulamento próprio e de outros protocolos;
·       
  Simplificação do cabeçalho;
·       
  Distinção de tipo de dado;
·       
  Segurança de dados, incluindo criptografia de dados
·       
  Suporte para roteamento multicast de maneira mais eficiente e ainda a
  implementação do modelo anycast;
·       
  Métodos de transição e compatibilidade com o IPv4;
·       
  Mecanismo de autoconfiguação;
·       
  Suporte para hosts móveis, incluindo comunicação via rádio;
·       
  Permite que dados multimídia em tempo real trafegem com mais eficiência.
  
 
           
  
  Com um cabeçalho base mais simples e opcionalmente um cabecalho
  adicional, algumas informações contidas no cabeçalho do IPv4 se tornaram
  opcionais para um melhor rendimento do roteamento. A figura 1 mostra a
  estrutura do datagrama IPv6.
 
 
Version
  – função idêntica a do IPv4
 Pryority
  – campo que identifica a prioridade do datagrama. Os valores de 0 a 7 dão
  destinados a protocolos capazes de diminuir o fluxo de envio caso ocorra o
  congestionamento. Para pacotes de aplicações em tempo real que são enviados
  a taxa constante, valores de 8 a 15 dizem quais datagramas podem ser
  descartados com prioridade maior para valores mais altos 
Flow
  label – identifica se um
  datagrama precisa de um tratamento especial nos roteadores como datagramas de
  Aplicações de vídeo em tempo real
Payload
  Length – tamanho do
  datagrama sem o cabeçalho.
 Next
  Header – identifica se há
  cabeçalho de extensão após o cabeçalho base, se houver identifica que cabeçalho
  é. Este campo tem dois propósitos: generalização e eficiência. A
  generalização é conseguida com a inclusão de funções adicionais, como
  fragmentação, roteamento na origem e autenticação. A eficiência é
  conseguida a partir do momento que se não forem preciso estas características
  os seus campos não necessitam estar presentes. Como a maioria dos valores são
  provenientes do IPv4. Os cabeçalhos de extensão são classificados da
  seguinte maneira. 
·       
  Routing
  - roteamento estendido (IPv4 possui roteamento livre). 
·       
  Fragmentation
  - Fragmentação e Remontagem. 
·       
  Authentication
  - Integridade e Autenticação. Segurança. 
·       
  Encapsulation
  - Confidencialidade. 
·       
  Hop-by-Hop
  Option - Opção especial
  que requer processamento de hop
  para hop. 
·       
  Destination
  Options - Informação
  opcional a ser examinada pelo destino. 
 
Hop
  Limit – número máximo
  de hops para um datagrama. Ele é decrementado a cada hop até chegar ao
  destino ou se igualar a zero e então é descartado
 Source
  Address – endereço
  origem do datagrama de tamanho 128
 Destination
  Address – endereço
  destino do datagrama
  
(*)
  O autor,  Wiliam Hiroshi Hisatugu é mestrando em Telecomunicações pelo
  INATEL (Instituto Nacional de
  Telecomunicações); graduou-se pela Universidade Estadual de Londrina em
  DEZ/2000 (Bacharel em Ciência da Computação); possui dois anos de experiência
  profissional como Analista de Sistemas do Núcleo de Processamento de Dados da
  Universidade Estadual de Londrina; suas áreas de interesse  são
  Comunicação de Dados via ondas de Rádio, IPv6 e Gerência de Redes.