2022年11月10日

パケットロス(パケロス)とは?

packet-loss

※この投稿は、Agoraの日本総代理店であるブイキューブが、Agoraブログを翻訳した記事です。

 

今日の接続された世界では、速度がすべてです。開発者は、リアルタイムのビデオ通信、インターネット通話、およびインスタント メッセージングが、ある地点から別の地点に可能な限り高速に到達するデータに依存していることを知っています。結局のところ、パフォーマンス問題の発生を体験すると、ユーザーはアプリケーションの利用をすぐにやめてしまいます。 

多くの問題がネットワークパフォーマンスを混乱させ、標準以下のユーザーエクスペリエンスを提供する可能性があります。これらの問題の1つは、パケットロスです。

開発者の目標は、アプリケーションのパケットロスを防ぐことです。それを念頭に置いて、パケットロスとは何か、およびそれを防ぐ方法を説明するこのガイドを作成しました。しかし、そこに到達する前に、「なぜパケットロスが発生するのか?」という質問にユーザーの視点から答える必要があります。

お役立ち資料ダウンロード

オンライン体験におけるブイキューブの技術サポートのご案内

【図解】システム開発のお手伝い

ブイキューブのソリューションアーキテクトが、寄り添います!
各種ライブ配信システムのアーキテクチャについて わかりやすい構成図にてご紹介!

無料ダウンロード

パケットロスとは?

ネットワークのパケットロスを定義する前に、まずデータパケットとは何かを知る必要があります。

 

インターネット経由で送信するものはすべて、最初にブロックに分割され、宛先に到達すると再構成されます。これらはパケットと呼ばれます。

 

パケットを郵便サービスを介したメールと考えてください。実際の手紙は生データですが、差出人や封筒の住所などの補足情報もあります。これはヘッダーと呼ばれ、パケットが目的の宛先に到達するために必要です。他のメタデータも、データ送信をさらに改良するために使用されます。

 

ただし、パケットが常に意図した宛先に到達するとは限りません。ネットワークの輻輳、ソフトウェアエラー、またはハッキングにより、パケットがドロップされる可能性があります。これをパケットロスと呼びます。

 

パケットロスは、送信された合計数に対する損失パケットのパーセンテージとして表されます。たとえば、30個のパケットを送信し、24個しか受信できなかった場合、20%のパケットロスになります。

 

幸いなことに、失くしたパケットが失われたままになることはありません。代わりに、Transmission Control Protocol (TCP) などの特定のネットワーク プロトコルは、失われたパケットを再送信して、エンドポイントでデータが完全なままであることを確認できます。 

 

残念ながら、これはより多くの帯域幅と時間を消費し、レイテンシーとジッターを増加させます。さらに、過剰なパケット損失もネットワークのスループットを低下させる可能性があります。全体として、これらの要因により、ユーザー エクスペリエンスが低下し、生産性が低下します。

 

アプリケーションが異なれば、さまざまな形でパケットロスが明らかになります。電子メールやインスタントメッセージングなどの非同期通信では、メッセージの受信に遅延が生じるだけです。ファイルをダウンロードするとき、パケット損失によりダウンロード時間が長くなります。理想的ではありませんが、ほとんどの場合許容範囲です。

 

VoIP通話やビデオ会議などのリアルタイム アプリケーションでは、パケットロスが大きな問題になります。わずか 2% のパケットロスでも、途切れ途切れの通話、歪んだ音声、不明瞭な映像、最悪の場合、通話の切断が発生します。

 

UDPを使用している場合は、パケット損失の影響がより顕著になります。これは、標準の TCPとは異なり、UDPは失われたパケットを再送信しないためです。代わりに、接続を終了し、セッションを完全に中断します。

 

最悪の場合、パケットロスによってデータが不完全になったり、ファイルが破損したりする可能性があります。これにより、画像に空白のスポットが生じたり、音声がひどく歪んだりする可能性があります。パケットロスは、ハッカーが攻撃に使用できるセキュリティ上の脆弱性でもあります。

パケットロスが発生するのはなぜですか?

パケットロスとは何かがわかったところで、次の質問は「なぜパケットロスが発生するのか?」ということです。

 

いくつかの要因がパケットロスを引き起こします。それらを理解することは、パケットロスを取り除く方法を理解する上で重要です。

 

