問題タブ [inet]
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++ - 外部インターフェースは OMNETPP/INET でどのように機能しますか?
ここ数日、非常に単純なネットワークを構築して実行しようとしましたが、役に立ちませんでした (構築しようとしているネットワークのほとんどは、extServer の例から借用したものです)。IPアドレス、ルートなどの構成に関係なく、機能させることができないようです。
多くの人が苦労しているのを見てきましたが、どこにも解決策が投稿されていません。INET の Emulation フォルダにある readme ファイルは、役立つというよりはややこしいものです。したがって、次の単純なネットワークを機能させるためにあなたの助けが必要です.
私が構築したいネットワーク (これ以上簡単なことはありません):
私のセットアップ:
ソフトウェア:
- PCAP が有効な OMNET++ 4.6。
- INET 統合ヘッド (私が気に入っているいくつかの機能が含まれています)。
- PCAP が有効な OMNET++ 4.6。
OS:
OMNET++ をホストするゲストとしての VirtualBox の Xubuntu。Virtualbox を使用する理由は、Host Win 7 マシンが「cSocketRTScheduler: could not set socketopt for raw socket.」というエラーで外部インターフェイスの例を実行することを拒否するためです。ソースを少し変更し、WSAGetLastError 関数を使用すると、「要求されたアドレスはそのコンテキストでは無効です。」という問題が解決されました。
VirtualBox に戻る :) Xubuntu には、IP アドレス 10.0.0.1 とネットマスク 255.255.255.0 のホストオンリー ネットワークに設定されたネットワーク インターフェイスが 1 つあります。
omnetpp.ini での標準ホスト設定:
標準ホストは、extServer の例と同じ server.mrt を使用しています。
router.mrt は次のとおりです。
このネットワークを機能させる方法についてのアイデアは大歓迎です。機能する場合は、後で拡張したいと考えています。また、ステップバイステップのスタイルで提案があれば幸いです。
前もって感謝します。
c++ - OMNeT++ でのシミュレーション中にネットワークの構成を変更するには?
OMNeT++ で要素の.iniファイルのいくつかのパラメーターを変更したいと考えています。たとえば、ノードが制御メッセージを受信するときなど、シミュレーションの実行中にノードの伝送速度を変更したいと考えています。
一部の変数= ${複数の値}として記述された構成を何らかの方法でループすることが可能であるという情報を見つけましたが、 .iniファイルには条件句がなく、それらのファイルに C++ 関数からのデータを渡す方法はありません (私は心配です)。
私は INET を使用していますが、他のモデルのユーザーはすでにこのような問題に悩まされているかもしれません。
omnet++ - omnet - Inet - ノードの送信順序を決定する要因
送信シーケンスに関して一般的な質問があります。INET -> 例 -> manetrouting -> dynamicNodeCreation では、どのノードがビーコン送信を開始する必要があるかをどのように決定しますか。そして、送信する次のノードはどのように選択されるのでしょうか。
初期化関数の getIndex() が送信ノードの選択に使用される tic-toc の例を試してみました (例: txc10.cc)。しかし、私は INET の例でそのような機能を理解していません。
ビーコン占有マップ ベクトルとして、ビーコン送信用のそれぞれのノードを選択する方法はありますか?
ビーコン占有マップ ベクトルとして、ビーコン送信用のそれぞれのノードを選択できる方法はありますか。
この問題について包括的でないことをお許しください。
c++ - omnet++ による関数のオーバーライド
omnet ++に含まれるクラスから関数をオーバーライドする方法は?
C++ で行っているように関数をオーバーライドしようとすると、再定義エラーが発生します。
「handleMessage(cMessage *msg)」の再定義
これは現在のコードです:
omnet++ - 2 つの TCP 輻輳制御アルゴリズムの実装
まず、この質問に対する適切なフォーラムではないことをお詫びします。論文のために OMNeT/INET に 2 つの tcp 輻輳制御アルゴリズムを実装しようとしています。
最初のものは TCP-FIT で、 http://www.tcpengines.com/wp-content/uploads/2013/11/tcp-whitepaper.pdfで疑似コードを見つけました。もう 1 つは TCP-Illinois で、その Linux 実装をhttp://lxr.free-electrons.com/source/net/ipv4/tcp_illinois.cで見つけました。
両方のメカニズムでいくつかの変数とメソッドを実装する方法がわかりません。それらを理解するためにあなたの助けをいただければ幸いです。変数の型についても少し助けていただければ幸いです。
簡単に言うと、TCP-FIT の場合:
- epoch_startとupdate_epoch (エポックが RTT と同義であることは理解しています)
- アルファ(値)
- n - それは何ですか?
- RTT_cnt の計算は正しいですか ( receivedDataAck() の下)?
- tcpFitUpdateN() 関数は正しいですか?
- 疑似コードを正しく実装しましたか?
TCP イリノイの場合:
- snd_cwnd_cnt -- これは、ACKED されたパケットの数の単なるカウンターだと思います。
- snd_cwnd_clamp -- 輻輳ウィンドウの上限です。私は正しいと思います。
- end_seq -- 必要なようですが、関数tcp_illinois_cong_avoid (struct sock *sk, u32 ack、u32 acked) {...}
- tp->snd_nxt -- OMNeT++ の state->snd_nxt と同等ですか?
- sum_rttとmax_rtt -- これらの値を正しく計算できますか?
私の理解では、Linux 実装で提供されている論文を読んだ後、TCP-Illinois は AIMD 部分を除いて TCP-NewReno と同じように機能しています。これは、TCP-SACK 部分と AIMD を除いて、TCP-NewReno のほとんどのコードをそのまま維持できることを意味するに違いありません。
また、実装に関するヒントや、もちろんコードの正確性に関するコメントもいただければ幸いです。私の現在のほぼ完全な実装は、https://github.com/SpyrosMArtel/TCP-Fit-Illinoisの github にあります。
詳細や説明が必要な場合は、お気軽にお問い合わせください。
前もって感謝します。
c++ - omnet++ で AODV プロトコルを使用してリプレイ攻撃を実装するには?
リプレイ攻撃を行う悪意のあるノードで AODV ネットワークをシミュレートする C++ コードのスニペットが必要です。これを OMNet++ プロジェクトに埋め込む必要があります。
OMNet++ のサンプル プロジェクトで元のコードを変更しようとしましたが、出発点に戻ってしまいました。
助けを見つけるのは素晴らしいことです。
文字数がかなり長いため、サンプル コードを含めることはできません。これまでの試行を確認する必要がある場合は、プロジェクトを共有できる場所を教えてください。