Unicast: conexión dirigida entre dos puntos

En la tecnología de redes encontramos diferentes métodos para enviar un mensaje desde un emisor hasta uno o varios receptores. En una difusión amplia o broadcast, los datos son enviados a todos los destinatarios de una red, pero en el caso de la unicast, los destinatarios se identifican individualmente. Multicast funciona de forma parecida, aunque en este caso el mensaje se envía a varios destinatarios específicos. ¿Qué es exactamente unicast y en qué se diferencia de multicast?

¿Qué es unicast?

Cuando llamamos por teléfono, tenemos que marcar un código numérico para hablar con una persona determinada. Seguro que nunca se te ha pasado por la cabeza decir el nombre del destinatario por el auricular esperando que te responda. Este es uno de los factores que distinguen a una unidifusión o unicast de una difusión amplia o broadcast, en la que todos los miembros de una red reciben el mensaje.

Una unicast, también denominada difusión única, es un tipo de transmisión en la que el envío se produce desde un único emisor a un único receptor, sin importar si tiene lugar en ambas direcciones. Es decir, resulta irrelevante si el receptor se convierte también en emisor y los datos se envían de ida y vuelta (bidireccionalmente), o si se trata de un envío unidireccional. En todos aquellos casos en los que exista un intercambio de información entre solo dos usuarios de la red hablamos de unicast.

La mayor parte del tráfico en Internet funciona por unicast. Cuando un usuario quiere acceder a una página web, se produce una conexión directa entre el cliente y el servidor. El envío de correos electrónicos, en términos generales, también funciona mediante unicast. Otro ejemplo lo encontramos en la transferencia directa de archivos: cuando descargas o cargas un archivo en un servidor, estás utilizando unicast. Solo en ciertos casos, como, por ejemplo, el streaming, se utilizan otros métodos como multicast.

Funcionamiento técnico: IPv4, IPv6 y unicast

En cualquier tipo de comunicación, cuando quiere contactarse con una persona determinada, hay que saber cómo contactarla. El nombre, el número de teléfono, la dirección postal, etc., son datos que nos ayudan a enviar nuestra información al destinatario correcto. En la tecnología de redes pasa exactamente lo mismo. En este caso, son las direcciones IP y MAC las que nos ayudan a identificar a los destinatarios.

Unicast funciona en la capa de red (capa 3) del modelo OSI, de modo que es un esquema de enrutamiento. A la información que se envía (un correo electrónico, un archivo o una petición de una página web) se le añade un encabezado en el que se incluyen los datos de la dirección. Por ahora, vemos que se trata de un proceso bastante simple: el encabezado contiene la dirección del destinatario en la red y es a esta dirección a la que se enviará el paquete.

Sin embargo, la comunicación no siempre se produce dentro de una red cerrada en la que el router puede llegar directamente hasta cada terminal concreto, de modo que unicast puede darse también entre diferentes redes o subredes. Para ello, se utiliza la tecnología de enrutamiento IP, que garantiza que cada nodo sepa qué ruta debe seguir el paquete de datos para llegar al destinatario correcto. Los routers (los nodos en una red) utilizan para ello tablas de enrutamiento. Para definirlas, se aplican concretamente los protocolos OSPF y RIPv2.

A diferencia de las direcciones IPv4 habituales hasta ahora, el nuevo protocolo IPv6 ha previsto una particularidad para unicast: ciertos rangos de direcciones se reservan para los distintos tipos de comunicación. Las direcciones multicast pertenecen a un rango diferente al de las direcciones de unicast. También dentro de las direcciones unicast hay diferentes tipos, que se representan mediante un prefijo situado al comienzo de la dirección.

Link-Local Unicast

Link-local designa a redes locales cerradas. Aquí los paquetes no necesitan reenviarse con el router a otras redes. Se les ha reservado el rango FE80::/10. Los diez primeros bits de la dirección indican el prefijo. Luego siguen 64 bits que están a 0. La dirección se completa con 54 bits y contiene el ID de la interfaz que identifica de forma exclusiva al cliente de la red local.

Hecho

