En un mundo cada vez más conectado, las redes inalámbricas son fundamentales para nuestra vida diaria. Desde navegar en internet hasta compartir archivos, confiamos en estas redes para mantenernos comunicados. Sin embargo, no están exentas de desafíos técnicos que pueden afectar su eficiencia y desempeño.
Uno de los problemas más comunes se llama Problema de Nodo Oculto, llamado en inglés, Hidden Node.
Esto ocurre cuando dos nodos que no pueden detectarse entre sí, intentan enviar datos simultáneamente a un tercer nodo.
Para entenderlo mejor, imaginemos una situación donde tres nodos están conectados en la misma red. Llamemos a estos nodos “A”, “B” y “C”.
El nodo “A” puede comunicarse directamente con el nodo “B”, pero no puede detectar a “C”.
A su vez, el nodo “C” puede comunicarse con “B”, pero tampoco detecta las transmisiones de “A”.
Cuando A y C intentan enviar información al mismo tiempo al nodo B, no pueden detectarse o “escucharse” entre sí para saber cuánto esperar hasta que el otro termine de transmitir.
El nodo B no puede atender a A y C simultáneamente, por lo que una de las dos comunicaciones se pierde y el nodo ‘no escuchado’ se ve obligado a retransmitir su información hasta que B esté disponible para recibirla.
A medida que crecen las redes y se vuelven más densas, este problema se hace más complejo y frecuente, reduciendo significativamente la eficiencia de la comunicación.
Si bien existen posibles soluciones para mitigar este problema, no hay implementaciones efectivas y eficientes de código abierto.
Una de ellas es el uso del mecanismo RTS/CTS, que por sus siglas en inglés, significa Solicitud para enviar y Autorización para enviar.
La primera acción se da cuando un nodo envía primero una solicitud para hablar al nodo destino.
Si el nodo destino está disponible, responde con un permiso para enviar la comunicación.
Solo después de recibir este permiso, el nodo puede enviar sus datos. Esto reduce las colisiones, ya que los nodos verifican si el canal está libre antes de transmitir, aunque al mismo tiempo añade pasos adicionales a la comunicación, ralentizando el proceso.
Otra alternativa es el uso de TDMA, Acceso Múltiple por División de Tiempo por sus siglas en inglés.
Para que este mecanismo funcione es indispensable contar con una manera de sincronizar los equipos de la red de manera muy precisa. Luego los nodos se coordinan y a cada uno se le asigna un lapso de tiempo en el que puede puede hablar.
Este enfoque elimina las colisiones y mejora la eficiencia en redes con alta demanda. El desafío de la sincronización es relativamente simple en sistemas centralizados pero en sistemas distribuidos se torna muy compleja y actualmente no se conocen implementaciones funcionales de código abierto de esta tecnología.
En AlterMundi nos apasiona enfrentar desafíos creando soluciones innovadoras para conexiones más eficientes y accesibles en comunidades de todo el mundo. Creemos que una comunicación robusta es esencial para construir un futuro más conectado y colaborativo.