내 시스템에 카페인이 없는지 확실하지 않지만, 내 인생에서 올바른 방법이 무엇인지 알아낼 수 없습니다 (수학).압연 총계에서 처리량을 계산하십시오.
나는 수동으로 중지 될 때까지 구문 분석 된 ethtool -S의 값을 모두 'x'(이 테스트 동안 6 초)로 기록하는 스크립트를 가지고 있습니다. iterations 등 계산하는 방법에 대한 코드가 있지만 초당 평균 바이트를 올바르게 계산하는 방법을 알아낼 수 없습니다.
다음은 출력의 모습입니다 : 우리는 바이트가 모두 증가했다 볼 수 있듯이
Fri Jun 8 23:48:35 GMT 2012 {{{
============== Network Statistics ===============
IFNAME rx_bytes tx_bytes
eth0 27840111418 3083391508
eth4 6153013050 18478875401
eth5 686368648 238683883
eth6 53863181321 2119523154
eth7 23127231747 84602654827
eth8 399517273166 1686004510
Fri Jun 8 23:48:41 GMT 2012 {{{
============== Network Statistics ===============
IFNAME rx_bytes tx_bytes
eth0 27840118248 3083392896
eth4 6153014438 18478876789
eth5 686370036 238685271
eth6 53863182709 2119524542
eth7 23127238019 84602660337
eth8 399519325260 1686018706
, 나는 이것의 반복의 수천거야.
은 정확히입니다. 인터페이스별로 이러한 숫자를 완전히 계산하고 평균 초당 바이트 수를 계산합니다 (결과적으로 * 0.00000762939453을 통해 mbps로 이동합니다). 내가 해봤
모든 것은 지금까지 비참하게 ... 실패했습니다
\ 시간/인내심/도움을 주셔서 감사합니다!
편집 :: 내가 현재 라고 생각하는 것 내가해야 할 일은 데이터를 표준화하기 위해 rx/tx 바이트의 원래 값을 제거하는 것입니다. 초기 합계를 가져 오는 현재 (못생긴) 문자열은 다음과 같습니다.
int1_rx_bytes=`cat $logfile | grep $int1 | awk '{print $2}' | awk '{sum+=$1} END {printf "%f", sum}'`
어디에서 뺄셈 목적으로 원래 번호를 삽입할까요? 참고로 이미 $ int1_orig_rx_bytes라는 변수가 있습니다
나는 추가 할 때마다 원래의 합계를 뺀 값을 줄 필요가 있다고 생각하지만, 그럴 것이라고 확신하지는 않습니다. 너희들은 어떻게 생각하니? – Numpty
나는이 질문을 이해하지 못했지만, '평균 또는 평균'을 계산하고자하는 것처럼 들리 네. 각 인터페이스를 가져 와서 평균 (rx_bytes/6)을 계산하고,이 평균을 합산 한 다음 다른 평균을 취합니다. sum_averages/보이는 인터페이스의 수. 또는 전체 시스템 평균의 경우 rx_bytes + tx_bytes를 합산하고 6으로 나누지 않습니까? – Pete855217
왜 그 두려운 문자열을 곱하는 대신에'2^17' (131072)로 나누지 않습니까? –