Español  

Servidor Iperf: Diferència entre les revisions

De Guifi.net - Wiki Català

(Actualitzada informació per iperf3)
 
(Hi ha 8 revisions intermèdies sense mostrar fetes per 4 usuaris)
Línia 1: Línia 1:
 +
== Instal·lació ==
 +
 
Instal·lem el paquet:
 
Instal·lem el paquet:
 +
(Per a debian i similars. Per a altres distribucions pot variar.)
  
  apt-get install iperf
+
Versió clàssica, ja no es desenvolupa però està disponible en la majoria de distribucions
 +
  apt-get install iperf #fins a debian wheezy
 +
Versió moderna, s'ha reescrit des de zero per millorar-ne el funcionamet, permèt coses com per exemple funcionar en xarxes que estan darrera un equip que fa NAT
 +
apt-get install iperf3 #de debian jessie endavant
  
Si vull que iperf s'engegi com a l'engegar el servidor i estigui disponible per fer mesures:
 
  
- entro com a root i vaig a:
+
Si volem que el servei iperf s'inicï automàticament al iniciar el servidor, hem de crear un "script":
  
/etc/init.d
+
- (com a root) entrem al directori /etc/init.d:
  
- creo un script amb la comanda:
+
cd /etc/init.d
  
echo iperf -s -D > iperf
+
- creem un fitxer anomenat 'iperf' amb un editor de text:
  
- faig que aquest script sigui executable:
+
nano iperf
 +
 
 +
- i a l'interior hi enganxem el següent contingut (hem de reemplaçar iperf per iperf3 si fem servir aquesta versió):
 +
 
 +
#! /bin/sh
 +
# /etc/init.d/iperf
 +
#
 +
### BEGIN INIT INFO
 +
# Provides:          iperf
 +
# Required-Start:   
 +
# Required-Stop:   
 +
# Default-Start:    2 3 4 5
 +
# Default-Stop:      0 1 6
 +
# Short-Description: iperf
 +
# Description:      Servei Iperf per a mesurar l'ample de banda entre dos punt
 +
### END INIT INFO
 +
 +
# Per a comprobar quan el procés s'està executant
 +
touch /var/lock/iperf
 +
 +
# Carry out specific functions when asked to by the system
 +
case "$1" in
 +
  start)
 +
    echo "Iniciant iperf..."
 +
    PIDIPERF=`pidof iperf`
 +
    if [ $? -ne 0 ] # comprovem que no s'estigui executant
 +
    then
 +
      iperf -s -D
 +
      echo "...fet."
 +
    else
 +
      echo "AVÍS: Iperf ja s'està executant en el procés $PIDIPERF."
 +
    fi
 +
    ;;
 +
  stop)
 +
    echo "Aturant iperf..."
 +
    PIDIPERF=`pidof iperf`
 +
    if [ $? -ne 0 ]
 +
    then
 +
      echo "AVÍS: l'Iperf ja estava aturat."
 +
    else #si el programa estava obert, el matem.
 +
      kill -9 $PIDIPERF
 +
      rm -f /var/lock/iperf
 +
      echo "...fet."
 +
    fi
 +
    ;;
 +
  *) 
 +
    echo "Usage: /etc/init.d/iperf {start|stop}"
 +
    exit 1
 +
    ;;
 +
esac 
 +
 +
exit 0
 +
 
 +
- cal donar-li permisos d'execució:
  
 
  chmod +x iperf
 
  chmod +x iperf
  
