miércoles, 18 de noviembre de 2009

REPRESENTACIÓN COMPACTA DE DIRECCIONES IPV6 [19]

Las direcciones IPv6 tienen 128 bits de largo. Este número de bits genera números decimales muy altos con hasta 38 dígitos:

2^128-1: 340282366920938463463374607431768211455

Estos números no son realmente direcciones que puedan ser memorizadas. Además el esquema de direcciones IPv6 está orientado a bits (al igual que IPv4, pero eso a veces no es reconocido). Por tanto una mejor notación para números tan altos es la hexadecimal.

En hexadecimal, 4 bits (también conocidos por "nibble") son representados usando dígitos 0-9 o letras a-f (10-15). Este formato reduce la longitud de las direcciones IPv6 a 32 caracteres.

2^128-1: 0xffffffffffffffffffffffffffffffff

Esta representación todavía no es muy conveniente (posible mezcla o pérdida de dígitos hexadecimales), así que los diseñadores de IPv6 decidieron un formato hexadecimal con un dos puntos como separador después de cada bloque de 16 bits. Además se saca el "0x" del comienzo, "0x" es el texto que se usa en los lenguajes de programación para indicar que el número a continuación se encuentra en base hexadecimal:

2^128-1: ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff

Una dirección utilizable es por ejemplo:

2001:0db8:0100:f101:0210:a4ff:fee3:9566

Para simplificar, se pueden omitir los 0 a la izquierda de cada bloque de 16 bits:

2001:0db8:0100:f101:0210:a4ff:fee3:9566
2001:db8:100:f101:210:a4ff:fee3:9566

Una secuencia de bloques de 16 bits conteniendo sólo ceros puede reemplazarse con "::". Pero no más de una vez en la dirección, porque dejaría de ser una representación única.

2001:0db8:100:f101:0:0:0:1 -> 2001:db8:100:f101::1

La reducción más grande se ve en la dirección de localhost1) de IPv6:

0000:0000:0000:0000:0000:0000:0000:0001 -> ::1

[4]Ejemplo:
FEDC: BA98: 7654:3210: FEDC: BA98: 7654:3210 (39 caracteres)
1080:0:0:0:8:800:200 C: 417A (25 caracteres)
En el segundo, la forma "::" permite indicar múltiples grupos de ceros comprimidos, y podra ser representado asi :
1080:: 8:800:200 C: 417A

No hay comentarios:

Publicar un comentario