問題タブ [network-protocols]

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.

0 投票する
2 に答える
17884 参照

networking - ネットワーク パフォーマンスの測定方法 (ネットワーク プロトコルのベンチマーク方法)

まず、背景を少し。リポジトリのサイズや操作速度のベンチマークを比較する分散バージョン管理システム (DVCS) のさまざまな比較があります。「クローン」、「プル」/「フェッチ」、「プッシュ」などのネットワークを含む操作 (コマンド) の速度を測定する以外に、さまざまな DVCS と使用されるさまざまなプロトコルのネットワーク パフォーマンスをベンチマークするものは見つかりませんでした。

では、そのような比較をどのように行うかを知りたいです。アプリケーションのネットワーク パフォーマンスを測定する方法、またはネットワーク プロトコルをベンチマークする方法。ここでは、特に、ネットワークの帯域幅とネットワークの遅延 (ping 時間) の両方に対するパフォーマンスの依存度を測定することを想定しています。一部のプロトコルは、最小限の必要な最終「パック」を送信するために、より多くのラウンドトリップ交換 (ネゴシエーション) の形でレイテンシーを犠牲にします。

可能であれば、1 台のコンピューターのみを使用するソリューションを希望します。Linux で動作するオープン ソース ソリューションを見たいと思っています。しかし、より一般的な回答も歓迎します。

推奨 OS: Linux
推奨言語: C、Perl、シェルスクリプト


可能な測定:

  • 1 つのセッションでサーバーからクライアントへ、およびクライアントからサーバーへ転送された合計バイト数。これは、プロトコルのオーバーヘッド(帯域幅)を測定するためにも使用できます。
  • 1 回のトランザクションでの往復 (接続) の回数(レイテンシ)
  • ネットワーク帯域幅およびネットワーク遅延 (ping 時間) からのネットワーク操作速度 (クローン/プル/プッシュにかかる時間) の依存性

そのような測定(ベンチマークなど)を行う方法は?


2009 年 2 月 6 日追加:
最も単純なベンチマーク (測定) は、コマンドのネットワーク バージョンですtime。つまり、コマンドを実行すると、転送されたバイト数と、特定のコマンドの実行中の往復/ネットワーク接続の数がわかります。


2009 年 9 月 6 日追加:コマンドのネットワーク バージョンの上記のソリューションの架空の出力
timeは、次のようになります。

これは単なる出力例であり、取得したい情報の種類を詳述していることに注意してください。


09-06-2009 追加:ネットワーク プロトコルをテストするためのツール (元々) であるdummynet
を使用して、私が望むもののいくつかを達成できるようです...

0 投票する
1 に答える
1978 参照

authentication - Kerberos の認識/実際の利点は何ですか? この技術に代わる実行可能な代替手段はありますか?

アーキテクチャでケルベロスを利用することを計画しています。この技術が持つ認識されている、または実際の利点と、代替手段があるかどうかを知りたいです。

.net クライアント側と Java サーバー側があることに注意してください。通信はメッセージング バスと SOA を介して行われます

0 投票する
5 に答える
390 参照

tcp - tcp 接続の開始を介したプロトコルの開始操作の最適化

私は DITP と呼ばれる新しいプロトコルを設計しています。これは、トランスポート層として TCP を使用する接続指向のプロトコルです。一般的なインターネット プロトコルでは、TCP 接続が確立されると、サーバーはクライアントの応答に対してグリーティング メッセージを送信することから開始し、最終的に最初の要求を送信します。

最初のプロトコル トランザクションを逆にすることで、1 回の往復時間を節約できることがわかりました。クライアントは、最初の要求に続いてグリーティングを送信することから始めます。

次の図は、2 つのプロトコル トランザクションのタイミングの比較と、1 回の往復時間を節約する方法を示しています。

共通プロトコルとDITPプロトコルの比較
(出典: disnetwork.info )

詳細な説明については、次のブログ ノートを参照してください。 http://www.disnetwork.info/1/post/2008/08/optimizing-ditp-connection-open.html

StackOverflow のネットワーク プログラミングの専門家に 2 つの質問がありました。

  1. この仮定は正しいですか?

  2. 一般的なプロトコルがこれを使用しないのはなぜですか?

この方法は、通信遅延が大きく、接続が頻繁に確立される長距離接続のパフォーマンスを大幅に最適化することができます。HTTP は良い候補でした。

編集:おっと大きな間違い。HTTP は、クライアントが要求を直接送信する最適化された方法を使用します。SMTP のようなグリーティング トランザクションはありません。ウィキペディアのHypertext Transfer Protocolページを参照してください。

0 投票する
4 に答える
5689 参照

dns - 直接 DNS ルックアップを行うコード

DNS 値をさまざまな方法で追跡するための実験を実行することを考えています (変更頻度など)。これを行うには、DNS 要求をサーバーに直接送信できる必要があります。これにより、1) どのサーバーから送信されたかがわかります。2) 複数のサーバーからの応答を要求できます。3) ローカル OS の実行キャッシュを回避できます。 .

DNS サーバーに直接クエリを実行できるライブラリ (優先順で c#、D、C、C++) を知っている人はいますか? それができない場合、そのようなシステムを実装できる DNS プロトコルのわかりやすい説明を知っている人はいますか?

0 投票する
5 に答える
10087 参照

client-server - Half-Life 2 のマルチプレイヤー プロトコルはどのように機能しますか?

Counter-Strike: Source や Day Of Defeat: Source などの mod で、Half-Life 2 のマルチプレイヤー プロトコルがどのように機能するのか疑問に思っていました。彼らはある種の難読化と独自の圧縮アルゴリズムを使用していると思います。さまざまな種類のメッセージがパケットにどのようにエンコードされているかを知りたいです。

0 投票する
2 に答える
284 参照

networking - BGP パス属性タイプ 18 は何を参照していますか?

Path Attribute Type 18 が何を参照し、どのように解析するか知っている人はいますか? 私が理解できる最善のことは、それが新しい AGGREGATOR (タイプ 7) であり、新しい AS32 形式を読み取っていると想定していますが、このパケットを解析できないため、それをカットしていません。これがどのように機能するかを説明する RFC はありますか?それは CISCO または別のネットワーク ベンダーが導入した特別なものですか?

0 投票する
2 に答える
1962 参照

c++ - inet_addr 関数と先行ゼロ

関数を使用して char IP アドレスを変換しようとしていますinet_addrが、「inet_addr」関数に渡す IP アドレスの先頭にゼロが(192.169.055.075)あるため、「inet_addr」関数はこれを別の方法で解釈していると思います。先行ゼロを削除する方法について何か提案はありますか?

ありがとう

0 投票する
1 に答える
218 参照

windows - Vista で Asynchronous Pluggable Protocol を作成する際の問題

dzone プロトコルを作成するためのチュートリアルを作成しました (たとえば、firefox で dzone:n と入力して新しいリンクを取得できるようにするため)。レジストリ エントリは問題ありませんが、Vista はこの新しいパスを取りたがりません (dn の名前を dzone に変更して確認します)。

ここでチュートリアルを参照してください: [ http://reboltutorial.com/blog/dzone-protocol/]

この問題は、Windows XP では発生せず、Vista のみで発生します。