ネットワークの遅延をまとめてみた
こんにちは!ばーやんです!ネットワークの遅延ってなにからきているかわかりますか?
pingで遅延などを測定していることはあってもそれが何から来ているかふわっとしている方も多いのではないでしょうか?
今回は遅延の解像度をあげるべく記事を執筆しました!
Ciscoのホワイトペーパー「パケット音声ネットワークでの遅延について」
こちらが非常にわかりやすかったのでこれをスライドにまとめてみました!
ネットワークの遅延を考える上でご参考になれば幸いです!
通信遅延の全体像、元の記事が音声のみで特殊だったので少し抽象化しています。
音声以外のアプリケーションでもパケット化以降は似た形になるかと思います。
ホワイトペーパーでは音声の符号化、圧縮方法としてG.729を用いていました。専門ではないので詳しくはないですが、15msの音声情報を用いデジタル化、データ圧縮を行うので最低15msの遅延がここで発生するようです。0.1秒ずれたら歌うのしんどいよなーとか考えると音声の遅延としては結構大きいですね!
続いてパケット化遅延。これはRTPのペイロード一杯にデータを詰め込むのに時間がかかるみたいです。
詰め込み待ちを小さくしたければペイロードを小さくすればいいですがデメリットとして
・オーバーヘッド分余分に帯域を使う
・CPU負荷が上がる
ということがあるようです。
逆に映像だとそこまで気にしなくてもMTU一杯のペイロード設定でよさそうです。
データを送るまでにかかる時間フレームサイズがおおきく回線が細いほど大きくなります。
最近は回線が太いので通常無視できるほど小さいです。
ジャンボフレームだと大きくなっちゃうかも?(誤差か)
遅延の王様キューイング遅延。みんなが遅延と思っている大体はこれ
QoS制御でキュー待ちを飛ばして音声フレームなどとんでいきます
例え優先キューの中のフレームでも流石に、送信中のフレームは抜かせません。
輻輳時とんでもなく遅延が増えるのはキューイング遅延のせい。
物理的にかかってしまう伝搬遅延日本でも北海道、沖縄だと往復25mかかってしまう。
ジッタによる揺らぎを吸収するための遅延
今回ネットワークの遅延についてまとめてみました!
皆様の遅延の解像度を上げる一助になれば幸いです!
ばーやんでした~
Discussion