「ネットワークのジッター」の版間の差分

提供:MonoBook
ページの作成:「'''ネットワークのジッター'''(Jitter)とは、Ping値の揺らぎのことです。 明確な定義はなく計算式もベンチマークアプリごとに異なるので注意しましょう。 計測期間中のpingの配列から標準偏差などを求めることでJitter値としていることが多い。 == 最大値と最小値の範囲 == 計測期間中の最大値と最小値の差をJitter値とするもっともシンプルは方…」
 
編集の要約なし
 
(同じ利用者による、間の5版が非表示)
1行目: 1行目:
'''ネットワークのジッター'''(Jitter)とは、[[Ping値]]の揺らぎのことです。
'''ネットワークのジッター'''(Jitter)とは、[[Ping]]の揺らぎのことです。


明確な定義はなく計算式もベンチマークアプリごとに異なるので注意しましょう。
明確な定義はなく計算式もベンチマークアプリごとに異なります。
計測期間中のpingの配列から標準偏差などを求めることでJitter値としていることが多い。
数値を比較する場合は必ず同じベンチマークを利用しましょう。


== 最大値と最小値の範囲 ==
== 最大値と最小値の範囲 ==
11行目: 11行目:


== 標準偏差 ==
== 標準偏差 ==
シンプルな標準偏差を使う方法が一般的だとは思う。
標準偏差を使う方法が一般的だとは思う。
<source lang="csharp">
<source lang="csharp">
float StdDev(List<float> pings) {
float StdDev(List<float> pings) {

2025年11月7日 (金) 05:52時点における最新版

ネットワークのジッター(Jitter)とは、Pingの揺らぎのことです。

明確な定義はなく計算式もベンチマークアプリごとに異なります。 数値を比較する場合は必ず同じベンチマークを利用しましょう。

最大値と最小値の範囲[編集 | ソースを編集]

計測期間中の最大値と最小値の差をJitter値とするもっともシンプルは方法です。

float Range(List<float> pings) => pings.Max() - pings.Min();

標準偏差[編集 | ソースを編集]

標準偏差を使う方法が一般的だとは思う。

float StdDev(List<float> pings) {
    int n = pings.Count;
    float mean = pings.Average();
    float sum = 0f;
    foreach (var x in pings) 
        sum += (x - mean) * (x - mean);
    return (float)Math.Sqrt(sum / (n - 1)); // sample stddev
}

連続差の平均絶対値[編集 | ソースを編集]

連続差の平均絶対値であれば瞬間的な不安定さが不定期に発生する回線をあぶり出せる。

float MadSuccessive(List<float> pings) {
    int n = pings.Count;
    if (n < 2) 
        return 0f;
    float sum = 0f;
    for (int i = 1; i < n; ++i) 
        sum += Math.Abs(pings[i] - pings[i - 1]);
    return sum / (n - 1);
}