lsof obtém o tamanho do tráfego com o servidor

2

Eu tenho um servidor Posso usar lsof para encontrar em uma porta específica a quantidade de tráfego passado com servidores? Eu usei até agora isso, a fim de classificar por tamanho maior, mas que informações eu realmente recebo? como posso saber com lsof (se possível) quantos bytes foram transferidos com algum outro servidor em 1 hora por exemplo ou 1 minuto?

obrigado

lsof | sed 's/0t//' | grep  | awk '{print $7,$9}' | sort -nr | head -10

Eu usei isso para obter o top 10 lsof com a minha porta a coluna de tamanho é $ 7 $ 9 me dá o nome do outro servidor e porta ... (PS eu estou usando solaris)

    
por Jas 26.05.2011 / 16:28

1 resposta

0

Se você quiser encontrar o seu throughput ao longo do tempo, eu capturaria os seus cabeçalhos de pacote (não o pacote inteiro, requer muito espaço) em um modo não promíscuo para um arquivo. Isso pode ser feito com o tcpdump ou tshark (parte do wireshark). Você pode então carregar sua captura com o wireshark e, usando os filtros, você pode encontrar sua taxa de transferência para um serviço / porta durante um período de tempo. Eu acredito que você também pode fazer algumas das análises com tshark na linha de comando, o que pode ajudar com scripts.

Captura básica em eth0:

tcpdump -p -i eth0 -w capture.pcap

Outra opção é ntop, já que ela fará muito disso para você em uma interface da web, mas não me lembro exatamente quantos detalhes você pode obter dela.

    
por 27.05.2011 / 17:09