回線利用率

読み:かいせんりようりつ / 英語表記:Line Utilization

回線が送り出せる量のうち、実際に流れている通信がどれだけを占めるかを表す割合である。一定時間に流れたビット数を、同じ時間に回線が送り出せるビット数で割って求める。全二重の回線では送信と受信を方向ごとに計算し、値が1に近づくと送信を待つ時間が急激に長くなる。

イマシルちゃんの解説

回線は道路と同じで、空いているときはデータがすぐに流れるんだ。
どれくらい混んでいるかを、回線の速さに対する実際の通信量の割合で表した指標を回線利用率というよ。
例えば1Gbit/sの回線に平均400Mbit/sの通信が流れていれば、利用率は4割になるの。
ただ、上限より手前でも安心はできないんだ。
データが届くタイミングはばらばらだから、利用率が高くなるほど送信の順番待ちがどんどん長くなるよ。
だから回線は、混む時間帯でも利用率に余裕が残るように選ぶんだ。

より深い解説

定義と求め方

回線利用率は、回線の能力に対して実際にどれだけ使われているかを表す割合である。回線速度が設備の能力、トラフィックが流そうとする通信量を表すのに対し、回線利用率は両者の比である。

回線利用率 = 単位時間に流れるビット数 ÷ 回線速度

分子と分母は同じ単位にそろえる。分子がバイトで与えられたら8倍してビットにし、時間の単位も秒にそろえる。例えば100Mbit/sの回線に、1秒あたり2,500,000バイトが流れているとする。

2,500,000 × 8 ÷ 100,000,000 = 0.2(20%)

利用率は0〜1の値、または百分率で表す。1を超える値は、需要が回線の能力を上回っていることを意味する。その状態が続けば、機器の送信待ちの列が伸び続け、あふれたパケットは破棄される。

通信の数え方:方向と共有

利用率の計算で間違えやすいのは、分子にどの通信を含めるかである。回線が送信と受信を同時に行えるかどうかで、数え方が変わる。

回線の形態分子に入れる通信例(200Mbit/s、上り60Mbit/s・下り140Mbit/s)
全二重方向ごとに別々に数える上り30%、下り70%
半二重・共有媒体両方向の合計を一つの媒体で数える100%

スイッチでつないだ全二重のリンクでは、送信と受信がそれぞれ回線速度を持つ。監視でも、送信側と受信側の利用率を別々に見る。一方、リピータハブでつないだLANや無線LANは、つながる端末全体で一つの媒体を共有する。この場合は、どの端末からどの端末への通信であっても、同じ媒体を流れるすべての通信を合計する。

ファイル転送の頻度と大きさから共有LANの利用率を求める自作例を示す。10Mbit/sの共有LANで、5台の端末がそれぞれサーバへ平均1,500バイトのデータを毎秒40回送る。送信時には、データの大きさの20%に当たる制御情報が加わるものとする。

  1. 1台が1秒に送るデータ:1,500 × 40 = 60,000バイト
  2. 制御情報を加える:60,000 × 1.2 = 72,000バイト
  3. 5台を合計してビットにする:72,000 × 5 × 8 = 2,880,000ビット
  4. 回線速度で割る:2,880,000 ÷ 10,000,000 = 0.288(28.8%)

検算として、28.8% × 10Mbit/s = 2.88Mbit/sとなり、3.の値と一致する。制御情報の割合を加え忘れると24%となり、過小に見積もる。逆に、この5台がスイッチの別々のポートにつながっている場合は、サーバ側のポートの受信方向に通信が集まる。この場合に比べるのは、サーバ側のリンクの受信方向の速さである。

監視データから求める

運用中の回線の利用率は、SNMPで機器のインタフェースのカウンタを定期的に取得して求めることが多い。カウンタはそれまでに送受信したオクテット数の累計なので、2回の取得値の差を使う。

回線利用率 =(今回のカウンタ − 前回のカウンタ)× 8 ÷ 取得間隔(秒)÷ 回線速度

自作例として、300秒間隔で取得した送信側のカウンタ(ifHCOutOctets)の差が1,800,000,000オクテットで、インタフェースの速度が100Mbit/sとする。

1,800,000,000 × 8 ÷ 300 = 48,000,000bit/s
48,000,000 ÷ 100,000,000 = 0.48(48%)

RFC 2863では、インタフェースの速度をifSpeed(ビット/秒)またはifHighSpeed(100万ビット/秒単位)で表す。高速なインタフェースでは、32ビットのカウンタがすぐに一周するため、64ビットのカウンタを使う。カウンタの周回の扱いはトラフィックの記事で扱っている。

分母に使う速度が実際の回線と合っているかも確かめる。1Gbit/sのポートにつないだ200Mbit/sの契約回線で、ポートの速度を分母にすると、利用率は5分の1に見えてしまう。WAN回線の利用率は、契約した速度を分母にして評価する。

平均とピーク

利用率は平均をとる時間の長さによって大きく変わる。例えば5分間の平均が40%でも、そのうち数十秒は100%に張り付いていることがある。平均の間隔が長いほど、短い混雑は平らに均されて見えなくなる。

平均の間隔見えること見落としやすいこと
1日曜日や月ごとの傾向、長期の増加業務時間内の混雑
5分時間帯ごとの混雑、増速の判断材料数秒単位の集中
1秒以下短時間の集中(マイクロバースト)長期の傾向(データ量が多く保存しにくい)

