11 votos

¿Cómo puedo simular la pérdida de paquetes en un dispositivo Android?

Me gustaría simular la pérdida de paquetes en un dispositivo Android rooteado para ver cómo los diferentes niveles afectan a la calidad del streaming de vídeo. He intentado netem y iptables, sin éxito:

netem :

# tc qdisc change dev rmnet0 root netem loss 0.1%
tc qdisc change dev rmnet0 root netem loss 0.1%
Android does not support qdisc 'netem'
Garbage instead of arguments "loss ...". Try "tc qdisc help".

¿Está mal el formato o es posible añadir soporte para netem de alguna manera?

iptables :

# iptables -A INPUT -m statistic --mode random --probability 0.01 -j DROP
iptables -A INPUT -m statistic --mode random --probability 0.01 -j DROP
iptables v1.3.7: Couldn't find match `statistic'

Try `iptables -h' or 'iptables --help' for more information.

¿Hay alguna otra alternativa en Android?

2voto

Booger Puntos 288

Es posible ajustar la latencia y la velocidad de la red mediante las funciones de control del emulador de las herramientas estándar de Android Developer.

Si utiliza eclipse: Seleccione Ventana \Open Perspectiva \DDMS En la pantalla verás una pestaña llamada "Control del emulador". En esta pestaña encontrarás las opciones de Velocidad y Latencia. Los "Ajustes de telefonía" en la parte superior tienen selecciones de velocidad y latencia.

Hay otras formas de modificar estos ajustes (incluyendo la creación de scripts en la configuración del emulador), pero esta es la forma más sencilla de acceder a los ajustes.

2voto

Jim McKeeth Puntos 183

Como tu dispositivo está rooteado puedes instalar un Proxy. Yo he utilizado TransparentProxy . A continuación, configure un proxy en otra máquina de su red local. Apunte TransparentProxy a ese proxy y luego configure su Proxy para acelerar. Algunos proxies que pueden funcionar son CharlesProxy o Captura de servicios .

Si eso no funciona, entonces puedes atacarlo desde el nivel del router. Una máquina que ejecute BSD o Linux puede funcionar como un router. O puedes conseguir un Dispositivo virtual o un CD de arranque para hacerlo por ti.

0voto

Shawn Puntos 133

Yo haría referencia a este hilo: https://serverfault.com/questions/201588/configuring-a-router-to-drop-packets-introduce-latency-corrupt-data

No parece haber ninguna razón para que iptables no funcione.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X