2013-03-04 15 views
6

A causa della distanza geografica tra server e client, la latenza della rete può variare molto. Quindi voglio ottenere il req "puro". tempo di elaborazione del servizio senza latenza di rete.Come calcolare il tempo di elaborazione della richiesta HTTP senza latenza di rete?

voglio ottenere la latenza di rete come TCP tempo di connessione. Per quanto ne so, questa volta dipende molto dalla rete.

L'idea principale è quella di calcolare:

  • TCP tempo di connessione,
  • TCP primo pacchetto di ricezione volta,
  • Get "pura" tempo di servizio = TCP primo pacchetto di ricezione (tempo di attesa) - TCP collegamento .

Divido TCP connettendo 2 perché in effetti ci sono 2 richieste-risposta (3 mani di handshake).

Ho due domande:

  1. Devo calcolare tutti i pacchetti TCP ricevono volta invece di solo primo pacchetto?
  2. Questo metodo va bene in generale?

PS: Come strumento utilizzo Gen_tcp di Erlang. Posso mostrare il codice.

+0

è possibile eseguire un client sulla stessa LAN (o anche la stessa macchina) come il server? Quindi la latenza della rete dovrebbe essere quasi trascurabile. – Barmar

+0

È in esecuzione 'tcpdump' sul server un'opzione? – Barmar

+0

No. Esamino i servizi Web remoti. – Dimitry

risposta

4

Se a tutto, credo che il tempo di servizio "puro" = TCP primo pacchetto di ricezione - TCP che collega .. Lei ha scritto viceversa.

Una possibile risposta alle tue prime domande è, si dovrebbe idealmente calcolare atleast una sorta di media, considerando il tempo puro servizio di molti pacchetti piuttosto che solo primo pacchetto.

Idealmente può anche avere caso peggiore, caso medio, migliori tempi di servizio caso.

Per la seconda domanda a cui rispondere avremmo bisogno perché si avrebbe bisogno solo il tempo puro servizio. Voglio dire, dal momento che si tratta di un'applicazione di rete, le latenze di rete (tempo di connessione ecc.) Dovrebbero anche essere incluse nel "tempo di risposta", non solo il tempo di servizio puro. Questa è la mia opinione basata su determinate informazioni.

+0

Grazie! Ho bisogno di assistenza solo a causa della grande distanza geografica tra client, servizio e applicazione che suggerisce i servizi web. Il suggerimento si basa su diversi criteri: disponibilità, latenza, costi, ecc. Quindi la mia applicazione può ottenere stime sbagliate della latenza del servizio Web se non elimenerò la parte di latenza di rete. – Dimitry

+0

E sì, intendo il tempo di attesa - connessione TCP. Grazie. – Dimitry