問題タブ [omnet++]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
omnet++ - OMNeT++: .cc クラス定義の変更がシミュレーションに適用されない
非常に単純なネットワークを構築しました (TicToc の例に似ています)。私の問題は、定義されたクラスの 1 つの .cc ファイルを変更すると、シミュレーションを実行しても変更が適用されないことです。具体的には、メッセージの文字列名を変更しましたが、効果はありません。
TicToc の例に戻って、.cc ファイルで同様の変更を行うと、変更は完全に適用されます。
問題は make ファイルのビルドなどにあると感じています。プロジェクトをゼロからビルドする方法はありますか?
execution-time - Omnet 実行時間 / CPU 時間
OMNeT++ でのシミュレーションの CPU (または実行) 実行時間をテストしようとしています。シミュレーション後の実行時間を確認できるパラメーターまたはログファイルはありますか?
「CPU-limit-time」パラメーターを見つけたので、探しているものも存在するに違いないと思いますが、これまでのところ運がありません;)
どうぞよろしくお願いいたします。
lambda - omnet++ M/M/1 キューの長さ
無限のキュー、指数関数的な到着間隔、およびサービス レートを使用して、MM1 キュー クラシックをシミュレートしようとしました。私の問題は、統計を通じてキューの平均長を計算するときです。理論的には、到着率 lambda = 1/20 およびサービス率 mu = 1/5 を使用して、rho = lambda/mu = 1/4 および E[キュー内のユーザー数] を考えると、1/6 の平均キュー値を実験する必要があります。 = ロー^2/(1-ロー) = 1/6. 5000 の sim-time-limit のシミュレーションでは、1/2 の値が得られました。他のすべての統計 (応答時間、待機時間など) は正しいため、理由がわかりません。
前もって感謝します。
c++ - omnet ++でn(ユーザーから取得したn)ノードのネットワークを作成する
私は OMNET++ を使用してロケーション プライバシーのプロジェクトに取り組んでいます。最近、2 つのノード (Tic-Toc ゲームなど) のネットワークを開発し、それをユーザーの要件に応じて 2 ノードから n ノードまで変化する実際のネットワークに変換したいと考えています。
これは 2 つのノードの構造です。
nノードに対してそれを行うにはどうすればよいですか?? OMNET++ で (ユーザーから) n を入力するにはどうすればよいですか??
どなたかお願いします...
c++ - omnet++ でクライアント/サーバーのシナリオをシミュレートしたいですか?
OmNET++ を使用して、ノード ( ) が他のノード ( / サーバー)client1
にデータの要求を送信するネットワークをシミュレートしたいと考えています。client2
この要求に対して、そのノード ( client2
/ サーバー) は、データを含む UDP パケットを送信することによって応答を返します。OMNeT++ で UDP 要求を作成してから、この要求を満たすために UDP パケットを作成するにはどうすればよいですか?
omnet++ - イーサネットを介した RREQ 受信メッセージの転送 [OMNET++ および INET]
RREQ パケット (MANET シミュレートされたネットワーク経由で受信) をイーサネット インターフェイス経由で転送しようとして困っています。私が探しているのは、(ワイヤレスインターフェイスから受信した)上記のパケットを、イーサネット経由で直接接続されている別のホストに送信する方法です。
ホスト A のワイヤレス インターフェイスからパケットを受信するとします。ホスト A には、ホスト B に直接接続されたイーサネット インターフェイスもあり、そのパケットをイーサネット インターフェイス経由で転送して、ホスト B がそのイーサネット インターフェイス経由でこのパケットを受信できるようにします。
そのためにどの関数を使用すればよいかわかりません。
私が取り組んでいるプロジェクトは大きなものなので、質問に答えるためにコードが必要になったらすぐにコードを含めます。
編集:
したがって、最終的な目標は MANET ネットワークにワームホール攻撃を実装することです。簡単に言うと、ワームホール攻撃には、高速接続、つまりイーサネットを介して直接接続された 2 つの攻撃者 (ATTACKER_A と ATTACKER_B) が関与します。ATTACKER_A の近隣が RREQ を送信し、ATTACKER_A がそれを受信するとすぐに、RREQ をネットワークで単にブロードキャストする代わりに、イーサネットを介して ATTACKER_B に転送します。ATTACKER_B が RREQ を受信すると、無線で RREQ を近隣に転送し、AODV manet ネットワークの通常のノードとして機能します。
その結果、ATTACKER_A の近隣は、ATTACKER_B の近くにあるホストがそれ自身の近隣の一部であると考えるようにだまされ、ネットワークの 2 つの離れた部分の間にワームホールが作成されます。
実際、理論はそれほど複雑ではありません。
これがネットワークスキーマです
これが SimpleWormhole.ned です。
NA_ATTACKERADHOCHOST は、他の ned ファイルから連続して継承する ned ファイルです。継承チェーンを振り返ると、最初の ned ファイルは、イーサネット ゲートに関連する部分を含む NA_NODEBASE であることがわかりました。
NA_NODEBASE.ned
最後に、攻撃者は AODV プロトコルの実装を使用します。これを機能させるには、コードを編集する必要があります。コードは INET フレームワークから取得されます。
ワームホールの動作を実装するために編集する必要がある貴重な関数を見つけるために、すべての aodv コードを検索したところ、おそらくこの関数の一部をここで変更する必要があることがわかりました。
NA_AODV_rreq.cc
ご覧のとおり、本当の問題はすべてのコードが AODV ソース ファイル内にあることです。モジュール性の高さの原因は、それを実装する正しい方法を探すのに苦労しています。また、ドキュメントの欠如はまったく役に立ちません。