Marco de pruebas silenciosas

El objetivo de este documento es proporcionar a los equipos técnicos que administran las plataformas de difusión web corporativa instrucciones sobre cómo usar la herramienta de pruebas silenciosas de Microsoft eCDN para auditar sus redes corporativas en preparación para eventos reales.

El marco de pruebas silenciosas de Microsoft eCDN permite que las simulaciones se ejecuten en varios dispositivos fácilmente con el fin de emular y examinar cómo se comporta una red determinada bajo la carga de un evento de vídeo.

Una prueba silenciosa es una sesión de vídeo real que se ejecuta en segundo plano (silenciado) en un dispositivo del usuario final. El usuario puede seguir trabajando en su equipo sin saber que la prueba se está ejecutando, aunque podría producirse una ralentización en la conectividad de red correspondiente al ancho de banda del vídeo.

El marco consta de tres componentes principales:

  • Dispositivos de ejecución
  • Panel de administración
  • Análisis

Estos componentes se explican uno a uno en las secciones siguientes.

Dispositivos de ejecución

Cada dispositivo que se conecta al marco se considera un "ejecutor". Cada ejecutor simula un único visor y se comunica con el back-end de Microsoft eCDN para obtener instrucciones sobre qué prueba se debe ejecutar. La mayoría de las veces no se ejecuta ninguna prueba, en cuyo caso el ejecutor espera inactiva hasta que se inicia una prueba. En lugar de implementar una aplicación de agente designada en todos los equipos para que actúe como ejecutor, Microsoft eCDN aprovecha el software existente que suele instalarse en máquinas de usuario final para iniciar ejecutores en segundo plano.

Dado que el ejecutor es básicamente una página web, se puede abrir en cualquier explorador o entorno similar a un explorador. Hay dos maneras de crear instancias de un ejecutor.

Importante

Microsoft Edge o Google Chrome deben estar instalados en el equipo del usuario final. Además, el dispositivo debe estar encendido y conectado a Internet para participar en pruebas silenciosas.

Ejecutor directo

Abrir manualmente la página del ejecutor con la siguiente dirección URL, teniendo cuidado de reemplazar el marcador de posición TENANT_ID_HERE por el identificador de su inquilino en un explorador, se considera un "ejecutor directo".

https://st-sdk.ecdn.teams.microsoft.com/?customerId=TENANT_ID_HERE&adapterId=Direct

Precaución

Mientras que un ejecutor silencioso se instancia con los argumentos necesarios para exponer la dirección IP de la máquina al servicio Microsoft eCDN, un ejecutor directo usa la configuración global de la máquina. Por lo tanto, si aún no ha deshabilitado la ofuscación de IP de mDNS, es poco probable que direct Runner se interrelacione.

Ejecutor silencioso

Proporcionamos scripts de PowerShell & Bash que inician un explorador Chromium sin cabeza en segundo plano con la página del ejecutor, que se considera un "ejecutor silencioso". A continuación, el script se puede ejecutar en un grupo de usuarios para conectarlos al marco.

Para obtener más información, vea Apéndice B: Integración de ejecutores mediante un explorador sin cabeza

Panel de administración

El panel de administración permite programar, modificar y cancelar las pruebas, y también muestra el número de ejecutores conectados. En la ventana principal se enumeran las pruebas pendientes, las pruebas en curso y las pruebas pasadas que ya han finalizado. Las pruebas completadas se muestran durante 24 horas y, a continuación, se ocultan de la lista.

Imagen de la interfaz de usuario del panel de administración de pruebas silenciosas.

Importante

El número de dispositivos o "clientes asignados" que ejecutan una prueba programada depende del número de ejecutores en línea en el momento del inicio programado de la prueba, no en el momento de su programación.

Análisis

Cuando se programa una prueba, se establece en modo "pendiente". Una vez alcanzada la hora de inicio, se activa la prueba y se envía una señal de activación a todos los ejecutores en línea. A continuación, cada ejecutor inicia la página de destino y el vídeo (silenciado) comienza a reproducirse en la ventana oculta. El SDK de Microsoft eCDN recopila métricas de red y experiencia de usuario que se presentan en varios gráficos y gráficos disponibles en el panel de Análisis. Los análisis se notifican mientras se ejecuta la prueba para que los administradores puedan comprobar el estado incluso antes de que finalice la prueba.

Concurrencia

Gráfico de ejemplo titulado Visores únicos. Con el tiempo, el gráfico muestra dos series, el emparejamiento habilitado y los visores deshabilitados de emparejamiento en azul y gris, respectivamente.

El gráfico de simultaneidad muestra el número de usuarios activos a lo largo del tiempo. Para que se considere activo, un usuario debe estar reproduciendo vídeo.

Velocidad HTTP + P2P

Gráfico de ejemplo titulado Rendimiento de red. Con el tiempo, el gráfico de barras muestra tres series, datos HTTP consumidos, datos P2P consumidos y porcentaje de ración P2P en azul oscuro, naranja y línea verde con puntos, respectivamente.

