QoS(4)QoS 評価項目

図1 のQoSの評価項目について解説をする。

ネットワーク要件とQoS 評価項目
図1 ネットワーク要件とQoS 評価項目

帯域/帯域幅

帯域は、通信などで使用する電波や光の周波数の幅、つまり「最高周波数」と「最低周波数」の差だ。さらに厳密にいえば、図1 のように最大レベルから 3dB 下がった点(電力レベルで半分)の最高周波数と最低周波数の間の周波数範囲(f1 ~f2 )が帯域だ。単位は周波数[Hz](ヘルツ)を使用する。これが本来の意味だ。

しかし、通信では搬送波の帯域が広いほど高速に伝送できることから、周波数とは関係なく帯域/帯域幅は通信速度を指す。本来は間違った使い方だが、通信の世界では、「帯域または帯域幅」=「通信速度」が一般的だ。単位は[bps](bit per second)を使用する。1秒間に送受信できるビット数だ。通信での帯域は、物理層(第1層)での通信速度だ。一般的に、上位層の帯域は物理層の帯域より小さくなる。最下位の物理層では、物理層ヘッダが付加されたり、伝送媒体に合わせたコード変換によりデータ量が増えるためだ。

帯域-帯域幅
図1 帯域-帯域幅

遅延

2つのノード間でデータを送受信する際に、一方が送信を開始してから他方が受信を開始するまでにかかる時間が本来(狭義)の遅延時間だ。これを「片方向遅延」と呼ぶ。物理層(第1層)やリンク層(第2層)の定義では、この「遅延時間」が登場する(図2)。

図2 片方向遅延
図2 片方向遅延

しかし、ネットワークの世界で遅延時間と言えば「往復遅延時間(RTT: Round Trip Time)」が一般的だ。データがクライアントとサーバ間の往復に要した時間だ。例えば、ノード間の疎通確認にping を実行すると、「往復遅延時間」がミリ秒単位で表示される(図3)。 ping の遅延時間は、行き(往)と帰り(復)時間の合計だが、往復時間で表示される。これは、行きと帰り時間を個々に測定することが難しいためだ(図4)。

ping コマンドの例
図3 ping コマンドの例
往復伝搬遅延(RTT)
図4 往復伝搬遅延(RTT)

「片方向遅延」時間は、RTT の 1/2 で求めることが多い。往きと帰りは同じ経路を辿り、往き時間≒帰り時間」とみなして計算する場合がほとんどだ。ちなみに、Ethernet TSN のgPTP(時刻同期)もこの考えに基づいている。

遅延の種類

ping 等で表示される遅延の要素は大別して2種類ある。クライアント/サーバの中で発生
する「アプリケーション遅延」と、伝送路上で発生する「ネットワーク遅延」だ。

アプリケーション遅延

図5 の様に ping (ICMP Echo Request)を実行すると、最上位のアプリケーション層から順次下位層にデータが引き渡され、最下位層の物理層に到達する。物理層に到達するまでの時間が、アプリケーション遅延だ。ping ( ICMP Echo Request)を受信する側は、物理層から順次上位層にデータが渡り、アプリケーションに到達する。この時間も「アプリケーション遅延」になる。実際の ping は、ICMP Echo Request を受信したノードが、ICMP Echo Reply を返信し、逆ルートで ping 送信元に届く。 ping 応答時間はこの往復伝搬時間(RTT)をミリ秒単位で表示している。

図5 アプリケーション遅延
図5 アプリケーション遅延

スイッチの挿入遅延は、Store & Forward と Cut Through で異なる。Store & Forward はフレーム全体を受信後、処理を開始する。かたや、Cut Through はフレーム先頭の宛先MACアドレスを受信後、処理を開始する。最大長フレームを処理する図の例では、100Mbps イーサネットでは 121.28 μ秒の差が生じる。 PROFINET や EtherCAT が Cut Through 方式を採用する理由がここにある。 Ethernet TSN では、両方式の検討が進んでいる。

もちろん、Cut Through は第2層で動作するスイッチ特有の機能で、ルータでは使えない。また、最近のスイッチ処理遅延は、1~2μ秒程度とかなり高速だ。ちなみに、Ethernet TSN の遅延時間モデルでは、5μ秒に設定されている。

ネットワーク遅延

図5 のようにネットワーク遅延には、「シリアル化遅延」、光ファイバーや撚線対などの伝送媒体での「伝搬遅延」、スイッチやルータなどの中継装置で発生する「ネットワーク機器挿入遅延」がある。

シリアル化遅延

1フレームのデータを伝送路上に出し終わるまでの時間が「シリアル化遅延」になる。例えば、VLAN 付きイーサネットフレームの最大長は 1522+8(プリアンブル)バイトだ。100Mbps イーサネットで、このフレームを伝送路上に出し終わるには 122.4 μ秒かかる。シリアル化遅延は、ネットワークの伝送速度に依存する。

ネットワーク機器挿入遅延

