2009-06-05 10 views

risposta

11

Sono le variazioni di velocità che desideri testare? O l'accesso a ciascuna tecnologia?

Se è veloce, è possibile utilizzare il seguente trucco ipfw, courtesty di Craig Hockenberry di Icon Factory, per utilizzare ipfw per limitare la connettività a un determinato dominio. In questo esempio, è Twitter e limita la velocità di tutte le connessioni da e verso l'host.

È uno script di bash, se stai facendo dev di iPhone sarai su un mac quindi basta crearlo ed eseguirlo nel terminale.

#!/bin/bash 

# configuration 
host="twitter.com" 

# usage 
if [ "$*" == "" ]; then 
    echo "usage: $0 [off|fast|medium|slow]" 
    exit 
fi 

# remove any previous firewall rules 
sudo ipfw list 10 > /dev/null 2>&1 
if [ $? -eq 0 ]; then 
    sudo ipfw delete 10 > /dev/null 2>&1 
fi 
sudo ipfw list 11 > /dev/null 2>&1 
if [ $? -eq 0 ]; then 
    sudo ipfw delete 11 > /dev/null 2>&1 
fi 

# process the command line option 
if [ "$1" == "off" ]; then 
    # add rules to deny any connections to configured host 
    sudo ipfw add 10 deny tcp from $host to me 
    sudo ipfw add 11 deny tcp from me to $host 
else 
    # create a pipe with limited bandwidth 
    bandwidth="100Kbit" 
    if [ "$1" == "fast" ]; then 
     bandwidth="300Kbit" 
    elif [ "$1" == "slow" ]; then 
     bandwidth="10Kbit" 
    fi 
    sudo ipfw pipe 1 config bw $bandwidth 

    # add rules to use bandwidth limited pipe 
    sudo ipfw add 10 pipe 1 tcp from $host to me 
    sudo ipfw add 11 pipe 1 tcp from me to $host 
fi 
+0

Qualcuno ha questo lavoro su Snow Leopard? –

0

È possibile verificare alcuna rete ruotando l'aeroporto fuori :-)

Per un controllo più fine, ipfw suggerimento di Neil è il modo migliore.

4

Si potrebbe dare un'occhiata a SpeedLimit, un riquadro di preferenze per OS X che consente di limitare la larghezza di banda e controllare la latenza.

1

Se si dispone del tethering di iPhone, è possibile disattivare la connessione via modem/ASDL e instradare Internet tramite iPhone. Questo metodo funziona molto bene se il tuo operatore è AT & T. Se non hai AT & T come gestore telefonico, dovrai provare uno degli altri metodi per simulare una connessione scadente.

Un'altra soluzione lo-fi è quella di avvolgere il router wireless di casa in carta stagnola o di metterlo in una scatola di metallo. Quello che vuoi simulare generalmente è una connessione schifosa, non una connessione lenta. Le regole del firewall rallenteranno la connessione, ma non perderanno i pacchetti casuali.

Dal momento che su un Mac, è possibile utilizzare Dummynet. Questo si collega a ipfw, ma può anche simulare la perdita di pacchetti. Ecco un tipico ipfw con il modulo Dummynet:

ipfw add 400 prob 0.05 deny sr-ip 10.0.0.0/8 
+0

Ho dovuto modificare un po 'questo per SnowLeopard: ipfw aggiungere 400 prob 0.05 drop ip da any a $ 2 – pendor