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

パスワード:


パスワード紛失

新規登録
検索
メインメニュー
アクセスカウンター
2024/05/17:18/23
2024/05/16:22/24

2024/03/18より398/1407
人気モジュール
No.1: フォーラム 103
No.2: QualNet概要 3
No.3: ニュース 2
日曜日からの合計
人気Browser&OS
No.1:巡回ロボット83
No.2:Unknown OS1
No.3:Windows XP1

No.1:どっかの巡回ロボット74
No.2:Majestic-12巡回ロボット6
No.3:Google巡回ロボット3

日曜日からの合計
メイン
   Application Layer Settings
     アプリケーション層で設定した時間に通信が開始されない
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
beginner
投稿日時: 2012/2/28 19:33
半人前
登録日: 2011/10/10
居住地:
投稿: 30
アプリケーション層で設定した時間に通信が開始されない
こんにちは。

アプリケーションとしてHTTPを使っています。
HTTPクライアントが1台のみのシナリオで、クライアントのStart Timeを1秒に設定したにも関わらず、
シミュレーション開始から30秒くらいたたないと通信が開始されません。

また、HTTPクライアントを複数にしたときも同様の問題が起こります。
例えば「クライアント1、クライアント2、クライアント3・・・」の順で通信を開始するように
各端末のStart Timeを設定したにもかかわらず、その順番どおりにならないことがあります。


HTTPによる通信を開始する時って、

(シナリオ作成時)HTTPのStart Timeを設定

(シミュレーション開始後)まずapp_http.cppの中の関数AppHttpClientInit()で、
関数APP_TcpOpenConnectionWithPriority()に、Start Timeを引数のひとつとして渡す

app_util.cppで、先ほど呼ばれた関数APP_TcpOpenConnectionWithPriority()の中の
関数MESSAGE_Send()に
Start Timeを引数のひとつとして渡す

Start Timeだけ待ってから通信開始

・・・という流れかと思うのですが、これ以外に何か、時間がかかってしまう処理があるということなのでしょうか?


ご回答、よろしくお願いします。
hiro
投稿日時: 2012/2/29 9:30
長老
登録日: 2005/7/16
居住地:
投稿: 452
Re: アプリケーション層で設定した時間に通信が開始されない
ルーティングはどうなっていますか。
beginner
投稿日時: 2012/2/29 10:46
半人前
登録日: 2011/10/10
居住地:
投稿: 30
Re: アプリケーション層で設定した時間に通信が開始されない
ルーティングプロトコルは、以下のようになっていました。
意図されているものと違ったらごめんなさい。

#********************ROUTING PROTOCOL***********************************

ROUTING-PROTOCOL BELLMANFORD
STATIC-ROUTE NO
DEFAULT-ROUTE NO
HSRP-PROTOCOL NO
hiro
投稿日時: 2012/2/29 11:35
長老
登録日: 2005/7/16
居住地:
投稿: 452
Re: アプリケーション層で設定した時間に通信が開始されない
ROUTING-PROTOCOL BELLMANFORD は問題ないですね。
では、次の確認です。
有線ですか、無線ですか。
beginner
投稿日時: 2012/2/29 12:50
半人前
登録日: 2011/10/10
居住地:
投稿: 30
Re: アプリケーション層で設定した時間に通信が開始されない
無線LANで、無線端末がHTTPクライアント、有線端末がHTTPサーバになっています。
なお、アクセスポイントと有線端末は、HUB(MACプロトコルをSWITCHED-ETHERNETに設定)で中継されています。
hiro
投稿日時: 2012/2/29 13:29
長老
登録日: 2005/7/16
居住地:
投稿: 452
Re: アプリケーション層で設定した時間に通信が開始されない
> HUB(MACプロトコルをSWITCHED-ETHERNETに設定)で中継されています。
あらっSWITCHは使ってはなくって、普通のHUBですか。
うーん... SWITCHだと予想としていたのですが...
試しにHTTPではなくって、
CBRを開始1秒で1秒間隔、シミュレーション終了まで実行すると、
CBR Server,First Packet Received at (s)
は何秒になりましたか。
beginner
投稿日時: 2012/2/29 13:59
半人前
登録日: 2011/10/10
居住地:
投稿: 30
Re: アプリケーション層で設定した時間に通信が開始されない
・HUBについて

SWITCHを使っていない理由は、多数の有線端末を想定したとき、
GUIにより一括でSWITCHにつなげることができないためです。
configファイルを編集すればできなくはないのですが、GUIのほうが楽だったので…。

HUBをSWITCHED-ETHERNETと設定すれば大丈夫だと思っていましたが、
これだと通常使用されるSWITCHとは全く別物になってしまうのでしょうか?


・CBRについて

ご指示のとおり、HTTPの場合と同じトポロジで、有線端末から無線端末へ
CBR通信をするシナリオを作成してみました。(開始1秒で終了25秒、1秒間隔)

以下は実行結果(stat)の一部です。

1, ,[1024], Application, CBR Server,First Packet Received at (s) = 1.000741289
1, ,[1024], Application, CBR Server,Last Packet Received at (s) = 24.000321289

ちなみにクライアント側は、

2, ,[1024], Application, CBR Client,First Packet Sent at (s) = 1.000000000
2, ,[1024], Application, CBR Client,Last Packet Sent at (s) = 24.000000000


どうやらCBRの場合は設定どおり動いているようですね…
hiro
投稿日時: 2012/2/29 14:46
長老
登録日: 2005/7/16
居住地:
投稿: 452
Re: アプリケーション層で設定した時間に通信が開始されない
> これだと通常使用されるSWITCHとは全く別物になってしまうのでしょうか?
通常使用されるSWITCHというのが、
具体的にどのような機能を想定しているのか、わかりませんが、
QualNetにおけるHUBとSWITCHの機能の詳細は、
pdfドキュメントで確認するしかないです。

CBRは正常で、HTTPがおかしいとなれば、HTTP固有の問題ですね。
HTTPは、CBRのようにパケットの受信時刻が.statに出ませんけど、
具体的にはどのように確認したのでしょうか。
app_http.cppにログを追加した?
beginner
投稿日時: 2012/2/29 17:21
半人前
登録日: 2011/10/10
居住地:
投稿: 30
Re: アプリケーション層で設定した時間に通信が開始されない
hiroさんのおっしゃるとおり、app_http.cppにログを追加しました。

具体的には、関数AppHttpClientProcessReplyPacket()で、WEB1ページ当りの
ダウンロードに要した時間を表すcurrentPageRequestTimeを、現在時刻とともに出力しています。

その結果、開始が1秒となるようにHTTPの設定を行ったにもかかわらず、
30秒辺りで1ページ目を受信しており、そのときのcurrentPageRequestTimeは1秒ほどでした。
hiro
投稿日時: 2012/2/29 17:45
長老
登録日: 2005/7/16
居住地:
投稿: 452
Re: アプリケーション層で設定した時間に通信が開始されない
簡単なシナリオ作って確認してみましたが、
AppHttpClientProcessReplyPacket 1.010129303 sec
currentPageRequestTime 0.007568412 sec
となりました。
特におかしな動作はしていないです。

シナリオの現物を見てみないとわからないですね。
(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ
Copyright c KOZO KEIKAKU ENGINEERING Inc. All Rights Reserved.
XOOPS Cube PROJECT