LoginSignup
2
7

More than 5 years have passed since last update.

Network > 設計 > 意図的にパケットロスを起こす仕組み > 機能の所在 > VMWare: パケットロス機能 | Linux: tcコマンド, dummynet | ケーブル切替器 | Raspberry Pi:遅延・パケットロス生成エミュレータ

Last updated at Posted at 2017-02-08
動作環境
C++ Builder XE4

UDP通信でのパケットロスの対処に関して、実際にパケットロスを生じさせる必要がある。

方法1

途中にパケットロスを発生させるソフトを置く方法。

![](http://yuml.me/diagram/class/[Client]<-->Port A[パケットロス by ソフト],[パケットロス by ソフト]<-->Port B[Server])

  • 利点
    • Client, Serverソフトともに変更しなくて良い
    • 様々なソフトの組合せに使える
  • 欠点
    • Clientの接続先(IPアドレスもしくはポート番号)変更が必要

方法2

Clientにパケットロスを起こさせるクラスを実装して使う。

![](http://yuml.me/diagram/class/[Client|パケットロス機能]<-->Port A[Server])

  • 利点
    • 接続先(IPアドレスもしくはポート番号)を変更しなくて良い
    • Serverソフトは変更しなくて良い
  • 欠点
    • Clientソフトを変更する必要あり

追加で学んだこと

@tenmyo さんのコメントにてパケットロスを発生させる様々な提案をいただきました。

情報感謝です。

さらに色々教えていただきました

@mistymagich さんのコメントにてRaspberry Piでの遅延・パケットロス発生用エミュレータを紹介いただきました。

2
7
6

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
7