Tcpreplay

home

Tcpreplay 概要/Tcpreplay Overview

概要/Overview

Tcpreplay は GPLv3 ライセンスの UNIX 用(Win32 は Cygwin 用)のユーティリティ群で、 事前に tcpdumpWireshark などでキャプチャされたネットワークトラフィックを 編集したり再送信したりできます。 また、クライアントやサーバで分類したり、Layer2/3/4 のパケットを書き換えたり、 最終的にはネットワーク上にあるいはスイッチやルータやファイヤーウォールや NIDS/IPS などの 別なデバイスにトラフィックを再送信することができます。 Tcprelay は sniffing(パケットキャプチャ)もインラインデバイスもテストできるよう、 1枚の NIC でも 2枚以上の NIC でも動作します。

Tcprelay はたくさんの FireWall、IDS、IPS、NetFlow、その他ネットワークベンダーで、 また、エンタープライズ、大学、研究所、オープンソースプロジェクトで利用されています。 もしあなたの組織で Tcpreplay を使っていたら、有用な機能を追加し続けることができるよう、 あなたがどんな人でどのように Tcpreplay を使っているかを教えてください。

Tcpreplay は NIC と連動して動作するように設計されており、Layer2 より下の層は処理しません。 TCP の pcapファイルを直接サーバに対して再送信できるよう、 Cisco の協力の元で Yazan Siam が tcpliveplay を開発しています ネットワークスタック全体とアプリケーションまでテストしたい場合には、 このユーティリティを使ってください。

version 4.0 では、IP Flow/NetFlow の装置のテストや チューニングの複雑さに対応するために機能拡張されました。機能拡張は下記を含んでます:

Version 4.0 は Fred Klassen により、そして AppNeta の支援の元でリリースされた 最初のバージョンです。Tcpreplay を作った Aaron Turner に感謝します。 新しいメンテナは、Tcpreplay が、通常は商用のネットワークテスト装置でしか 得られないようなパフォーマンスレベルになるよう努力します。

実行例/Examples

下記は、IP Flow アプライアンスに様々なパターンのトラフィックを生成するための tcpreplay の例です:

root@pw29:~# tcpreplay -i eth7 -t -K --loop 5000 smallFlows.pcap 
File Cache is enabled
Actual: 71305000 packets (46082655000 bytes) sent in 38.03 seconds.
Rated: 1201832266.1 Bps, 9614.65 Mbps, 1859629.17 pps
Flows: 1209 flows, 31.53 fps, 71215000 flow packets, 90000 non-flow
Statistics for network device: eth7
    Attempted packets:         71305000
    Successful packets:        71305000
    Failed packets:            0
    Truncated packets:         0
    Retried packets (ENOBUFS): 0
    Retried packets (EAGAIN):  0


root@pw29:~# tcpreplay -i eth7 --mbps=9500 -K --loop 5000 smallFlows.pcap 
File Cache is enabled
Actual: 71305000 packets (46082655000 bytes) sent in 38.08 seconds.
Rated: 1187499244.6 Bps, 9499.99 Mbps, 1837451.28 pps
Flows: 1209 flows, 31.15 fps, 71215000 flow packets, 90000 non-flow
Statistics for network device: eth7
    Attempted packets:         71305000
    Successful packets:        71305000
    Failed packets:            0
    Truncated packets:         0
    Retried packets (ENOBUFS): 0
    Retried packets (EAGAIN):  0


root@pw29:~# tcpreplay -i eth7 -tK --loop 50000 --netmap --unique-ip smallFlows.pcap 
Switching network driver for eth7 to netmap bypass mode... done!
File Cache is enabled
Actual: 713050000 packets (460826550000 bytes) sent in 385.07 seconds.
Rated: 1194660947.8 Bps, 9557.28 Mbps, 1848532.79 pps
Flows: 60450000 flows, 156712.44 fps, 712150000 flow packets, 900000 non-flow
Statistics for network device: eth7
    Attempted packets:         713050000
    Successful packets:        713050000
    Failed packets:            0
    Truncated packets:         0
    Retried packets (ENOBUFS): 0
    Retried packets (EAGAIN):  0
Switching network driver for eth7 to normal mode... done!

スクリーンショットのビデオ/Screencast Videos

Tcpreplay のスクリーンショットの動画の一覧は ここ にあります。 また、下記で全ての動画を見ることもできます。

役に立つリンク/Useful Links