Fundamentos de IPv4

Introducción

Los protocolos TCP (Transmission Control Protocol) e IP (Internet Protocol) tuvieron su origen en los trabajos de la Agencia de Investigación de Proyectos Avanzados de Defensa (DARPA, por sus siglas en inglés) del Departamento de Defensa (DoD) de los Estados Unidos. Los objetivos de estas investigaciones se centraron en dos áreas:

  • Construir una red descentralizada que ofreciera múltiples alternativas al envío de mensajes entre dos puntos geográficos.
  • Lograr la división del mensaje completo en fragmentos pequeños de tamaño definido que seguirían distintos caminos, pretendiendo que la misma red estuviera en posibilidad de responder a sus propios fallos.

A finales de la década de los sesenta, DARPA patrocinó el proyecto conocido como ARPANET, cuyo propósito fue crear una red encargada de proveer conectividad de gran ancho de banda entre los mayores sitios computacionales de los ámbitos gubernamental, educacional y de investigación.

ARPANET ofrecía a sus usuarios la posibilidad de transferir correo electrónico y datos de un sitio a otro. DARPA comenzó a desarrollar un esquema jerárquico común a las tecnologías de red para la transmisión de información, obteniendo como resultado la suite de protocolos TCP/IP que alcanzó enorme popularidad al ser implementado en Unix BSD.

A inicios de la década de los ochenta, las computadoras conectadas a la ARPANET utilizaban los protocolos TCP/IP, a la par sitios que no se conectaban a ella comenzaron a hacerlo.

La red ARPANET dejó de ser la base de protocolos en 1990. A pesar de esta situación, las inclusiones de nuevos nodos permitieron el crecimiento y la evolución del proyecto original al escenario que hoy conocemos como “Internet”.

 

Modelo TCP/IP

El modelo estándar para diseñar una arquitectura de red es el modelo OSI (Open Systems Interconnection), prototipo que consiste de siete capas:

  1. Capa física
  2. Enlace de datos
  3. Red
  4. Transporte
  5. Sesión
  6. Presentación
  7. Aplicación

 

Por su lado, el modelo TCP/IP es un prototipo híbrido derivado del OSI. El TCP/IP combina las tres capas superiores (Aplicación, Presentación y Sesión) del OSI en una capa (Aplicación), así mismo mantiene la capa cuatro (Transporte), combina las capas tres y dos (Red y Enlace de Datos) en una sola a la que llama Internet y mantiene la capa Física.

 

Protocolo de Internet (IP)

El Protocolo de Internet es un protocolo de capa de red (Capa 3) diseñado en 1981 para usarse en sistemas interconectados de redes de comunicación computacional de conmutación de paquetes. El Protocolo de Internet y el Protocolo de Control de Transmisión (TCP, Transmission Control Protocol) son la base de los protocolos de Internet. El IP tiene dos funciones principales:

- Entrega de datagramas a través de la interred en la modalidad de mejor esfuerzo

- Fragmentación y reensamblado de datagramas

Se considera al IP un protocolo de “mejor esfuerzo”, ya que no garantiza que un paquete transmitido realmente llegue al destino ni que los datagramas transmitidos sean recibidos en el orden en que fueron enviados.

La función principal de IP es llevar paquetes de datos de un nodo fuente a un nodo destino. Este proceso se logra identificando cada paquete enviado con una dirección numérica llamada dirección IP.

El protocolo IP no tiene mecanismos de confiabilidad (RFC 791) a diferencia de los demás protocolos. En vez de tener dichos medios, este protocolo no hace uso de ellos para que sean implementados por protocolos de capa superior. El único mecanismo de detección de errores es la suma de verificación para el encabezado IP. Si el procedimiento de la suma de verificación falla, el datagrama será descartado y con ello no será entregado a un protocolo de nivel superior.

 

Direccionamiento IP

El esquema de direccionamiento IP es integral al proceso de enrutamiento de datagramas IP a través de la interred. Cada dirección IP tiene componentes específicos y un definido formato básico.

Existen dos estándares de direccionamiento IP: la versión 4 (IPv4) y la versión 6 (IPv6). Actualmente la mayoría del tráfico IP es realizado con direccionamiento IPv4, y aunque se pretende que IPv6 reemplace a IPv4 en un futuro, ambos protocolos coexistirán durante algún tiempo.

 

Formato de Dirección IP versión 4

En una red TCP/IP a cada computadora se le asigna una dirección lógica de 32-bits que se divide en dos partes: el número de red y el número de computadora. Los 32 bits son divididos en 4 grupos de 8 bits, separados por puntos, y son representados en formato decimal.

Cada bit en el octeto tiene un peso binario. El valor mínimo para un octeto es 0 y el valor máximo es 255. La siguiente figura muestra el formato básico de una dirección IP con sus 32 bits agrupados en 4 octetos.

Formato de dirección IP versión 4

 

 

CIDR (Classless Inter-Domain Routing - Enrutamiento entre dominios sin clases)

CIDR se introdujo en 1993 por la IETF (ver RFCs 1517 y 1518) y representa la última mejora en el modo como se interpretan las direcciones IP. Su introducción permite una mayor flexibilidad al dividir rangos de direcciones IP en redes separadas. De esta manera permite:

  • Un uso mas eficiente de las direcciones IPv4, al especificar prefijos de red de longitud variable.
  • Un mayor uso de la jerarquía de direcciones ('agregación de prefijos de red'), disminuyendo la carga de los ruteadores principales de Internet.

CIDR reemplaza la sintaxis previa para nombrar direcciones IP, llamada clases de redes. En vez de asignar bloques de direcciones en los limites de los octetos, que implican prefijos "naturales" de 8, 16 y 24 bits, CIDR utiliza la técnica VLSM (Variable-Length Subnet Mask - Mascara de Subred de Longitud Variable), para hacer posible la asignación de prefijos de longitud arbitraria.

 

Bloques CIDR

CIDR es un estándar de red para  la interpretación de direcciones IP. CIDR facilita el enrutamiento al permitir agrupar bloques de direcciones en una sola entrada de tabla de rutas. Estos grupos, llamados comunmente Bloques CIDR, comparten una misma secuencia inicial de bits en la representación binaria de sus direcciones IP.

Los bloques CIDR IPv4 se indentifican utilizando cuatro números decimales separados por puntos, seguidos de una barra diagonal y un número de 0 a 32. Los números corresponden a la dirección inicial del bloque que es descrito por la notación CIDR mas la máscara correspondiente, que corresponde a la cantidad de bits comunes para las direcciones agrupadas en el bloque.

Una direccion IP "corresponde" o "está incluida" en un bloque CIDR si sus primeros N bits son iguales a los del prefijo dado, por lo que para entender cabalmente la notacion de CIDR es necesario visualizar las direcciones IP en binario.

Cabe hacer notar que los prefijos "cortos" (cercanos a cero) incluyen mas direcciones que los prefijos "largos" (cercanos a 32). Esta misma característica permite que una misma direccion IP esté incluida en prefijos de distinta longitud, lo cual es aprovechado para hacer agregación de prefijos de red y simplificar la cantidad de entradas en las tablas de ruteo.