El gráfico de rendimiento de red muestra un desglose del consumo de red en HTTP y P2P.

Representado como Descripción Axis
Barras azules oscuras Ancho de banda HTTP left
Barras naranjas Ancho de banda P2P left
Línea de puntos verde Proporción de P2P del total como porcentaje Correcto

Por ejemplo, una proporción P2P del 90 % significa que solo el 10 % del tráfico se descargó a través de HTTP y el resto se emparejaron entre los usuarios.

Si P2P es menor de lo esperado, significa que la simultaneidad del usuario no era lo suficientemente alta o que la red requiere más optimización. Para solucionar problemas, consulte la documentación Solución de problemas de baja eficacia de emparejamiento .

Experiencia del usuario

Gráfico de ejemplo titulado Play and Rebuffer Time (Tiempo de reproducción y rebuffer). Gráfico con el tiempo que muestra tres series, Played, Rebuffer y Rebuffer Ratio en línea de puntos verde oscuro, rojo y azul respectivamente.

El gráfico de experiencia del usuario muestra el tiempo combinado dedicado a la reproducción frente al tiempo invertido en el almacenamiento en búfer (vídeo inmovilizado).

Representado como Descripción Axis
Barras verdes Tiempo agregado dedicado a jugar en minutos left
Barras rojas Tiempo combinado dedicado al almacenamiento en búfer en minutos left
Línea de puntos azul Proporción de rebuffering fuera del tiempo total como porcentaje Correcto

Por ejemplo, una proporción de rebuffering del 2 % significa que el vídeo se estaba reproduciendo correctamente durante el 98 % del tiempo, mientras que durante el 2 % del tiempo el vídeo se bloqueó.

El almacenamiento en búfer debería ser idealmente inferior al 1 %. Los números altos o los picos en el almacenamiento en búfer pueden sugerir congestión de red, sobrecarga del servidor o contenido mal configurado.

Requisitos de red

El marco de pruebas silenciosas usa los siguientes dominios y puertos:

Nombre de host Puertos Protocolo Descripción
*.ecdn.teams.microsoft.com 443 HTTPS Página ejecutor & recursos
*.ecdn.teams.microsoft.com 443 WSS Conexión de WebSocket al back-end de Microsoft eCDN
cualquiera Puertos altos 10 000 + SCTP Esto es necesario para las conexiones del mismo nivel de WebRTC. Solo se puede limitar a LAN. 

Seguridad

El marco de pruebas silenciosas funciona mediante la asignación de pruebas a los ejecutores. Aunque el ejecutor es una página estática que se conecta al back-end de Microsoft eCDN, una prueba ejecutada es dinámica y puede ejecutar cualquier página de destino. Por ese motivo, los ejecutores se ejecutan dentro de una página web que está en espacio aislado por el explorador y se basa en mecanismos de seguridad integrados en exploradores modernos. Independientemente de la integración (excepto las integraciones personalizadas), la página de destino siempre se ejecuta en un contexto seguro y limpio mediante un iframe.

El explorador también restringe los permisos de red y se limitan a las API web comunes, como HTTP, WebSocket, WebRTC, etc.

Mientras esperan a que se ejecuten las pruebas, los ejecutores mantienen una conexión webSocket persistente a través de una conexión TLS segura (WSS).

Apéndice

Apéndice A: Programación de una prueba silenciosa

  1. Vaya al panel de pruebas silenciosas.

  2. Seleccione el símbolo +

    Interfaz de usuario del evaluador silencioso

  3. Rellene los campos necesarios.

    Imagen de la interfaz de usuario de opciones de prueba silenciosa.

    • Nombre : nombre arbitrario de su elección.

    • Hora & fecha : hora específica a la que comienza la prueba.

    • Duración : duración de la prueba. Se recomienda al menos 20 minutos para permitir una simulación adecuada.

    • Dirección URL de destino : dirección URL disponible públicamente de la página del evento que reproduce vídeo durante el evento simulado. Puede usar nuestra página integrada o crear la suya propia.

      • Stream integrada: Microsoft eCDN incluye una página integrada ya integrada con una secuencia en directo que incluye varias representaciones y protocolos de streaming personalizables.

      • Stream personalizados: es posible que solo quiera proporcionar una secuencia en vivo propia y usar la página autointegrada de Microsoft eCDN. El flujo debe estar disponible públicamente e incluir encabezados CORS para que los ejecutores puedan cargarlo. La secuencia se reproduce automáticamente cuando comienza la prueba.

      • Página personalizada : página personalizada propia. La página debe incluir un reproductor y una transmisión en vivo y integrarse con Microsoft eCDN. El reproductor debe empezar a reproducir el vídeo automáticamente, ya que durante la prueba no hay ninguna interacción del usuario. Algunos exploradores limitan la capacidad de reproducción automática de vídeo. Por ese motivo, se recomienda silenciar el audio, lo que facilita la limitación. Las páginas integradas se silencian de forma predeterminada.

    • Filtros de dispositivo: limite una prueba a un grupo específico de dispositivos. En algunos casos, es posible que quiera ejecutar una prueba en un subconjunto de los dispositivos conectados. Por ejemplo, para ejecutar solo una prueba en oficinas de EE. UU. o solo en dispositivos de ejecución directa.

      • Filtro de países : solo se incluyen dispositivos de determinados países o regiones (GeoIP).

      • Filtro de integración : solo incluye dispositivos conectados a través de una determinada integración.

      • Filtro de id. de dispositivo: ejecute una prueba solo en identificadores de dispositivo específicos. Este filtro se usa principalmente con fines de depuración locales.

  4. Seleccione Programar y se creará la prueba.

  5. Cuando se alcanza la hora de inicio de la prueba silenciosa, la prueba se ejecutará en los dispositivos conectados asignados.

