Linha de comando: como obter largura de banda instantânea em uma porta

2
Estou tentando obter o uso de largura de banda instantânea de eth0, porta 10001. Eu olhei para o uso de muitas ferramentas diferentes, mas a maioria deles parece ter uma saída de tipo ncurses que não é adequada para encanar no meu programa.

Eu vi , mas isso só dá o total de estatísticas em uma interface e não é dividido pela porta.

Idealmente, gostaria que um comando que recebesse dois argumentos (eth0 e porta 10001), fosse executado por 500ms, calculasse o número e o tamanho dos pacotes e gerasse uma métrica simples de megabytes / segundo.

Isso é pedir demais?

Alguém tem alguma ideia?

    
por Eamorr 29.02.2012 / 08:54

1 resposta

2

Você pode tentar usar o comando ifstat. Com a invocação padrão, ele mostra o uso da largura de banda periodicamente até atingir o Control-C. Mas você pode invocá-lo assim:

ifstat <delay> <count>  (i.e. ifstat 1 1)

Para que ele forneça o uso da largura de banda em um segundo e seja programável por scripts.

    
por 17.04.2012 / 12:35