No início dos anos
1980, os profissionais envolvidos no desenvolvimento
da Internet previram que haveria um aumento significativo
do n�mero de redes de computadores no �mbito mundial,
mas não contaram com o crescimento exponencial que
temos assistido nos �ltimos anos.
Esse crescimento acelerado
da Internet e o desenvolvimento igualmente rápido
de novas tecnologias e dispositivos de redes estão
levando ao esgotamento dos endereços IP disponíveis.
Além disso, esse grande aumento do n�mero de redes
leva a uma situação onde as tabelas de roteamento
acabam tomando proporções que dificultam a manutenção
e atualização das informações de todas essas redes.
IP de Próxima Geração
O IPv6, também conhecido
como IPng (Internet Protocol next generation) está
referenciado na RFC (Request For Comments)1883, que
contém sua especificação completa. Ele deverá possibilitar
a resolução dos problemas atuais de esgotamento de
endereços do IPv4 e também deverá ser capaz de prover
as funcionalidades necessárias para as novas tecnologias
de redes que surgirem.
O IPv6 mantém as principais
características do IPv4, ou seja, é um protocolo sem
conexão onde cada datagrama contém um endereço de
destino e é roteado de forma independente e assim
como o IPv4, o IPv6 também possui um n�mero máximo
de roteadores por onde o pacote poderá passar (Hop
Limit) no percurso entre origem e destino.
O IPv6 foi desenvolvido
pela mesma razão que outros protocolos para uso na
Internet são criados e modificados: internetwork,
ou seja, crescimento da Internet e integração das
redes de computadores por todo o mundo, motivado principalmente
pelo aumento das conexões de redes, bem como pelo
surgimento de novas aplicações que incluem:
Dispositivos pessoais
de comunicação (fax, PDA, telefones, computadores
portáteis, etc), que são endereçáveis na rede e necessitam
de um IP �nico;
Dispositivos controlados
através da rede (controles de acesso, identificação
pessoal, automação predial, etc), que utilizam endereços
IP para se comunicarem;
Sistemas de entretenimento
(TV interativa, vídeo sob demanda, etc), que requerem
endereços IP para funcionarem plenamente.
Todas as aplicações
citadas acima apresentam como características em comum
necessidade de roteamento em larga escala, configuração
e reconfiguração automática, autenticação e criptografia
de dados e todas necessitam serem incluídos em tabelas
de roteamento que o IPv4 não terá como dar suporte
futuramente, principalmente se lembrarmos a necessidade
de manter as aplicações já existentes.
As principais características
que podemos destacar no protocolo IPv6 são as seguintes:
Expansão da capacidade
de endereçamento e encaminhamento;
Simplificação dos
cabeçalhos;
Suporte melhorado
para opções;
Capacidade de suportar
qualidade de serviço (QoS);
Capacidade de providenciar
autenticação e privacidade.
Esta capacidade maior
de endereços do IPv6 permite mais níveis de hierarquia
de endereçamento, autoconfiguração (stateless configuration)
e suporte mais eficiente a outros endereços de protocolos
de redes, permitindo ainda que um dispositivo tenha
m�ltiplos endereços por interface, o que torna cada
conexão uma conexão diferente.
Podemos destacar ainda
outras características importantes do IPv6:
Suporte a endereços
de multicast (conexão ponto-multiponto, correspondente
a um grupo de computadores), unicast (conexão ponto-a-ponto,
correspondente a um �nico computador) e anycast (o
destino é um computador dentro de um grupo de computadores);
Suporte a auto-reendereçamento,
o que permite que um pacote seja roteado automaticamente
para um novo endereço;
Suporte a auto-reconfiguração
de endereços de rede por meio de DHCP;
Suporte a autenticação
de dados, privacidade e confidencialidade;
Suporte a roteamento
prioritário para pacotes que necessitam de taxa de
transmissão constante, sem interrupção.
Por que 128 bits?
Como a proposta inicial
era fornecer mais endereços para a Internet, o grupo
de trabalho responsável pelo desenvolvimento do novo
protocolo criou uma versão experimental batizada de
IPv5, projetada para a transmissão de dados em tempo
real. O IPv5 foi uma pequena modificação experimental
no IPv4 com o objetivo de trafegar voz e vídeo em
multicast. Sua especificação pode ser encontrada sob
o RFC 1819. Posteriormente essa versão foi aperfeiçoada
e ganhou o n�mero IPv6.
A primeira versão
do IPv6 foi elaborada inicialmente para usar 160 bits
em sua composição. Posteriormente foi alterada para
128 bits, devido a uma convenção adotada entre IETF
(Internet Engineering Task Force) e o IEEE, conhecida
por EUI-64 (Extended Unique Interface). O EUI-64
altera o endereço MAC dos novos dispositivos de rede,
de 48 bits para 64 bits, permitindo ao IPv6 utilizar
64 bits na identificação das redes e 64 bits na identificação
dos hosts.
Diferenças entre IPv6
e IPv4
O grupo responsável
pela implementação do IPv6 verificou que alguns campos
e funções do protocolo IPv4 executavam tarefas que
não eram necessárias, tornando o trabalho do protocolo
lento. Por esse motivo, alguns campos no IPv6 foram
suprimidos, outros renomeados e movidos de lugar e
um outro adicionado.
Algumas diferenças
entre os dois protocolos são evidentes quando são
examinados os formatos dos cabeçalhos de ambos. Três
diferenças bastante visíveis são:
O tamanho do cabeçalho
do IPv4 é variável devido as suas opções e campos
de apoio. Já o tamanho do cabeçalho do IPv6 é fixo
em 320 bits;
O IPv4 apresenta 14
campos, enquanto o IPv6 apresenta apenas 8 campos.
Cabe aqui ressaltar que, embora o cabeçalho do IPv4
apresente 14 campos, o mais comum é utilizarmos apenas
12 (o campo options � opções - raramente é utilizado
e, em conseq�ência, o campo preenchimento � padding
- também não é utilizado);
No campo de endereçamento
do IPv4, tanto o endereço de origem (source address)
quanto o endereço de destino (destination address)
apresentam 32 bits, enquanto no IPv6 apresentam 128
bits cada um. Como se pode observar, os campos de
endereço do IPv6 representam 80% do cabeçalho (256
de 320 bits).

