1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

clumsy を使った不安定なネットワーク環境下のテスト

1
Posted at

clumsy を使った不安定なネットワーク環境下のテスト

概要

とあるクライアント端末と、Windows PC上に構築したサーバーとの通信テストにあたり(いずれも同一LAN内に存在する)、不安定なネットワーク環境を準備する方法がわからず調査したところ、clumsy というツールを使うことで手軽に環境を作ることができたので、簡単に紹介する。
本記事では利用できる機能の詳細は解説しないため、公式ページを参照のこと。

clumsy とは

  • 公式ページ: https://jagt.github.io/clumsy/index.html
  • Windows PC上で不安定なネットワーク環境を作り出せるGUIアプリ
  • TCP/IP ベースのプロトコルの通信について、ラグやパケットロス、スロットリングなどを簡単に設定できる。プロダクションコードを修正したり、複雑な環境構築は不要
  • 使い方はzipファイルをダウンロード・解凍後、exeファイルを管理者権限で実行し、設定画面でテスト条件を設定するだけ

設定例

TCP通信のうち、サーバーが送信する情報(クライアントから見ると受信する情報)にパケットロスを発生させたい場合:

  1. Filteringtcp.SrcPort == 443 を設定
  2. FunctionsDrop にチェックを入れ、発生確率を Chance に入力
  3. Start ボタンを押す

これにより該当の環境を再現できる。

clumsyの設定画面

なお、この例の場合、tcp.SrcPort == 443 に一致するパケットはOutbound方向にしか存在しないため、DropのInboundにチェックを入れても特に意味はない

所感

TCP/UDP・ポート番号・IPアドレスといった粒度での指定となるため、以下のようなテストはできない

  • プロセス単位での指定
  • 同一Function内でInbound/Outboundに異なるChance値を指定

手軽に使える一方で、複雑な条件のテストをしたい場合は向いていないと感じた。

1
0
0

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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?