Japan QualNet Community Forums Japan QualNet Community Forums
Welcome Guest 
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
検索
メインメニュー
アクセスカウンター
2024/04/30:13/15
2024/04/29:22/24

2024/03/01より293/1375
人気モジュール
No.1: フォーラム 41
日曜日からの合計
人気Browser&OS
No.1:巡回ロボット44

No.1:どっかの巡回ロボット43
No.2:Majestic-12巡回ロボット1

日曜日からの合計
メイン
   Routing Settings
     ODMRPのデータ受信時の動き
投稿するにはまず登録を

題名 投稿者 日時
 » ODMRPのデータ受信時の動き yonah_air 2008/5/11 20:06
     Re: ODMRPのデータ受信時の動き ipoten 2008/5/28 18:54
フラット表示 前のトピック | 次のトピック
投稿者 スレッド
yonah_air
投稿日時: 2008/5/11 20:06
新米
登録日: 2007/7/21
居住地: 福島
投稿: 8
ODMRPのデータ受信時の動き
使用しているQualNetは、3.9.5です

ODMRPでは、通信経路となったノード間でデータフラッディングを行うことで、複数目的ノードへデータの中継を行います。
そのため、任意のノードがデータパケットの中継処理の過程で同一Sequence numberのデータパケットを受信した場合、中継処理を行わずにパケットの破棄を行います。
実際に重複受信した場合のところに「puts("Data重複")」とコードを入れても"Data重複"とは出力されません。しかし、ブロードキャストストリームが起こっている様子はありません。どこで、Dataパケットの重複を検知しているのでしょうか?処理が行われている箇所に心当たりがあれば、ご指摘をお願いいたします。


/* Dataパケット受信時の処理 */
static void OdmrpHandleData(Node* node, Message* msg)
{
  〜パケットのキャスト及び、その他の処理〜

  /* 同一Sequence Numberパケット受信有無の確認 */
  if (!OdmrpLookupMessageCache(srcAddr, option.seqNumber, &odmrp->messageCache))
  { /* 重複受信していなかった場合 */

    /* Sequence Numberの受信記録をとる */
    OdmrpInsertMessageCache(odmrp, node, srcAddr, option.seqNumber, &odmrp->messageCache);
    〜 Data受信時の処理 〜
  }
  else
  { /* 重複受信した場合 */
                          ←ココに「puts("Data重複")」と入れても出力されない
    /* 何も処理を行わず、パケットを破棄 */
    MESSAGE_Free(node, msg);                           
  }
}
フラット表示 前のトピック | 次のトピック
Copyright c KOZO KEIKAKU ENGINEERING Inc. All Rights Reserved.
XOOPS Cube PROJECT