- creo enllaços per les arrancades:
+
''(Si volem assegurar-nos que l'script funciona correctament, el podem provar amb les comandes "/etc/init.d/iperf start" i "/etc/init.d/iperf stop" per a iniciar-lo i aturar-lo respectivament)''
  
ln -s /etc/init.d/iperf /etc/rc2.d/S99iperf
+
- i finalment li indiquem al sistema que l'iniciï automàticament a l'arrencada:
ln -s /etc/init.d/iperf /etc/rc3.d/S99iperf
+
ln -s /etc/init.d/iperf /etc/rc4.d/S99iperf
+
  
- ja tenim instal·lat i funcionant en mode servidor. Ara per executar-lo des d'un altre ordinador com a client, i fer la prova de rendiment, l'executarem:
+
update-rc.d iperf defaults
  
  iperf -c ''ip-servidor-iperf''
+
- ja tenim instal·lat i funcionant en mode servidor. Al següent reinici hauria d'executar-se automàticament.
 +
 
 +
 
 +
''(Si en qualsevol moment volguéssim que ja no s'iniciés automàticament, executem la següent comanda:)''
 +
 
 +
update-rc.d -f  iperf remove
 +
 
 +
 
 +
 
 +
== Prova de funcionament: ==
 +
 
 +
- Ara, per a fer la prova de rendiment des d'un altre ordinador, com a client, executarem:
 +
 
 +
  iperf -c [''ip-servidor-iperf''] #per fer la prova de baixada
 +
iperf3 -c [''ip-servidor-iperf''] --reverse #per fer la prova de rendiment bidireccional
  
  
Línia 32: Línia 102:
 
...partint d'altres manuals:
 
...partint d'altres manuals:
 
*[http://guifi.net/node/3330 manual iperf documentació guifi.net]
 
*[http://guifi.net/node/3330 manual iperf documentació guifi.net]
 +
*[http://www.debian-administration.org/articles/28 Making scripts run at boot time with Debian]
 
== altres versions ==
 
== altres versions ==
*[http://code.google.com/p/xjperf/ xjperf, versió per windows]
+
*[https://iperf.fr/ iperf3] una evolució del programa que és multiplataforma i que permet fer testos de velocitat bidireccionals (amb --reverse) fins i tot quan s'ha d'atravessar un NAT
 +
 
 +
[[Categoria:Servidor]]
 +
 
 +
[[es:Iperf]]

Revisió de 00:02, 20 feb 2016

Instal·lació

Instal·lem el paquet: (Per a debian i similars. Per a altres distribucions pot variar.)

Versió clàssica, ja no es desenvolupa però està disponible en la majoria de distribucions

apt-get install iperf #fins a debian wheezy

Versió moderna, s'ha reescrit des de zero per millorar-ne el funcionamet, permèt coses com per exemple funcionar en xarxes que estan darrera un equip que fa NAT

apt-get install iperf3 #de debian jessie endavant


Si volem que el servei iperf s'inicï automàticament al iniciar el servidor, hem de crear un "script":

- (com a root) entrem al directori /etc/init.d:

cd /etc/init.d

- creem un fitxer anomenat 'iperf' amb un editor de text:

nano iperf

- i a l'interior hi enganxem el següent contingut (hem de reemplaçar iperf per iperf3 si fem servir aquesta versió):

#! /bin/sh
# /etc/init.d/iperf
#
### BEGIN INIT INFO
# Provides:          iperf
# Required-Start:    
# Required-Stop:     
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: iperf
# Description:       Servei Iperf per a mesurar l'ample de banda entre dos punt
### END INIT INFO

# Per a comprobar quan el procés s'està executant
touch /var/lock/iperf

# Carry out specific functions when asked to by the system
case "$1" in
  start)
    echo "Iniciant iperf..."
    PIDIPERF=`pidof iperf`
    if [ $? -ne 0 ] # comprovem que no s'estigui executant
    then
      iperf -s -D
      echo "...fet."
    else
      echo "AVÍS: Iperf ja s'està executant en el procés $PIDIPERF."
    fi
    ;;
  stop)
    echo "Aturant iperf..."
    PIDIPERF=`pidof iperf` 
    if [ $? -ne 0 ]
    then
      echo "AVÍS: l'Iperf ja estava aturat."
    else #si el programa estava obert, el matem.
      kill -9 $PIDIPERF
      rm -f /var/lock/iperf
      echo "...fet."
    fi
    ;;
  *)  
    echo "Usage: /etc/init.d/iperf {start|stop}"
    exit 1
    ;;
esac  

exit 0

- cal donar-li permisos d'execució:

chmod +x iperf

(Si volem assegurar-nos que l'script funciona correctament, el podem provar amb les comandes "/etc/init.d/iperf start" i "/etc/init.d/iperf stop" per a iniciar-lo i aturar-lo respectivament)

- i finalment li indiquem al sistema que l'iniciï automàticament a l'arrencada:

update-rc.d iperf defaults

- ja tenim instal·lat i funcionant en mode servidor. Al següent reinici hauria d'executar-se automàticament.


(Si en qualsevol moment volguéssim que ja no s'iniciés automàticament, executem la següent comanda:)

update-rc.d -f  iperf remove


Prova de funcionament:

- Ara, per a fer la prova de rendiment des d'un altre ordinador, com a client, executarem:

iperf -c [ip-servidor-iperf] #per fer la prova de baixada
iperf3 -c [ip-servidor-iperf] --reverse #per fer la prova de rendiment bidireccional



referències

...partint d'altres manuals:

altres versions

  • iperf3 una evolució del programa que és multiplataforma i que permet fer testos de velocitat bidireccionals (amb --reverse) fins i tot quan s'ha d'atravessar un NAT
Eines de l'usuari