- Escrito por: Jairo Rojas Campo
- Categoría: Artículos PRO
- Publicado:
Uso de Protocolos TCP y UDP en Sistemas de Videovigilancia
En el mundo de la videovigilancia, la elección del protocolo de transmisión correcto puede marcar la diferencia en términos de velocidad e integridad de la información. En esta nota revisamos cómo los protocolos TCP y UDP desempeñan un papel crucial en la transmisión de imágenes y videos en tiempo real, y cuándo usar uno u otro.
Analizamos la conveniencia de TCP y/o de UDP teniendo en cuenta estos puntos:
- ¿Qué es el protocolo TCP?
- Características clave de TCP.
- ¿Qué es el protocolo UDP?
- Características clave de UDP.
- Impacto en la calidad del vídeo.
- Impacto en la latencia.
- Comprobación de errores.
- Aplicaciones en videovigilancia.
- Elección con base en el escenario.
- Selección de TCP/UDP en los VMS o en la cámara.
¿Qué es el protocolo TCP?
El protocolo TCP (Transmission Control Protocol), juega un papel fundamental en las comunicaciones de datos. Desarrollado en las décadas de 1970 y 1980, es uno de los protocolos más utilizados en la capa de transporte del modelo OSI (Open Systems Interconnection), y es esencial para la transmisión confiable de datos en redes de computadoras y en Internet.
Características clave de TCP
Orientado a la conexión
TCP establece una conexión entre dos dispositivos antes de que comience la transmisión de datos. Esto se conoce como "handshake de tres vías" y garantiza una comunicación confiable.
Orientado a flujo de datos
TCP garantiza que los datos se transmitan en el mismo orden en que se enviaron, lo que es crucial para aplicaciones como la transferencia de archivos y la navegación web.
Control de congestión
TCP monitorea y ajusta la velocidad de transmisión para evitar la congestión de la red y garantizar un flujo de datos estable.
Reconocimientos y retransmisiones
TCP utiliza mecanismos de reconocimiento y retransmisión para asegurarse de que los datos lleguen correctamente al destino. Si se detecta una pérdida o corrupción de datos, este solicitará una retransmisión.
Checksum o verificación
TCP utiliza un checksum para verificar la integridad de los datos. Esto ayuda a detectar errores en la transmisión y a garantizar la integridad de los datos recibidos.
¿Qué es el protocolo UDP?
El protocolo UDP (User Datagram Protocol), también desempeña un papel esencial. A diferencia del protocolo TCP, este es un protocolo de transporte que se caracteriza por su simplicidad y velocidad, opera en la capa 4 del modelo OSI. A diferencia de TCP, que es orientado a la conexión y confiable, UDP es una opción más ligera, pero con optimización de la velocidad de transferencia de datos. Su diseño se centra en la simplicidad y la eficiencia, lo que lo hace ideal para ciertos tipos de aplicaciones.
Características clave de UDP
No orientado a la conexión
A diferencia de TCP, UDP no establece una conexión previa antes de transmitir datos. Los datagramas UDP se envían sin confirmaciones ni handshakes.
Comunicación no es 100% garantizada
UDP no garantiza la entrega de datos ni la secuencia en que se reciben. Los datos pueden perderse o llegar en un orden diferente al enviado.
Prima la rapidez y la eficiencia
Debido a su simplicidad y la falta de sobrecarga en la gestión de conexiones, UDP es más rápido que TCP en términos de latencia y utilización de recursos.
Ampliamente utilizado en aplicaciones en tiempo real
UDP se utiliza en aplicaciones en las que la velocidad y la latencia son cruciales, como la transmisión de video en tiempo real, VoIP (Voz sobre IP) y videoconferencias en línea.
Impacto en la calidad del vídeo
Cuando se utiliza TCP, y como este protocolo está orientado en asegurar la entrega de paquetes de datos podemos decir que casi todas las tramas de información llegan a su destino, pero se pueden tener retrasos de paquetes, claro está son muchos otros factores que influyen como la velocidad de transmisión y ancho de banda disponible y si este está compartido o no, o si otros servicios tienen prioridad como las comunicaciones VoIP. Pero en términos generales cuando se usa este protocolo para transmisión en vivo, es posible visualizar intermitencia de los fotogramas y saltos de los objetos en movimiento dentro de la escena.
Sin embargo, en la misma escena usando UDP, se pueden apreciar roturas en la información y en algunos casos muy notorios incluso con la pérdida de información la cual ni en condiciones de lentitud o saltos se pueden apreciar, es decir se pueden presentar pérdida de fotogramas que el mismo protocolo descarta con el fin de garantizar comunicación y velocidad de entrega de paquetes.
Es por eso que en imágenes con poco movimiento en la escena como un pasillo de un colegio en horas de clase no se aprecia pérdida de información, pero en cuanto las imágenes cambian y se saturan por la cantidad de cambios cuando los estudiantes salen de clase, se pueden presentar interrupciones en la señal de video con pérdida de información, incluso una especie de efecto sombra que no es más que la deglaciación de los fotogramas por pérdida de paquetes porque el protocolo UDP está tratando de asegurar la velocidad de transmisión a costa de posible pérdida parcial de datos y también se puede dar el caso de no recibir la información, inclusive pequeñas cantidades de pérdida de paquetes y ancho de banda limitado pueden tener un impacto significativo en la calidad del video.
Impacto en la latencia
En escenarios de redes dedicadas y de tipo LAN, la latencia no varía mucho y no representa un cambio significativo utilizando TCP o UDP en sistemas de videovigilancia. La latencia promedió puede estar entre 250-300 ms por cámara, independientemente del protocolo. En teoría, el diseño utilizando UDP puede tener alguna incidencia en la falta de corrección de errores de transmisión de los formatos de vídeo más comunes, pero con muy poco efecto en el flujo de video,
Ahora bien, en entornos congestionados como redes compartidas con grandes cantidades de tráfico o escenarios en donde el ancho de banda es algo complejo, como las aplicaciones que utilizan enlaces inalámbricos de múltiples puntos de repetición, por ejemplo, implementaciones de vigilancia urbana, donde el uso de UDP puede proporcionar una transmisión de menor latencia porque optimiza la velocidad de entrega de información.
Comprobación de errores
Cuando se utiliza TCP, el dispositivo receptor envía confirmaciones después de cada transmisión, lo que garantiza que se hayan recibido todos los datos y en el orden correcto. Los paquetes que no se recibieron correctamente se retransmiten hasta que todos los datos se envíen correctamente.
Debido a que UDP no está orientado a garantizar la conexión, no se realiza ninguna verificación ni corrección de errores. El remitente no espera ni comprueba si el destinatario ha recibido todos los paquetes de un conjunto de datos, simplemente continúa enviando el siguiente conjunto. Los paquetes pueden llegar desordenados o no llegar, lo que provoca errores y no se envía ninguna notificación al dispositivo emisor para reenviar los paquetes perdidos.
Aplicaciones en videovigilancia
Para los sistemas de videovigilancia como IP, TCP y UDP, pueden funcionar de manera muy similar en redes de dedicadas,en especial en redes LAN ya que es menos probable que los flujos de video se saturen, que corrección de errores sea determinante y haya una sobrecarga asociada. Claramente son un diseño adecuado en la estimación de velocidades de transmisión y cálculo de ancho de banda requerido según el proyecto.
Sin embargo, en aplicaciones con ancho de banda restringido, como visualización remota o cámaras conectadas a través de Internet, tanto TCP y UDP tienen ventajas y desventajas particulares.
Visualización en vivo
UDP puede ser una mejor opción para obtener una visualización más fluida en donde lo más importante es que los operadores de monitoreo reciban los flujos de video y eventos de forma oportuna. Se pueden presentar fallos en el flujo de datos en red que pueden causar pérdida de fotogramas, pero los eventos producidos por analíticas generalmente contienen una menor cantidad de información que el video continuo, lo que permite al operador visualizar mejor las novedades que videos continuos sin mayor interés o relevancia.
Sin embargo, si se deben observar movimientos constantes o con alto nivel de detalle y puede permitirse un mayor tiempo entre el evento y la detección como en los bancos. Se puede preferir el uso de TCP con cierta tolerancia a los retrasos para así garantizar que todas las tramas de video se transmitan de forma segura.
Grabación
TCP, es en muchos casos, una mejor opción para reducir errores. Al grabar el flujo de video de una cámara de videovigilancia a través de una conexión con bajo ancho de banda, como una conexión por cable o DSL, es preferible usar TCP. Esto ayuda a garantizar que todos los fotogramas de vídeo se reciban y se almacenen con coherencia y orden.
Si se utiliza UDP para la grabación, se puede aumentar el riesgo de pérdida de vídeo debido a la pérdida de paquetes. Aunque en casos en donde se tienen cámaras con almacenamiento en borde y entre la cámara y el VMS y sistema de grabación se genera una pérdida de video, el sistema puede “solicitarlo” a la cámara y completar los espacios vacíos. Esta función generalmente se conoce como “Fail Over”.
A manera de resumen, en la tabla siguiente están las ventajas y desventajas en cada caso aplicado en videovigilancia:
TCP y UDP en Videovigilancia | |||
TCP | UDP | ||
Pros | Contras | Pros | Contras |
---|---|---|---|
Confiabilidad: TCP garantiza la entrega de datos en el orden correcto. Esto es esencial en sistemas de videovigilancia, donde la secuencia de imágenes es crítica para comprender los eventos en tiempo real. | Mayor Latencia: Debido a la gestión de conexiones y la confirmación de entrega, TCP introduce cierta latencia en la transmisión de datos, lo que puede afectar la visualización en tiempo real. | Baja Latencia: UDP es más rápido que TCP, lo que lo hace adecuado para aplicaciones de videovigilancia en tiempo real, como la supervisión de tráfico o la videovigilancia deportiva. | Pérdida de Datos Posible: UDP no garantiza la entrega de datos ni el orden correcto. Esto puede llevar a la pérdida ocasional de imágenes o fragmentación de secuencias en aplicaciones de alta carga. |
Reintentos y Control de Errores: TCP realiza reintentos automáticos en caso de pérdida de datos o errores en la transmisión, lo que asegura que no se pierdan imágenes clave. | |||
Control de Congestión: TCP controla la velocidad de transmisión para evitar la congestión de la red, lo que es especialmente importante en sistemas de videovigilancia con múltiples cámaras. | Mayor Consumo de Ancho de Banda: TCP utiliza más ancho de banda que UDP debido a la sobrecarga de control de flujo y retransmisiones. | Menos Sobrecarga: Al no realizar control de flujo ni retransmisiones, UDP utiliza menos ancho de banda, lo que puede ser importante en redes con limitaciones de recursos. | No Apto para Todas las Aplicaciones: UDP es adecuado para aplicaciones de videovigilancia en tiempo real donde la velocidad es crítica y la pérdida ocasional de datos es aceptable, pero no es adecuado para aplicaciones críticas de seguridad donde se requiere una transmisión confiable. |
Aplicaciones de Monitoreo Críticas: En situaciones críticas de monitoreo donde no se tolera la pérdida de datos, como en aplicaciones de seguridad pública o vigilancia de infraestructuras críticas, TCP es la elección preferida. |
Elección con base en el escenario
La elección entre TCP y UDP en sistemas de videovigilancia depende del escenario específico y los requisitos de la aplicación.
TCP para aplicaciones críticas de seguridad
En aplicaciones de seguridad crítica donde la integridad de los datos es esencial y no se tolera la pérdida de imágenes, TCP es la elección preferida.
UDP para videovigilancia en tiempo real
En aplicaciones donde la velocidad y la baja latencia son más importantes que la confiabilidad absoluta, como la supervisión de tráfico o eventos deportivos, UDP puede ser la mejor opción.
Uso combinado
En algunos sistemas de videovigilancia avanzados se utiliza una combinación de TCP y UDP. Por ejemplo, se puede utilizar UDP para la transmisión en tiempo real y TCP para la transferencia de datos de almacenamiento a largo plazo y soluciones en la nube.
Selección de TCP/UDP en los VMS o en la cámara
Generalmente las cámaras IP admiten los protocolos TCP y UDP, pero rara vez contienen un mecanismo manual para cambiar entre los dos. En cambio, el VMS determina qué protocolo se debe utilizar, en algunos casos automáticamente y en otros mediante selección manual.
Conclusión
La elección entre TCP y UDP en sistemas de videovigilancia es una elección que muchas veces pasa de forma indiferente, pero es importante y puede llegar a ser crítica y dependerá de los requisitos específicos de cada aplicación. Cada protocolo tiene sus propias ventajas y desventajas y es importante considerar factores como la confiabilidad, la latencia y el consumo de ancho de banda al tomar una decisión. La selección adecuada del protocolo garantizará un rendimiento óptimo y una transmisión de video eficiente en el entorno de videovigilancia deseado.
Jairo Rojas Campo
Ing. Electrónico de la Pontificia Universidad Javeriana, especialista en Gerencia de Proyectos, con experiencia como líder de gestión de proyectos en varias empresas reconocidas del gremio de seguridad en el país desde el 2001. Cuenta con múltiples certificaciones en seguridad electrónica en las líneas de CCTV, sistemas de alarmas de intrusión, detección de incendio, controles de acceso, plataformas de integración entre otras.
Actualmente realiza actividades orientadas a la transferencia de su conocimiento y experiencia a equipos de trabajo del sector, realiza diseño y especificación de proyectos. Apasionado por el ciclismo de ruta y ciclo montañismo.
Solo usuarios registrados pueden realizar comentarios. Inicia sesión o Regístrate.