EmuLabZip logo EmuLabZip

Condiciones de red

Actualizado el · Editar esta página en GitHub

Prueba cómo se las arregla una app con una red lenta, con latencia, con pérdidas o inexistente. El proxy está en medio de todo lo que envía el dispositivo, así que puede dar forma al enlace.

El menú de condiciones de red en Network, con Slow 3G elegido

En Network, el botón Network elige un preset o números propios, y el cambio se aplica de inmediato, también a las conexiones que ya están abiertas. Una insignia muestra lo que está en vigor.

PresetDescargaSubidaRetrasoOtros
Fast 3G1.440 kb/s675 kb/s150 ms
Slow 3G500 kb/s500 kb/s400 ms
Slow Wi-Fi2.000 kb/s1.000 kb/s80 ms
High latencysin límitesin límite600 ms
Packet losssin límitesin límiteningunoel 5 % del tráfico se detiene
Offlinesin conexión
emulabzip net --conditions slow-3g
emulabzip net --down 400 --latency 100          # numbers of your own, or on top of a preset
emulabzip net --conditions offline

--down y --up están en kilobits por segundo, --latency en milisegundos y --loss en porcentaje.

Qué hace cada uno#

  • Speed limita la velocidad a la que van los bytes en cada sentido, en pasos uniformes.
  • Delay se añade a lo que recibe el dispositivo, una vez por cada ráfaga de datos que sigue a una pausa. Representa el tiempo de ida y vuelta.
  • Loss no puede perder paquetes: el propio TCP del dispositivo hace la retransmisión. Detiene de vez en cuando una ráfaga de datos durante alrededor de un timeout de retransmisión, con una probabilidad que crece con el tamaño de la ráfaga, que es lo que siente una app.
  • Offline rechaza las conexiones nuevas y corta las abiertas la próxima vez que muevan un byte, así que las apps ven un error de red. Elegir No limits lo devuelve todo.

Se aplica a todo lo que pasa por el proxy: las peticiones que se descifran y las conexiones que pasan sin cambios. HTTP/3 habla QUIC sobre UDP, que no pasa por este enlace: con HTTP/3 activado, desactívalo para ver una app ralentizada.

Las condiciones se mantienen cuando el proxy se detiene y se vuelve a iniciar, y se olvidan cuando se cierra la app.