回線の設計では、1日の平均ではなく、最も混む時間帯の利用率で評価する。「平均の利用率は低いのに、出力キューでの破棄が増えている」という状態は、短時間の集中を疑う手掛かりになる。

利用率と待ち時間の関係

回線利用率が高くなると遅延が増える理由は、待ち行列で説明できる。パケットが届く間隔はばらばらなので、利用率が100%未満でも、たまたま続けて届いたパケットは前のパケットの送信が終わるのを待つ。回線を一つの窓口とみなすと、M/M/1待ち行列モデルの考え方を当てはめられる。

このとき窓口の「サービス時間」は、1パケットを回線へ送り出す時間である。

平均サービス時間 Ts = 平均パケット長(ビット)÷ 回線速度
利用率 ρ = 1秒あたりのパケット数 × Ts
平均待ち時間 = ρ ÷(1 − ρ)× Ts

自作例として、平均1,000バイトのパケットを2Mbit/sの回線で送る。Tsは8,000 ÷ 2,000,000 = 4msである。

1秒あたりのパケット数利用率 ρ平均待ち時間待ち+送信の時間
1500.60.6 ÷ 0.4 × 4 = 6ms10ms
2250.90.9 ÷ 0.1 × 4 = 36ms40ms

パケット数が1.5倍になっただけで、待ち時間は6倍になる。利用率が1に近づくと分母の1 − ρが0に近づき、待ち時間が急に伸びるためである。

同じ225パケット/秒のまま回線を4Mbit/sに増速すると、Tsは2ms、ρは0.45になる。平均待ち時間は0.45 ÷ 0.55 × 2 ≒ 1.64msとなり、送信時間を含めても約3.64msに下がる。増速の効果は、送信時間が半分になることに加えて、利用率が下がって待ち時間が大きく減ることにも表れる。

実際の通信は、M/M/1の仮定(到着がポアソン分布、パケット長が指数分布)どおりではない。それでも「利用率が高い区間で待ち時間が急に増える」という傾向は共通であり、利用率が高止まりしている回線は遅延の原因の有力な候補になる。

目標の利用率から回線速度を選ぶ

設計では、ピーク時の利用率が目標値以下になるように回線速度を選ぶ。目標値は、許される遅延や、将来の増加への余裕をもとに組織が決める設計上の値であり、規格で決まった数値があるわけではない。

必要な回線速度 = ピーク時の通信量 ÷ 目標の利用率

自作例として、ピーク時の通信量が45Mbit/sで、利用率を60%以下に保ちたいとする。必要な回線速度は45 ÷ 0.6 = 75Mbit/sである。提供されている品目が50Mbit/sと100Mbit/sなら、100Mbit/sを選ぶ。50Mbit/sでは利用率が90%となり、目標を超える。

音声のように遅延に敏感な通信が混在する場合は、回線全体の利用率だけでなく、QoSで優先する通信の量が回線速度に対して十分小さいかも確かめる。ベストエフォート型の回線では、契約した最大値を分母にしても、実際に流せる量が時間帯によって下がる点に注意する。

利用率が上がりきらない媒体

衝突を検出して送り直すCSMA/CDの共有LANや、送信前に待ち時間を置くCSMA/CAの無線LANでは、媒体の制御のために使えない時間がある。そのため利用率を100%近くまで上げることは難しく、負荷が高くなると衝突や待ちが増えて実際に運べる量が伸びなくなる。全二重のスイッチ接続ではCSMA/CDによる衝突は起きない。共有か専用かを確かめてから利用率の数字を評価する。

似た割合との区別

利用率という言葉は、回線以外の資源にも使う。計算の形は同じでも、何を分母にしているかが違う。

指標分子分母
回線利用率流れたビット数回線が送り出せるビット数
CPU使用率CPUが処理に使った時間観測した時間
窓口の利用率(待ち行列)到着率 × 平均サービス時間1(窓口1つの場合)
電話回線の占有率呼量(アーラン)回線数

電話網では、呼量を回線数で割ると1回線あたりの平均の占有率になる。例えば呼損を無視して、6アーランを10回線で運ぶなら、1回線あたり0.6である。回線数の設計に呼損率を使う方法はアーランB式の記事で扱う。

障害切り分けでの読み方

利用率の監視値は、遅延や破棄の原因を探すときの出発点になる。

観測した状態考えられること
業務時間中ずっと高い回線の帯域不足。増速、通信の削減、時間帯の分散を検討する
利用率は低いが破棄が多い短時間の集中、速度差のある接続、QoSの設定
利用率は低いが遠い拠点との通信が遅いTCPのウィンドウと往復遅延、伝搬遅延
利用率が100%を超える分母の速度の設定誤り、カウンタの周回の扱い誤り
夜間に急に高くなるバックアップなどの予定された処理、または不正な通信

平均の回線利用率が低くても、短時間の集中やQoSによる制限が原因である可能性は残る。遅い原因は、機器の処理、サーバ、TCPの設定など別の箇所にあることがある。

午後での問われ方

最後の二重化の論点では、平常時に2本で分け合っている通信が、障害時には1本に集まることを考える。例えば同じ速さの2本の回線がそれぞれ40%で使われていれば、片方が止まると残りは80%になる。平常時の利用率は、障害時に1本で全体を運べる水準に抑えておく必要がある。

参考資料

実際の試験ではここに出る!全1問

テクニカルエンジニア(ネットワーク)

午前

この用語が出てくる記事

↑