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

提供:MonoBook
編集の要約なし
編集の要約なし
タグ: 差し戻し済み
1行目: 1行目:
'''ネットワークのジッター'''(Jitter)とは、[[Ping]]の揺らぎのことです。
'''ネットワークのジッター'''(Jitter)とは、[[Ping]]の揺らぎのことです。


== 主な計算式 ==
明確な定義はなく計算式もベンチマークアプリごとに異なるので注意しましょう。
明確な定義はなく計算式もベンチマークアプリごとに異なるので注意しましょう。


== 最大値と最小値の範囲 ==
=== 最大値と最小値の範囲 ===
計測期間中の最大値と最小値の差をJitter値とするもっともシンプルは方法です。
計測期間中の最大値と最小値の差をJitter値とするもっともシンプルは方法です。
<source lang="csharp">
<source lang="csharp">
9行目: 10行目:
</source>
</source>


== 標準偏差 ==
=== 標準偏差 ===
標準偏差を使う方法が一般的だとは思う。
標準偏差を使う方法が一般的だとは思う。
<source lang="csharp">
<source lang="csharp">
22行目: 23行目:
</source>
</source>


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



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

ネットワークのジッター(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);
}