メイン Link (MAC) Layer Settings MAC層でセグメントのシーケンス番号を出力させる方法について | 投稿するにはまず登録を |
題名 | 投稿者 | 日時 |
---|---|---|
MAC層でセグメントのシーケンス番号を出力させる方法について | musen | 2007/6/24 20:29 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について | hiro | 2007/6/24 21:05 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について | musen | 2007/6/24 22:44 |
» Re: MAC層でセグメントのシーケンス番号を出力させる方法について | mast | 2007/6/25 12:14 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について | musen | 2007/6/27 10:35 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について | mast | 2007/6/27 10:58 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について | musen | 2007/6/27 13:07 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について | mast | 2007/6/27 18:52 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について | musen | 2007/6/28 1:30 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について | mast | 2007/6/29 10:44 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について | musen | 2007/6/29 15:51 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について | mast | 2007/6/29 17:19 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について | mast | 2007/6/29 17:25 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について | musen | 2007/6/30 0:49 |
フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
mast | 投稿日時: 2007/6/25 12:14 |
一人前 登録日: 2005/4/7 居住地: 投稿: 93 |
Re: MAC層でセグメントのシーケンス番号を出力させる方法について 私ならこんな風にやるかなー、という程度ですが、以下、参考までに…
(改造を加えて動かしたわけではないのでちゃんと動作するかどうかは知りません) クロスレイヤ的な処理をする(他のレイヤの情報を使って特定レイヤの処理をする)には、まずはMessage構造体にレイヤ毎のヘッダ位置を保持するフィールドを持たせるのが一番手っ取り早いのではないかと思います。Linuxのパケットデータ構造であるソケットバッファ(struct sk_buff@include/linux/skbuff.h)がそんな感じになってるので、本気で実装する場合には参考になるかもしれません。例えば以下のような感じで出来そうな気がしないでもないです… ■1 message.hで、 Message構造体に各レイヤのプロトコルタイプ/ヘッダポインタを格納するフィールドを追加
■2 message.h/message.cppに以下の関数宣言/定義を追加
■3 各プロトコルが自身のヘッダをパケットに追加する(MESSAGE_AddHeader()等を呼び出す)箇所で、上記で新たにMessage構造体に追加したプロトコルタイプ/ヘッダポインタフィールドを設定 (以下はTCPの場合の例:TCPはMESSAGE_AddHeader()の呼び出しでヘッダを付けるのではないので注意)
■4 クロスレイヤ処理したい箇所で以下のようにして他レイヤのプロトコルヘッダを取得
|
フラット表示 | 前のトピック | 次のトピック |