También en el caso de IPv4 encontramos un rango de direcciones reservado para las direcciones unicast de enlace-local: 169.254.0.0/16.

Unique local unicast

A diferencia de una dirección enlace-local, una dirección unicast local-única puede reenviarse a través de un router. No obstante, estas direcciones se asignan internamente una sola vez (en un área de red definida como, por ejemplo, la red de una gran empresa). El Grupo de Trabajo de Ingeniería de Internet (IETF, de Internet Engineering Task Force) había designado el rango fc00::/7 para ellas. Sin embargo, actualmente solo el bloque fd00::/8 está definido concretamente para estas direcciones. El bloque fc00::/8 no ha sido definido aún. Al prefijo se le añade una cadena aleatoria de 40 bits que contiene el ID del sitio. Al final, encontramos el ID de subred de 16 bits.

Hecho

El rango de direcciones de una unicast local-única se corresponde en sus propiedades con el rango privado de direcciones de IPv4. Se trata, así, de direcciones que los usuarios pueden asignar dentro de su red sin necesitar el permiso de ninguna organización externa.

Global unicast

Mediante el unicast global también se utiliza IPv6 para realizar envíos de unicast a todo el mundo a través de Internet. Las direcciones se asignan globalmente una sola vez, por lo que es posible conectar con destinatarios concretos. Por lo general, este es el caso estándar de una dirección IPv6. La primera parte de la dirección se denomina prefijo de sitio o topología pública en función del proveedor de Internet. Seguidamente aparece información sobre la subred y el cliente. Como ocurre con la división en subredes, la última parte de la dirección (ID de interfaz) puede asignarse una sola vez dentro de la subred. Esta es la única manera de garantizar que un unicast alcance con seguridad el destinado correcto.

Hecho

Una parte del espacio de las direcciones unicast global (0:0:0:0:0:ffff::/96) está reservado para convertir IPv4 en IPv6 (IPv4 mapped IPv6 addresses). En este caso, los últimos 32 bits de la dirección IPv6 contienen la información del formato anterior. Esto es lo que hace posible llegar a un unicast a través del nuevo protocolo en el sistema antiguo.

Unicast vs. multicast

Como tipos de comunicación, unicast y multicast comparten claras similitudes, sobre todo al ser comparados con la difusión amplia o broadcast. En una difusión amplia, el envío se realiza a una dirección reservada. Todos los usuarios de la red reconocen el paquete de datos y pueden responder ante el mismo. En el caso de unicast y multicast, en cambio, los envíos están dirigidos a usuarios específicos y el resto de usuarios de la red no pueden reconocer ni responder a los datos.

La diferencia entre unicast y multicast reside, obviamente, en el hecho de que en la unicast los envíos se realizan a un único receptor, mientras que en el caso de multicast se dirigen a un grupo de destinatarios. No obstante, multicast no es simplemente un conjunto de unidifusiones individuales, sino que utiliza una dirección de multidifusión. Los paquetes que se envían a esa dirección se dirigen a través de un router o servidor a todos los miembros del grupo de multidifusión. Dicho grupo ha de haber sido establecido antes del envío de la información, ya que no puede ser definido por el nodo de origen en el momento del envío.

La ventaja de multicast en comparación con el unicast múltiple, es decir, con una transferencia a varias direcciones de unicast, es que el paquete de datos se envía en una única entrega. Cuando se hace con varias direcciones únicas, el paquete se ha enviar a la red en cada ocasión, mientras que una multicast lo envía una sola vez y es el distribuidor el que realiza las copias, lo que ahorra ancho de banda. Por esta razón, multicast es especialmente popular en ámbito del streaming: como un gran grupo de clientes necesita recibir los mismos datos, resulta mucho más práctico enviarlos de una sola vez. Si estos se enviaran al mismo tiempo a muchos destinatarios a través de unicast, la velocidad se vería claramente afectada.

En resumen

Si se están enviando datos confidenciales que deben llegar a un solo destinatario, unicast es la elección correcta y la que utilizamos diariamente cuando visitamos una página web o enviamos correos electrónicos. En cambio, si existen varios destinatarios que van a recibir los mismos datos, utilizar multicast es más eficiente.