• 締切済み

パケットの送信制御について

現在、ネットワークの研究をしているのですが、PCから送信されるパケットの送信の時刻や間隔を制御したいと考えています。そこでwindows系でもLinux系でもよいのですがパケットを送信する際に任意のタイミングで送信するようにするにはどうしたらよいのでしょうか?

みんなの回答

回答No.3

送信間隔が 1秒前後なら、ユーザプロセスでusleep(2)を使って 制御できると思います。1/10秒とか1/100秒のオーダでは、ユーザプロセスでは難しくなりますが、カーネル空間で動く専用のドライバが書ければおそらく可能と思います。それよりも短い間隔なら、専用の機器が必要になるかもしれません(Smartbitsや、Anritsu MD1230シリーズ等)。 別のアプローチとして、リンク先にある産総研の "PSPacer" が使えるかもしれません。元々PSPacerはLinuxホストが送信するトラフィックについてバーストを抑えて平滑化(いわゆるシェイピング)するためのものですが、やっていることは送信間隔時間が一定よりも小さくならないように制御することなので、うまく工夫すれば目的のことが達成できるかもしれません。

参考URL:
http://www.gridmpi.org/gridtcp.ja.jsp
noname#96023
noname#96023
回答No.2

どの位の精度なんですかね winodwsで完全に制御するためにはドライバから書かなければならないはずです。(バッファがあるので任意のタイミングにならないはず) linuxならrawソケットである程度の精度が出せると思います。とは言え1/100secで制御したいと言われたらどうしたものか。。。

noname#98978
noname#98978
回答No.1

バッチやシェルスクリプトで時刻起動すればいいでしょう。

関連するQ&A