Webサイトと速度

バッファブロート:ネットワークが混むと通話が遅れる

バッファブロートとは、ネットワーク機器がバッファにデータを溜めすぎることで生じる遅延です。ネットワークが混んでいる間、通話やゲームが遅れます。

対象:現在のすべてのmacOSバージョン。networkQualityにはmacOS 12 Monterey以降が必要です。確認日:2026年10月29日

症状

  • バックアップやアップロードの実行中に、通話がフリーズしたり音声が途切れたりする。
  • 別のデバイスがダウンロードすると、ゲームが遅れる。
  • 大きな転送中はページの読み込みが遅いのに、速度テストは速い。

考えられる原因

  • ルーターやモデムの大きなバッファ。回線がいっぱいになると、パケットは長いキューで待たされます。待つたびに遅延が増えます。
  • 回線を埋めるアップロード。アップロードの容量はダウンロードよりかなり小さいことが多く、アップロードですぐにいっぱいになります。
  • ルーターにキュー管理がない。スマートキュー管理(SQM)はキューを短く保てます。ただし、すべてのルーターにあるわけではなく、オフになっていることもあります。

確認方法

  1. ほかに何もネットワークを使っていないときにnetworkQualityを実行します。応答性(Responsiveness)をメモします。

    networkQuality
  2. 別のデバイスで大きなアップロードかダウンロードを始めます。もう一度テストを実行します。

    networkQuality
  3. 2つの結果を比べます。負荷時に応答性が大きく下がれば、バッファブロートです。

  4. 簡単なテストとして、アップロードの実行中にサーバへpingを送ります。時間が増えていくのがわかります。

    ping 1.1.1.1
  5. pingを止めるには、Control-Cを押します。

解決方法

  1. ルーターの設定を開きます。SQM、スマートキュー管理、または同様のQoS設定を探します。

  2. ルーターにその設定があれば、オンにします。速度の値はルーターのメーカーの説明に従ってください。

  3. ルーターにその設定がなければ、大きなアップロードやバックアップは通話しない時間帯に予約します。

  4. 大事な通話の間は、クラウド同期を一時停止します。

  5. モデムやルーターがキュー管理に対応しているか、プロバイダに問い合わせます。

Kilobatを使う場合

  1. Kilobatの速度テストは負荷時の遅延を報告します。バッファブロートを「低」「中」「高」「判定不能」で評価します。

    kilobat speedtest --json

    出力addedLatencyMsとbufferbloat、通話とストリーミングの判定付き。

  2. 追加の遅延が15ms未満なら「低」、60ms未満なら「中」、60ms以上なら「高」です。

  3. アップロードしているアプリを見つけるには、リアルタイムの通信をアップロード順に並べ替えます。

    kilobat status --watch
  4. Proとネットワークフィルタがあれば、通話の間だけアプリをブロックできます。通話のカクつきをテストするを参照してください。

よくある質問

バッファブロートはMacの問題ですか?

ふつうは違います。大きなバッファがあるのはルーター、モデム、またはプロバイダのネットワークです。Macは影響を表示しているだけです。

速いプランにすればバッファブロートは直りますか?

必ずしもそうではありません。容量が増えると改善することはありますが、転送が回線をいっぱいに使えば、やはりキューは埋まります。

出典

出典は2026年10月29日に確認しました。manページはmacOSに付属のものです。「ターミナル」でman <name>を実行すると開けます。