Test Velocità di Rete – Funzione per Pingare un IP o un Host con PHP

22 Dicembre 2015 di Daniele Frulla


La funzione di ping di un IP o di un Host è fondamentale se si deve sondare lo stato di una rete o la velocità di comunicazione tra due clients o tra due server.

Spesso è necessario implementarla in PHP per verficare l’esistenza o meno di un servizio o di un server.

Questa semplice funzione può pingare un hosts ad una determinata porta (per esempio potrebbe essere il servizio http quindi la porta 80).

Ping

[php]
function ping($host, $port, $timeout = 2) {
$tStart = microtime( true );
$fP = @fSockOpen($host, $port, $errno, $errstr, $timeout);
if ( !$fP ) {
return false;
}
$tEnd = microtime(true);
return round((($tEnd – $tStart) * 1000), 4);
}
[/php]

La funzione restituisce un numero a 4 decimali che rappresenta la velocità in millesecondi che impiega la rete per rispondere. Il timeout è impostato di default a 2 secondi.

Più millesecondi impiega e maggiore sarà la lentenza per utilizzare quel determinato servizio.

Una risposta false indica che il server impiega troppo tempo per rispondere o semplicemente non esiste.

Verificare che un server sia up o down è anche utilizzato nella programmazione parallela. Infatti lo si può sfruttare la conoscenza della velocità di comunicazione fra due servers come parametro di scelta per individuale i migliori servers con cui dovresti comunicare per primo.


Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *


Copyright di Caterina Mezzapelle Part. I.V.A. 02413940814 - R.E.A. 191812