Apéndice B: Integración de ejecutores mediante un explorador sin cabeza

Microsoft eCDN proporciona un script de evaluador silencioso sin instalación.

Este script inicia un explorador chromium en segundo plano de las máquinas de una página específica durante una duración especificada y, a continuación, cierra el proceso del explorador en segundo plano.

Además, Microsoft eCDN proporciona un script para ejecutar el evaluador silencioso en máquinas remotas enumeradas en Active Directory.

Nota:

Reiniciar una máquina no restaurará automáticamente el ejecutor y el explorador tendrá que iniciarse de nuevo con el script.

Instrucciones de ejecución para el entorno de Windows

  1. Descargar silent-tester-runner-windows.ps1 : un script de PowerShell que inicia un explorador basado en chromium (Microsoft Edge o Google Chrome si no se encuentra Edge) en segundo plano durante 24 horas.

  2. Editar silent-tester-runner-windows.ps1:

    • $TenantID: reemplace por TENANT_ID el identificador de inquilino de Microsoft.

    • $TestID: reemplace por TEST_ID una cadena de identificador única. Esta cadena se usa en la creación de archivos de registro, lo que permite a los administradores de pruebas silenciosas identificar de forma única los resultados de las pruebas.

    Importante

    Cada prueba debe tener un $TestID único. Si el script detecta que se había ejecutado anteriormente con el mismo $TestID que la instancia actual, se cerrará sin ejecutar la prueba silenciosa.

    • (Opcional) $scenarioDuration : establezca la duración del tiempo de actividad del explorador en el valor deseado en segundos. Puede ejecutar pruebas silenciosas en las máquinas de destino durante este tiempo. Como el explorador está inactivo, no hay ningún problema en aumentar este valor a varios días para permitir una mayor flexibilidad en la ejecución de pruebas. Este proceso no sobrevive a un reinicio del sistema. El valor predeterminado es 86 400 segundos (24 horas).

    • (Opcional) $customChromePath : en caso de que Microsoft Edge o Google Chrome no estén instalados en la ruta de acceso predeterminada (C:\Program Files o C:\Program Files (x86)) establezca esta variable en la ruta de acceso del ejecutable del explorador. por ejemplo: C:\Custom Path\Edge\msedge.exe

  3. Ejecute el script en las máquinas de destino mediante el método que prefiera, como una de las siguientes opciones.

    • Uso de GPO

    • Uso de SCCM

    • O manualmente desde un controlador de dominio. Para su comodidad, ofrecemos un ejemplo de script de invocación.

      1. Descargar remote-invocation.ps1 : un script de PowerShell que ejecuta silent-tester-runner-windows.ps1 en todos los equipos de Active Directory

      2. (opcional) Edite el script para limitar la consulta de Active Directory a un grupo determinado de equipos según sus necesidades. Consulte la documentación del Get-ADComputer cmdlet para obtener información sobre el filtrado avanzado.

      Nota:

      Asegúrese de que silent-tester-runner-windows.ps1 está en el mismo directorio desde el que se ejecuta el script de invocación.

      Precaución

      Para obtener los mejores resultados, ejecute el script de ejecución en un contexto de usuario. No se recomienda ejecutar el script de ejecución en la cuenta SYSTEM.

  4. Vaya al panel de pruebas silenciosas y asegúrese de que las máquinas de destino ahora aparecen como ejecutores en línea.

Ejemplo de imagen que muestra cuatro ejecutores en línea.

Instrucciones de ejecución para el entorno mac

  1. Descargar silent-tester-runner-mac.sh : un script de Bash que inicia Google Chrome en segundo plano durante 24 horas.

  2. Editar silent-tester-runner-mac.sh:

    1. ecdnCustomerId : reemplace por CUSTOMER_ID el identificador de inquilino de Microsoft.

    2. (Opcional) scenarioDuration : establezca la duración del tiempo de actividad del explorador en el valor deseado en segundos. Puede ejecutar pruebas silenciosas en las máquinas de destino durante este tiempo. Como el explorador está inactivo, no hay ningún problema en aumentar este valor a varios días para permitir una mayor flexibilidad en la ejecución de pruebas. El valor predeterminado es 86 400 segundos (24 horas).

  3. En función de la herramienta utilizada para administrar los dispositivos en el sitio, Jamf Pro, por ejemplo, hay diferentes maneras de ejecutar el script en diferentes máquinas.