videocalling
Illustration of WebRTC in video calling

WebRTC

glossary.categories.technical

Web Real-Time Communication - la tecnología que permite videollamadas basadas en navegador

¿Qué es WebRTC?

WebRTC (Web Real-Time Communication) es una tecnología gratuita y de código abierto que permite a los navegadores web y las aplicaciones móviles soportar comunicación en tiempo real a través de APIs simples. Permite que sitios web y aplicaciones capturen y transmitan audio, video y datos arbitrarios directamente entre navegadores sin requerir plugins, extensiones o servidores intermediarios.

Desarrollado por Google y estandarizado por el W3C y el IETF, WebRTC se ha convertido en la base de las videollamadas modernas basadas en navegador, haciendo posible iniciar una videollamada simplemente visitando un sitio web, sin descargas requeridas.

Cómo funciona WebRTC

WebRTC establece conexiones peer-to-peer entre navegadores, permitiendo comunicación directa sin enrutar datos a través de servidores. Esta arquitectura proporciona tres ventajas clave:

  • Menor latencia: Las conexiones directas logran latencia inferior a 250ms, esencial para conversaciones en tiempo real
  • Mejor privacidad: Los datos fluyen directamente entre participantes, no a través de servidores de terceros
  • Menores costos de servidor: La arquitectura peer-to-peer minimiza los requisitos de ancho de banda e infraestructura

Componentes principales

WebRTC consiste en tres APIs principales de JavaScript:

1. getUserMedia

Esta API otorga a las aplicaciones web acceso a la cámara y el micrófono del usuario. Cuando un sitio web solicita acceso a los medios, el navegador solicita permiso al usuario, asegurando privacidad y seguridad. Una vez concedido, getUserMedia captura flujos de audio y video que pueden mostrarse localmente o enviarse a otros pares.

2. RTCPeerConnection

Este es el corazón de WebRTC, manejando la complejidad de establecer y mantener conexiones directas entre navegadores. RTCPeerConnection gestiona:

  • Procesamiento de señales y manejo de códecs
  • Seguridad y cifrado
  • Gestión de ancho de banda y control de congestión
  • Traversal de red a través de NAT y firewalls

3. RTCDataChannel

Mientras getUserMedia y RTCPeerConnection manejan audio y video, RTCDataChannel permite la transferencia peer-to-peer de datos arbitrarios. Esto puede usarse para chat de texto, compartir archivos o cualquier otro intercambio de datos durante una llamada, usando la misma conexión de baja latencia que los flujos de medios.

Soporte de navegadores

A partir de 2025, WebRTC es soportado nativamente en todos los navegadores modernos:

  • Google Chrome (escritorio y móvil)
  • Mozilla Firefox (escritorio y móvil)
  • Apple Safari (escritorio e iOS)
  • Microsoft Edge
  • Opera

No se requieren plugins, extensiones ni instalaciones de software adicionales, haciendo de WebRTC una solución verdaderamente universal para la comunicación basada en navegador.

Casos de uso comunes

  • Videoconferencia: Herramientas como Google Meet, Zoom (versión web) y Microsoft Teams usan WebRTC para llamadas basadas en navegador
  • Compartir pantalla: Habilitando colaboración remota y presentaciones directamente en el navegador
  • Transferencia de archivos: Servicios de compartir archivos peer-to-peer usan los canales de datos de WebRTC para transferencias rápidas y seguras
  • Transmisión en vivo: Transmisión de ultra baja latencia para emisiones interactivas y gaming
  • IoT y control remoto: Habilitando control y monitoreo de dispositivos en tiempo real

Funciones de seguridad

  • Cifrado obligatorio: Todas las comunicaciones WebRTC se cifran usando DTLS y SRTP
  • Acceso basado en permisos: Los navegadores requieren consentimiento explícito del usuario antes de acceder a cámara y micrófono
  • Orígenes seguros: Las APIs de WebRTC solo funcionan en páginas HTTPS, previniendo ataques de intermediario

Limitaciones y desafíos

  • Escalabilidad: La arquitectura peer-to-peer funciona bien para 2-8 participantes pero tiene dificultades con grupos más grandes. Más allá de esto, se necesitan típicamente servidores de medios usando arquitecturas SFU o MCU
  • Complejidad del traversal de NAT: Establecer conexiones a través de firewalls y NAT requiere infraestructura adicional (servidores STUN y TURN)
  • Requisitos de ancho de banda: Múltiples conexiones simultáneas pueden consumir ancho de banda significativo, especialmente para video HD

Por qué WebRTC importa en 2025

WebRTC ha democratizado la comunicación en tiempo real haciéndola accesible a través de cualquier navegador web. Antes de WebRTC, las videollamadas requerían software especializado como Skype o plugins propietarios. Hoy, puedes iniciar una videollamada simplemente compartiendo un enlace, sin descargas, sin instalaciones, sin barreras.

Esta simplicidad ha convertido a WebRTC en el estándar de facto para las videollamadas basadas en navegador, impulsando todo desde herramientas de conferencia empresarial hasta llamadas casuales entre amigos.

Referencias