一番の原因はネットワークの輻輳です。ですから、「なぜパケットロスがこれほど高いのか?」と自問したことがあるなら、ネットワークの輻輳は、最初に調査するものです。

 

輻輳は、限られた帯域幅を介して送信されるデータが多すぎるために発生します。たとえば、誰かがオンライン ゲームをプレイしていて大きなファイルをダウンロードしているときに VoIP通話を行っていると、ネットワークの速度が低下する可能性があります。

 

ピーク時に狭い道を車が行き交うのと大差ありません。これが発生すると、パケットはネットワーク経由で送信される順番を待つしかありません。

 

残念ながら、パケットの遅延が長すぎると、ネットワークはそれらを無視または破棄します。もちろん、これはパケットロスと高遅延につながります。

 

ネットワークハードウェアもパケット損失につながる可能性があります。これは、古いファイアウォールとルーターのパフォーマンスが低下した場合に発生し、ネットワーク全体の速度が遅くなる可能性があります。障害のあるケーブルでさえ、信号の流れを妨害することによってパケットロスに寄与する可能性があります.

 

古いファームウェアを使用したハードウェアは、新しい更新を使用したネットワークほど効率的にネットワークを処理できない場合があります。設定ミス、特にファイアウォールアクセスルールの設定ミスも、パケットロスに影響を与える可能性があります。

 

ワイヤレス接続の問題もあります。その便利さにもかかわらず、Wi-Fiは環境干渉の影響をはるかに受けやすく、パケットのドロップにつながります。 

 

ソフトウェアの重大なエラーも、不要なパケットロスを引き起こす可能性があります。たとえば、バグは予期しないネットワーク操作を実行し、輻輳を引き起こし、パケットのドロップを増やす可能性があります。最悪の場合、パケットロスの大きな要因であるセキュリティの脆弱性につながる可能性があります。

 

実際、パケットドロップ攻撃と呼ばれる特定の攻撃により、侵害されたルーターは無差別にパケットを失います。これは、ターゲットネットワークを妨害することを目的としたサービス拒否攻撃の一種です。これが起こっていることを示す兆候の1つは、パケットロス率の急激な上昇に気付いたときです。 

パケットロスを防ぐ方法

「パケットロスとは何か?」に答えたところで、今度はそれを回避する方法を考えてみましょう。

パケット損失を修正するためにユーザーができること

ハードウェアを確認する

最も簡単でわかりやすい手順は、ハードウェアの接続を確認することです。すべての配線が摩耗していないことを確認してください。また、使用するケーブルの種類も重要です。多数の同時接続を処理する小規模企業の場合は、Cat5または6 ケーブルをお勧めします。

インターネットプランをアップグレード

インターネットプランをより高い帯域幅にアップグレードしてみてください。組織の場合は、より優れたWANプロバイダーへの切り替えを検討してください。

堅牢なルーターを使用する

一定のパケット損失が発生している場合は、ハイエンドルーターへのアップグレードも検討する必要があります。

有線接続に切り替える

Wi-Fi接続を使用している場合は、有線接続に切り替えてみてください。それが不可能な場合は、ルーターの近くに身を置いて、信号の中断を最小限に抑えてみてください。また、ルーターの5GHz周波数と2.4 GHz周波数の間でデバイスのバランスをとって、輻輳を軽減してください。

重複するネットワークアクティビティの防止

重複を避けるために、ネットワークアクティビティのスケジューリングを検討してください。たとえば、勤務時間外にのみ大きなファイルをダウンロードするようにしてください。自宅にいる場合は、VoIP通話を最小限に抑えます。

パケットの優先順位付け

ルーターでパケットに優先順位を付けます。たとえば、VoIP通話の品質を向上させたい場合は、ルーターのファームウェアを設定して、DSCPクラス46パケットを優先します。

パケットロスを防ぐために開発者ができること

QoSツールを使用してパケット損失を監視する

パケットロスを減らす方法を理解する上で重要な部分は、適切な監視です。したがって、いくつかのネットワーク監視ツールとサービス品質 (QoS) ツールに投資するのが賢明です。これらの大きな利点は、リアルタイムでパケットロスを常にチェックし、過剰になった場合に即座に警告することです. また、パケットロスを分析してパターンを探すのに役立つログも提供します。

適応ビットレート制御

