問題タブ [mtu]
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.
tcp - TCP ファイル転送ウィンドウ サイズ
アプリケーションをリバース エンジニアリングしようとしていますが、TCP ウィンドウ サイズがどのように機能するかを理解するのに助けが必要です。私の MTU は 1460 です。私のアプリケーションは、TCP を使用してポイント A から B にファイルを転送します。次のことを知っています。
- ファイルはサイズ 8K のセグメントに分割されます
- 各セグメントは圧縮されています
- 次に、各セグメントが TCP 経由でポイント B に送信されます。テキスト ファイルのこれらのセグメントのサイズは 148 バイト、pdf の場合は 6000 バイトです。
テキスト ファイルの場合、148 個のセグメントが互いに結合して 1 つの大きな TCP ストリームを形成しているはずですか? ウィンドウサイズに応じて分割されますか?
どんな助けでも大歓迎です。
dos - IPv6 MTU DoS 攻撃
ICMP パケットの大きすぎるメッセージを使用して、IPv6 で DoS 攻撃を作成することは可能ですか?
たとえば、ICMP パケットの大きすぎるメッセージを何らかの方法でスプーフィングして、どこかへのアクセスを拒否し、サイズを 68 オクテット (IPv4 の最小値) に設定して、特定のノードが受信するトラフィックを抑制したいとします。この種の攻撃は可能でしょうか?
RFC 1981 では、
ノードは、パス MTU の推定値を IPv6 の最小リンク MTU 未満に減らしてはなりません (MUST NOT)。注: ノードは、ネクスト ホップ MTU が IPv6 最小リンク MTU より小さいことを報告する Packet Too Big メッセージを受信する場合があります。その場合、ノードはパス上で送信される後続のパケットのサイズを IPv6 の最小リンク MTU 未満に減らす必要はありませんが、それらのパケットに Fragment ヘッダーを含める必要があります [IPv6-SPEC]。
したがって、RFC 1981 のこのケースは通常、IPv4 ノードの MTU が 1280 より小さい IPv6-IPv4 変換がある場合にのみ発生します。ただし、私の理解が正しければ、パスに沿って IPv6-IPv4 トンネルがある場合、 IPv6-IPv4 ノードがトラフィックをフラグメント化するため、トラフィックを大幅に遅くすることができます。
しかし、IPv6 ではフラグメンテーションが許可されていないため、これは私にはあまり意味がありませんでした。
udp - Recvfrom() 戻り値
私は UDP パケットを使用しており、いくつかの点についてクリアしたいと考えています:
1 - 「recvfrom」は正確に何を返しますか? つまり、450 バイト + 20 バイトの IP ヘッダー + 8 バイトの UDP ヘッダーのサイズのパケットを送信すると、recvfrom は全体として 478 バイトを返すか、次のようなものがある可能性があります:
10 バイト、300 バイト、100 バイト、68 を受信しましたバイト?
2 - 「recvfrom」の戻り値はパケットの断片化に関連していますか?
注 :
* 「recvfrom」が成功したという前提で話しています
* 最小 MTU 未満であることを確認するために 450 バイトを選択しました
linux - MTU サイズを変更する Linux カーネル モジュールが機能しない
私はカーネルモジュールを学んでおり、それに慣れていません。eth0 の MTU サイズを変更したい。これが私が書いたモジュールプログラムです。
意図は eth0 の MTU サイズを 1000 に変更することですが、変更されません。何が欠けているのか、誰でも教えてもらえますか。アプローチ自体が間違っている場合は、正しい方向に向けてもらえますか?
tcp - MTU 5000 以降はスループットが低下する
1 GbE を介して直接接続された 2 台のコンピューター間のスループットをテストし、iperf でテストしようとしています。MTU が 5000 から 5050 の間の場合、約 980Mbps のスループットが得られますが、MTU=5050 を超えると約 680Mbps に大幅に低下します。さまざまなウィンドウサイズを確認しましたが、結果は同じです。MTU を増やすと、オーバーヘッドが減少し、それによって帯域幅が増加するか、少なくとも低下することはありません。この奇妙な行動が理解できません。ちなみにTCPスループットのテスト。どんな助けでも!そしてありがとうみんな。これは、どのフォーラムでもこれまでに投稿(質問)した私の投稿です:)通常、私は答えを見つけます....
追加情報!2 つの centos システム 1 つのシステムは Xen 4.2 ホストです (ただし、問題にはならないはずです) /pro/sys/net/ipv4 のさまざまなバッファ サイズで確認済み
java - java が最大 MTU サイズよりも大きいサイズの tcp パッケージを送信し、それが機能するのはなぜですか?
次のコマンドを発行して、Linux ホストからサーバーへの mtu 値を見つけます。
したがって、最大 MTU は 1340 (1312 + 28) であると想定しています。
ただし、Java クライアントからそのサーバーへの http 投稿をキャプチャすると、wireshark でサイズ1354の tcp パッケージが表示され、要求/応答全体が成功します。
パッケージサイズ>最大MTUサイズでどのように成功できるのか疑問に思っていましたか?
ありがとう、
networking - より小さい MTU を通過するときの UDP の動作
複数のルーターを介して、あるシステムから別のシステムに 1 MB の UDP データを送信しています。両方のシステムに 1500 MTU があり、2 つのホストの間に 576 のような低い MTU を持つルーターが 1 つあります。
それで、ルーター (より低い MTU (576))は UDP パケットをフラグメント化して受信ホストに送信しますか、それともさらにフラグメント化するために送信ホストに ICMP メッセージ (PMTU) を送信しますか?
video-streaming - ストリーミング h264 リアルタイム 800x600
rtp を使用して解像度 800x600 のビデオ ストリームをインターネット経由でリアルタイムで送信できますか?
MTU 制限について読みましたが、h264 で圧縮しても、この解像度でこの制限を達成する方法がわかりません。
一般的なビデオ チャット プログラムを使用してこれを行うには、どのような手法がありますか?
多くの圧縮を試みましたが、400x300 の解像度でしか送信できません。