掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ネットワーク使用率の取得は (ID:66788)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> リンク速度の100Mbpsは光ネットで100なのは分かります。 > dwSpeedの速度でどのように計算すれば使用率になりますか? > リンク速度の100Mbpsを元に計算できるのでしょうか? 光ネットだから100Mというワケではないです。 インターフェースのリンク速度が100Mということになります。 # ウチはYahooBBの50Mタイプですが、下りは3.6Mくらいです。 > これを見る限りは、dwInOctets、dwOutOctets がバイト単位で dwSpeed はビット単位の速度ですよね。 > この場合は dwInOctets、dwOutOctets の増加量(バイト)を (dwSpeed / 8) で計算すればいいんですよね。 > あるいは、 dwInOctets、dwOutOctets の増加量(バイト)×8倍して dwSpeed でパーセント計算。 > このような計算をすればよろしいでしょうか? とりあえず、考えてみました。 dwSpeedに100000000が得られました。 計算を簡単にする為に1msの速度を求めます。(1000で割るだけですが) 計算上、1msで100000Bit。 マルチメディアタイマーの精度は1msになるように設定しておきます。 1回目、GetIfTableで取得(インターフェースが確定しているならばGetIfEntryでもいいでしょう。)。 取得直後にtimeGetTimeでミリ秒を取得します。 およそ1秒後に同じ方法で2回目の値を取得します。 ミリ秒の取得も同様に。 2回目に取得したミリ秒から1回目に取得したミリ秒を引くと、間に掛かった時間がミリ秒単位で取得できます。 最初に算出した100000を掛けると、理論上での最大転送ビット数が出ます。 2回目の総受信バイトから1回目の総受信バイトを引くと、その間に受信したバイト数が求まります。 そこから、「実際に使ったビット数」と「最大転送可能ビット数」のそれぞれが求まりますから、あとは百分率を求める計算でパーセンテージは出せますよね。 もっとも、この場合のバイト数が通信に使用できるものと同義で見ていいのかは不明ですが。 # COMポートだと「スタートビット」や「ストップビット」等あったりしますし。 ## 100BAE-TXなどの速度はあくまで理論値ということになりますので、実際はソコまで速度でないでしょう。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.