O IPv6 ainda oferece
suporte a uma grande variedade de opções que vão desde
autenticação IPSec, criptografia para segurança de
dados, priorização de tráfego e designação de tratamento
especial para os pacotes, todos serviços não providos
pelo IPv4.
Endereçamento no IPv6
Uma das diferenças
mais marcantes entre o IPv4 e o IPv6 está no tamanho
do endereço IP. Com 128 bits, o IPv6 possui quatro
vezes mais bits de endereços que o IPv4, o que significa
a disponibilidade de 2128 endereços, ou
seja, 340.282.366.920.938.463.463.374.607.431.768.211.456
endereços. Contudo deve-se observar que o endereçamento
do IPv6 não é completamente plano, isto é, não é possível
utilizar todas as combinações disponíveis. Mesmo assim
ainda teríamos um n�mero suficientemente grande de
endereços para suprir a demanda das redes por várias
décadas.
Com a definição do
novo formato de cabeçalho para o IPv6, o IETF optou
por separar os cabeçalhos, isto é, host passa a ter
um cabeçalho de host e a rede, cabeçalho de rede,
tornando a tarefa de roteamento mais simples e permitindo
ainda a adoção de uma política de roteamento mais
elaborada e segura.
Os endereços IPv6,
assim como no IPv4 estão agrupados em classes, contudo
estes são atribuídos às interfaces físicas, não aos
nós de rede. Eles são expressos na forma hexadecimal
e escritos com 8 inteiros de 16 bits e dois pontos
(:) são usados como delimitadores. Um exemplo de endereço
IPv6 é o seguinte:
2A01:0000:0000:0000:12FB:071C:04DE:689E
Para reduzir a complexidade
de escrita dos endereços, os grupos de 0 hexadecimais
são substituídos por um �nico 0. Assim, o exemplo
anterior ficaria:
2A01:0:0:0:12FB:071C:04DE:689E
Freq�entemente, muitos
dos endereços IPv6 contém strings de 0 contíguos.
Nestes casos, dois pontos duplos (::) podem designar
os m�ltiplos grupos de 0, simplificando a notação.
Dessa forma, o exemplo anterior pode ser escrito ainda
como:
2A01::12FB:071C:04DE:689E
Neste caso, os dois
pontos duplos denotam três grupos de 0 hexadecimais.
Deve-se observar que os dois pontos duplicados só
podem ser usados uma �nica vez no endereço (no início
ou no final).
Para maiores informações
sobre a arquitetura de endereçamento IPv6 consultar
a RFC 1884, RFC 2073, RFC 2373 e RFC 2374.
Suporte ao IPv4
O IPv6 dá suporte
aos formatos do IPv4. Neste caso, os endereços são
chamados de "endereços IPv6 com endereços
IPv4 embutidos". Dois formatos diferentes
são permitidos neste caso:
Um formato que consiste
de 96 bits 0 seguidos por um endereço IPv4 de 32 bits.
Por exemplo, o endereço IPv4 203.45.150.68 pode ser
expresso no IPv6 como 0:0:0:0:0:0:203.45.150.68 ou
ainda ::203.45.150.68. Esse tipo de endereço é usado
para representar nós que dão suporte ao IPv6, mas
fazem roteamento de pacotes IPv4;
O segundo formato
que consiste de 80 bits 0 seguidos por um grupo de
hexadecimais F e este seguido por um endereço IPv4.
Por exemplo, o endereço IPv4 203.45.150.68 pode ser
escrito como ::FFFF:203.45.150.68. Esse tipo de endereço
é usado para representar nós IPv4 que não dão suporte
ao IPv6.
Processo de migração
Os equipamentos de
rede deverão oferecer compatibilidade entre IPv6 e
IPv4 ainda por mais alguns anos, seja por encapsulamento,
tunelamento, algum protocolo de roteamento capaz de
lidar com ambas as versões ou alguma outra técnica.
A conversão do IPv4
para o IPv6 deverá ocorrer gradualmente, sem interromper
o funcionamento dos sistemas existentes em IPv4, através
de atualizações incrementais das aplicações. Assim,
inicialmente teremos dispositivos IPv4 coexistindo
com dispositivos IPv6 e, posteriormente, apenas os
dispositivos IPv6 deverão permanecer em funcionamento
nas redes de computadores.
Há um grupo de trabalho
do IETF, o IPng Transition (ou simplesmente "ngtrans")
encarregado de levantar os problemas e soluções para
essa migração.
Conclusão
O IPv4, estabelecido
há mais de uma década, vem demonstrando algumas deficiências
principalmente em função do crescimento de tráfego
verificado ao longo dos �ltimos anos e da variedade
de aplicações desenvolvidas para a Internet. O IPv6
é a proposta da IETF para resolver as fraquezas do
IPv4, com especial atenção para as funções de gerenciamento
de endereços, qualidade dos serviços e segurança,
além de ampliar bastante o espaço de endereçamento
na Internet.
Ao contrário do que
afirmam alguns profissionais da área de redes, o IPv6
não é uma atualização do IPv4, mas uma versão nova
do protocolo IP, uma vez que o endereçamento é diferente
do seu antecessor, possui cabeçalhos mais específicos,
provê novas opções, incluindo segurança e controle
de fluxo, juntamente com outras características que
não estão presentes no IPv4 atualmente em uso.