2012-03-28 21 views
1

私は再生するpcapファイルを持っています。タイムスタンプを含めるようにパケットペイロードを書き直したい。 tcpreplayまたはtcprewriteでどうすればいいですか?デフォルトのオプションはありますか、それとも自分自身で実装するべきですか(tcpreplayの変更)?私はしばらくの間、これらのページを読んでいて、Googleも私を助けませんでした。事前のおかげでTCPREPLAYでパケットペイロードにタイムスタンプを追加する

PS:データが重要な上書きが罰金されないので、私は、パケットの元のサイズを変更する必要はありません。パケットサイズを変更するオプションだけがあれば、それも問題ありません。あなたは、コードを自分で書く必要があるだろうので、編集の種類は、tcpreplay/tcprewriteによってサポートされていない

答えて

2

。あなたのパケットデータが壊れていても構いません(あなたのように聞こえますが)、それはtcpedit.cを編集することでかなり簡単になるはずです。

+0

応答に感謝します。頻繁なシステムコールのために転送のパフォーマンスが大幅に低下しますか?依存...はgettimeofdayを( – tartar

+0

まあは)ほとんどのシステムでは非常に高価でしたが、物事はここ数年大幅に改善しています。たとえば、LinuxはBIOSコールをHPETに切り替えました。これはずっと高速です。ちょうど4バイトのUNIXエポックタイムスタンプをmemcpy()経由でパケットに入れているとすれば、かなり高速で低オーバーヘッドになります。より高い精度を望むなら、それはより多くのバイトであり、潜在的にはより多くの仕事/オーバーヘッドですが、実際はあなたの実装に依存します。長い話を簡単に言えば、ほとんどの状況で実際のパフォーマンスに気付かないでください。返信をありがとう。 –

1

あなたはコマンドラインツールにバインドされていない場合は、チェックアウトnetdude。数回クリックするだけでパケットトレースを編集できるGTKアプリケーションです。ここで

は、TCPヘッダフィールドを編集するためのダイアログを表示スクリーンショットです。

TCP header editing http://netdude.sourceforge.net/screenshots/0.4/shot-1.gif

添付ライブラリlibnetdudeはnetdudeのコアです。 netdudeが提供するGUIがあなたのニーズを満たしていない場合は、独自のツールを記述してください。

+0

私はgpbsトラフィックを再生する必要があります。 libnetdudeとtcpreplayのパフォーマンスを比較します。 – tartar

+0

この場合、[Click](http://www.read.cs.ucla.edu/click/click)は、問題規模に適した選択肢です。 – mavam

+0

実際これはクリックルータへのトラフィックジェネレータになります。私はクリックジェネレータにタイムスタンプを含めることを選択します。これは、クリックマシンでより良いppsを得るためにクリックを期待していますが、どのようなパフォーマンスがクリックでタイムスタンプを得るのかはわかりません。 – tartar

関連する問題