メイン Scenario Setup & Configuration データパケットがマルチホップした経路を【Output Window】に出力させたい | 投稿するにはまず登録を |
題名 | 投稿者 | 日時 |
---|---|---|
データパケットがマルチホップした経路を【Output Window】に出力させたい | gogotea | 2012/1/20 16:04 |
» Re: データパケットがマルチホップした経路を【Output Window】に出力させたい | hed | 2012/1/20 16:41 |
Re: データパケットがマルチホップした経路を【Output Window】に出力させたい | gogotea | 2012/1/20 18:31 |
フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
hed | 投稿日時: 2012/1/20 16:41 |
一人前 登録日: 2006/7/3 居住地: 京都 投稿: 81 |
Re: データパケットがマルチホップした経路を【Output Window】に出力させたい ぱっと思いついたのは以下の方法です。
-------------------------------------- (1) パケットに情報を追加する方法 (1-1) Transportからの受信時、転送時、Transportへの送信時に以下の情報をセットにしてパケットにMESSAGE_AddInfoなどで追加 ・時刻 ・IPアドレスやノードID (1-2) Transportへの送信時(Destinationでの受信時)に(1)で追加した情報を時系列にprintfなどする -------------------------------------- (2) 都度情報を出力する方法 (2-1) Transportからの受信時、転送時、Transportへの送信時に以下の情報をprintfなどで出力 ・データの識別子(シーケンス番号など) ・時刻 ・IPアドレスやノードID (2-2) 時系列で出力された情報を解析し、SrcからDstまでの経路を調べる -------------------------------------- (1)は出力は簡単ですがMessageに可変長の情報(何ホップになるかわからないので)を追加したりする必要があります。最大ホップ数がわかっていればその分まとめてメモリを確保しておけば済む話ではありますが。 Messageへの情報追加はProgrammersGuideに必要な情報はすべて書いてあります。あとQualNetHacksのMessage編も結構わかりやすかったです。 (2)は後から解析する際にデータの識別子などが必要になるかと思います。(1)と同様に自分で追加するかApplication等でふられている情報を覗き見て出力するかする必要があります。 プログラム的に簡単なのは(2)だと思います。 またTransportからの受信時、転送時、Transportへの送信時に該当する関数は以下の関数あたりからたどれば見つかるかと思います。 ・Transportからの受信時:NetworkIpReceivePacketFromTransportLayer ・転送時:ForwardPacket ・Transportへの送信時:SendToUdp これ以上の情報はありませんが、頑張ってください。 |
フラット表示 | 前のトピック | 次のトピック |