Sospecho que mi servidor tiene una gran carga de solicitudes http de sus clientes. Quiero medir el volumen del tráfico http. ¿Cómo puedo hacerlo con Wireshark? ¿O probablemente hay una solución alternativa usando otra herramienta?
Así es como se ve un único tráfico de solicitud / respuesta http en Wireshark. El ping es generado por la función WinAPI :: InternetCheckConnection ()
alt text http://yowindow.com/shared/ping.png
Los paquetes de ping deben usar un tipo ICMP de 8 (eco) o 0 (respuesta de eco), por lo que puede usar un filtro de captura de:
icmp
y un filtro de pantalla de:
icmp.type == 8 || icmp.type == 0
Para HTTP, puede usar un filtro de captura de:
tcp port 80
o un filtro de pantalla de:
tcp.port == 80
o:
http
Tenga en cuenta que un filtro de httpno es equivalente a los otros dos, que incluirá paquetes de saludo y terminación.
Si desea medir la cantidad de conexiones en lugar de la cantidad de datos, puede limitar la captura o mostrar los filtros a un lado de la comunicación. Por ejemplo, para capturar solo los paquetes enviados al puerto 80, use:
Lo siento, he olvidado mencionar los detalles de la solicitud de "ping". Esta es la forma de hacer ping de Windows. Parece que icmp no tiene relación con mi caso.
par
Vea la captura de pantalla del ping en Wireshark que acabo de adjuntar
par
Cambié la pregunta de 'ping' a 'http' para que su respuesta no tenga sentido en contexto, pero hago +1 porque es una buena respuesta de ping.
Cuando hago eso, se muestra 0 y se reciben 45k, y accedo a sitios web, ¿alguna idea? Estoy mirando Wi-Fi:
en0
7
No es un ping. Un ping, como ya ha dicho outis, es una solicitud de eco ICMP. Su seguimiento muestra el establecimiento y la terminación inmediata de una conexión HTTP, y eso es lo que InternetCheckConnection()hace. La IP en cuestión, 77.222.43.228, se resuelve en http://repkasoft.com/ , que, supongo, es la URL a la que se pasa InternetCheckConnection().
Puede filtrar el tráfico con esta IP utilizando el filtro de captura o visualización host == 77.222.43.228.
Usando Wireshark 1.2+, ejecutaría este archivo por lotes:
:: Script to save a wireshark trace
:: tshark -D to get interface id
@echo off
C:
cd C:\Temp\NetTracing
set PATH=%PATH%;C:\Program Files\Wireshark
echo Tracing host 127.1 or 172.1.1.1 or 10.0.0.1
tshark.exe -i 4 -a duration:900 -S -f "tcp port 80" -w trace.cap
Simplemente use un DisplayFilter
http
como este:fuente
No es un ping. Un ping, como ya ha dicho outis, es una solicitud de eco ICMP. Su seguimiento muestra el establecimiento y la terminación inmediata de una conexión HTTP, y eso es lo que
InternetCheckConnection()
hace. La IP en cuestión, 77.222.43.228, se resuelve en http://repkasoft.com/ , que, supongo, es la URL a la que se pasaInternetCheckConnection()
.Puede filtrar el tráfico con esta IP utilizando el filtro de captura o visualización
host == 77.222.43.228
.fuente
Usando Wireshark 1.2+, ejecutaría este archivo por lotes:
fuente