ネットワーク機器の挿入遅延は、ネットワーク機器の入力インタフェイスでフレームを受信し、スイッチングやルーティング処理を行い、出力インタフェイスから電気/光信号に変換して送信を開始するまでの時間だ。挿入遅延は、「受信開始」から「受信完了判断」までの時間と処理時間の合計になる。ネットワーク機器の方式、処理能力やバッファに蓄積されたデータ量により変化する。送信を開始してから、完了するまでの時間は「シリアル化遅延」になる。

スイッチの挿入遅延は、Store & Forward と Cut Through で異なる。Store & Forward はフレーム全体を受信後、処理を開始する。かたや、Cut Through はフ レーム先頭の宛先MACアドレスを受信後、処理を開始する。最大長フレームを処理する図の例では、100Mbps イーサネットでは 121.28 μ秒の差が生じる。 PROFINET や EtherCAT が Cut Through 方式を採用する理由がここにある。 Ethernet TSN では、両方式の検討が進んでいる。

もちろん、Cut Through は第2層で動作するスイッチ特有の機能で、ルータでは使えない。また、最近のスイッチ処理遅延は、1~2μ秒程度とかなり高速だ。ちなみに、Ethernet TSN の遅延時間モデルでは、5μ秒に設定されている。

ネットワーク機器挿入遅延
図6 ネットワーク機器挿入遅延
伝送媒体伝搬遅延時間(100m)
光(真空中)333.564 n秒
光ファイバー500 n秒
撚線対(CAT5e/6)538 n秒
表1 通信媒体遅延時間
場所距離片方向遅延時間
東京ー大阪400km2m秒
東京ーリオデジャネイロ18,600km93m秒
表2 直線距離と遅延時間

ジッタ

信号タイミングなどは、常に一定ではなく時間に伴い変動している。ゆっくり発生するタイミング変動を「ワンダ」、短い時間で発生する変動を「ジッタ」と呼ぶ。ワンダとジッタの境界線は10Hzだ。イメージとしては、図7 の様に徐々に位相が遅れ、その後位相が進むような状態だ。もちろん、イーサネットの物理層にも位相ずれや周波数ずれのジッタはあるが、ネットワーク通信では、フレーム伝送時間が変動し、到着するフレームの順序やフレーム間隔が乱れる現象を指すことが多い。現象としては、映像や音声の途切れやアプリケーションの誤作動が起きる。

ジッタ
図7 ジッタ
パケットジッタ
図8 パケットジッタ

バースト/マイクロバースト

バースト/マイクロバーストは、非常に短い時間に大量のパケットをルータやスイッチ、サーバが受信し輻輳を起こす現象だ。通信速度は bps(1秒間当たりのビット数)で表すが、1秒間と測定時間が長いため短時間のパケット集中によるバーストを意識することはまずない。

図9 の例では、上段は平均的にパケットが送信されているが、下段では同じ数のパケットが連続して送信されている。いずれも、長い時間で見ればパケットの送信時間は、全体の 30% と同じだ。上段のような状態をイメージするが、実際は下段のような状態になっていることが多い。

バーストトラフィック
図9 バーストトラフィック

損失

TCP/IP は、データをパケットに分割し送信する。受信ノードは小分けにされたパケットを再構築し、元データを復元する。小分けにされたパケットの一部または全部が正常に届かず、消滅することを「パケットロス(損失)」と呼ぶ。パケットロスが発生すると、元データを再構築できない (図10)。

パケットロス(損失)
図10 パケットロス(損失)

各パケットには、受信したパケットを正しい順序で組み立てるための情報が入っている。TCP ヘッダの「シーケンス番号」と「確認応答番号」だ。全てのパケットを受信した場合は、この情報を使ってデータを再構築する。パケットロスが発生した場合は、この情報を使って「未受信パケット」以降のパケットを再送することで、パケットロスに対応している。「シーケンス番号」と「確認応答番号」による送受信手順は、図11 をご覧いただきたい。

TCP 送信手順例
図11 TCP 送信手順例

TCP は一部のパケットロスで、全てのパケットを再送するほど非効率ではないが、受信側はパケットロスを検出できず、送信側が「受信確認応答(ACK)」が一定時間(タイムアウト時間)届かないことでパケットロスを検出し、再送手順を開始する。タイムアウト時間は一般的に秒単位のため、再送が発生すると極端に通信速度が遅くなる。

パケットロスは、スイッチやルータなどの中継装置や受信ノードで発生することが多い。輻輳によるキュー溢れだ。光ファイバーや撚り対線(ツイストペア線)での伝送エラーはかなり少ない。

QoS

この記事を書いた人

岩崎 有平

早稲田大学 理工学部 電子通信学科にて通信工学を専攻。
安立電気(現 アンリツ)に入社後、コンピュータ周辺機器の開発を経てネットワーク機器の開発やプロモーションに従事する。
おもにEthernetを利用したリアルタイム監視映像配信サービスの実現や、重要データの優先配信、映像ストリームの安定配信に向けた機器の開発行い、Video On Demandや金融機関のネットワークシステム安定化に注力した。
現在は、Ethernetにおけるリアルタイム機能の強化・開発と普及に向けて、Ethernet TSNの普及活動を行っている。