もう1つのソリューションは、ネットワークの状態に基づいてビデオ ストリームのビットレートを調整する適応ビットレート制御です。これは、定期的にパケットをルーターに送信して帯域幅の使用率を測定することによって行われます。優れたビデオ通話とは、一定のビットレートを維持し、パケット損失や遅延による中断がない通話です。

ビデオ アプリケーションは、高帯域幅の接続ではビットレートを上げ、低帯域幅の接続ではビットレートを下げることで、サービスの全体的な品質を向上させてきました。残念ながら、これはすべてのオーディオ アプリケーションで動作するわけではありません。これは、それぞれのレイテンシ要件が異なるためです。あなたができる最善の方法は、より高いオーディオビットレートを設定することです。これにより、ジッターが減少しますが、処理能力が高くなります。

Agoraを利用する

Agora の音声、ビデオ、およびメッセージングSDKを使用すると、開発者はリアルタイム エクスペリエンスを簡単に構築できます。これにより、パケットロスの影響が自動的に最小限に抑えられ、あらゆるアプリケーションでシームレスなコミュニケーション エクスペリエンスがユーザーに提供されます。組み込みが簡単なAPIと広大なパートナーエコシステムにより、ユーザーに音声、ビデオ、およびリアルタイムのメッセージを配信する機能を、迅速かつ費用対効果の高い方法で実現できます。

結論

パケットロスは、混乱を招く可能性があります。ファイルが正しくダウンロードされなかったり、ビデオが再生されなかったりすると、ユーザーはアプリケーションに不満を感じるでしょう。開発者は、パケットロスを減らし、ユーザーへの影響を最小限に抑えるリアルタイム エンゲージメントソリューションに投資することで、このフラストレーションを取り除くことができます。超低遅延、スケーラビリティ、および柔軟でインタラクティブな機能を備えた Agoraの信頼できる世界規模のカバレッジにより、パケットロスやジッターによる中断のないユーザー エクスペリエンスが可能になります。Agoraは、完全なリアルタイムエンゲージメントエクスペリエンスを構築するために必要なすべてを提供します。

ガイドブックダウンロード
ビデオ通話・ライブ配信API/SDK「Agora」

超低遅延API/SDK「Agora」ガイドブック

通話・配信遅延30-200ms!100万人の視聴対応!未経験者から専門家まで、誰でも読みやすいAgoraのガイドブックをダウンロードしませんか。

無料ダウンロード
ブイキューブ

執筆者ブイキューブ

Agoraの日本総代理店として、配信/通話SDKの提供だけでなく、導入支援から行い幅広いコミュニケーションサービスに携わっている。

関連記事

2023年02月07日

ジッター(ジッタ)とレイテンシー(レイテンシ):違い・原因・解決方法

  • Agora
  • 基礎知識
  • ライブ配信
  • ビデオ通話
※この投稿は、Agoraの日本総代理店であるブイキューブが、Agoraブログを翻訳した記事です。 ※一部、日本向けに調整しています。 私たちが利用するテクノロジーは、物理的な場所や距離がもはや障壁ではないグローバル コミュニティを生み出しました。急速に変化し、ますますデジタル化が進む世界では、リアルタイムコミュニケーションが不可欠です。 急速に変化するテクノロジーに加えて、世界的な出来事が過去数年間の経済を変えてきました。企業が直面する多くの課題の中で、変わらないものの 1 つは、対面でのコミュニケーションの必要性です。スムーズなリアルタイムコミュニケーションを実現することは非常に重要です。この重要な側面を提供できないと、ユーザーの不満を引き起こすだけでなく、最終的に収益の損失につながります。 競争力を維持するには、開発者が効率的なコミュニケーションに影響を与える要因を完全に理解していることが不可欠です。レイテンシとジッタの議論に参加してください。 リアルタイム通信の中断の最大の原因の2つは、ネットワークの遅延とジッタです。ジッタとレイテンシは、理解する上で非常に重要な違いです。両者にはいくつかの類似点がありますが (たとえば、どちらもネットワーク パフォーマンスに悪影響を及ぼします)、まったく異なる現象です。 アプリケーションがスムーズに動作するには、ジッタとレイテンシの両方を最小限に抑える必要があります。ジッタとレイテンシの違いを理解することは、適切なソリューションを見つけるための基本です。この記事では、ジッタと遅延の原因を理解し、両方を特定して監視する方法を理解し、リアルタイム通信を最適化できるようにそれらを削減するための戦略を概説します。

先頭へ戻る