問題タブ [flow-control]

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 投票する
0 に答える
587 参照

java - Jssc フロー制御 Xon

arduino ベースのアプリケーションに Jssc を使用しています。それはうまくいきます。送受信できています。しかし、XonXoff フロー制御に問題があります。

Xoff char を受信すると、Jssc は自動的に送信を停止しますか??

もちろん、使いました

または、自分のアプリで受信したデータをリッスンし、自分で Xon と Xoff を監視してから、送信を停止する必要がありますか?

私の場合、フロー制御が有効になっているにもかかわらず、Xon および Xoff 文字がシリアル イベント RXCHAR に入るようです。ソフトウェアで Xon および Xoff char を受け取ります。これは正常ですか?これは、USB to COM ドライバーに関連していますか?

ArduinoをUSBとして接続して、Windows 7で実行しています。

ありがとう、

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

java - Java Netty setAutoRead

ハンドラー チェーンが呼び出されている間、Netty 4 (または 5) は読み取りを続行しますか? バックグラウンドで読み取り、巨大なキューをいっぱいにして、ハンドラーチェーンの準備が完全に整った後にすべての読み取りを処理するようなものですか?

受信バッファーをファイルに保存したいのですが、ファイルがブロックされており、ハードドライブが処理できるよりも多くの受信メッセージがある場合、それらのメッセージをキューに入れるか、イベントをブロックすると、イベントキューがそれ以上のメッセージを読み取れなくなります。 ? 送信側で使用するFileRegionので、ライターのフロー制御が与えられます。

ソースを調べましたが、それらがどのように機能するかは完全にはわかりませChannelInvokersん.誰も指定されていない場合、eventLoop.next().

潜在的なフロー制御のバグを導入していないことを確認するために誰かが私を助けてくれればいいのですが...

オプションを見ましたsetAutoReadが、これは何か違うことをしていると確信しています。

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

c# - C# で、入力文字列の解析に基づいてフローを制御する最良の方法は何ですか?

私は、定期的に行ういくつかのことを迅速化するのに役立つコンソール アプリケーションを構築しています。クラスのさまざまなメソッドに変換される、手順の 4 つのオプションを含むメニューがあります。

基本的には次のようなものです。

何をしたいですか?

1 ディス・シング

2 ザット・シング

3 いくつかのもの

4 クールなもの

0 すべてのもの。

入力コマンド文字列:_

現在、次の方法で有効な入力をチェックしています。

そして、次の方法でフローを制御します。

目標は、入力を提供し、示されているように 1 つ以上のプロセスを実行することです。

1 : thisThing()

13 : thisThing() と someStuff();

42 : thatThing()とcoolStuff();

0 : 定義したすべてのプロセスを実行します。

より良いプラクティスでこのようなことを行う方法はありますか?

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

javascript - Node.js Nimble flow.parallel コントロールで共通変数を使用する

次のコードがあります。

何らかの理由で、最後の flow.parallel コールバックcallback(resultList) で、resultList が空になっています。

resultList.push(result)resultList 配列に結果が正常に追加されたことを確認しました。

問題は、私が理解できなかった小さな詳細だと思います。

誰かが私を助けることができますか?

よろしく。クレイソン・リオス

0 投票する
0 に答える
123 参照

tcp - TCP のダイナミック ライト サイジング

Dynamic right-sizingを使用た場合と使用しない場合の tcp のパフォーマンスをテストしたいと考えています。それが新しいバージョンでデフォルトで実装されているかどうか、またはカーネルの新しいバージョンで利用できるパッチがあるかどうかを知りたいです。

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

tcp - TCP を使用してオブジェクトで受信する時間を決定する

私が理解しようとしている質問は次のとおりです。

この問題では、TCP スロースタート フェーズによって導入される遅延を考慮します。クライアントと Web サーバーがレート R の 1 つのリンクで直接接続されているとします。クライアントが、サイズが 15S に正確に等しいオブジェクトを取得したいとします。ここで、S は最大セグメント サイズ (MSS) です。クライアントとサーバー間のラウンドトリップ時間を RTT (一定であると仮定) で表します。プロトコル ヘッダーを無視して、オブジェクトを取得する時間を決定します (TCP 接続の確立を含む)。

  1. 4S/R > S/R + RTT > 2S/R
  2. 8S/R > S/R + RTT > 4S/R
  3. S/R > RTT

私はすでに解決策を持っています(教科書の問題です)が、どうやって答えにたどり着いたのかわかりません。

  1. RTT + RTT + S/R + RTT + S/R + RTT + 12S/R = 4 · RTT + 14 · S/R
  2. RTT+RTT+S/R+RTT+S/R+RTT+S/R+RTT+8S/R=5・RTT+11・S/R
  3. RTT + RTT + S/R + RTT + 14S/R = 3 · RTT + 15 · S/R

そして、ここに答えと一緒に行くイメージがあります: クライアントサーバー図

私にとってどのような意味がありますか: 各シナリオは、RTT 時間が一定量のセグメントを送信するのにかかる時間よりも多いまたは少ないシナリオです。したがって、最初の場合、RTT ごとに 3S/R から S/R 秒かかります。そこから、スロースタートがどのように動作しているのかわかりません。確認応答されたすべてのパケットのウィンドウ サイズが大きくなるだけだと思いました。しかし、たとえば #1 の解決策では、2 つのパケットのみが送信されて ACK が返されたように見えますが、ウィンドウ サイズは 12S に跳ね上がりますか? ここで何が欠けていますか?

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

javascript - WebRTC DataChannel フロー/制御/背圧

RTCDataChannel API は、いかなる種類のフロー/制御またはバックプレッシャーも提供しません。これは、理論的には、送信者が受信者のブラウザーをクラッシュさせる可能性があることを意味しますか? 私の意見では、ブラウザー (Chrome、Firefox などはすべて内部で SCTP を使用します) は、SCTP 接続から読み取り、パケットを消費する js-callback を実行するようにスケジュールします。イベント キューが送信側に追いつかない場合、ブラウザは基本的にパケットをバッファに格納しながら継続的にパケットを読み取りますが、バッファは無限に大きくなります。したがって、2 つのブラウザーを接続すると、TCP 受信ウィンドウなどのような障壁がないため、実際には送信側が常に他のブラウザーを圧倒する可能性があります。

これは websocket api にも当てはまります。

何か見逃しているだけですか、それともこれらの API が壊れているだけですか? 私が正しければ、認証されていないブラウザーと通信する場合 (たとえば、急流のシナリオで)、これは深刻なセキュリティ上の問題になります。

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

tcp - フロー制御の実装 - 方法

TCP/IP (FreeRTOS + LwiP を使用) を使用して 1k データを送信しています。ドキュメントから、TCP/IP プロトコルにはスタック自体の内部にフロー制御があることを理解しましたが、このフロー制御はネットワーク バッファに依存しています。以下で説明する私のシナリオでこれをどのように処理できるかわかりません。

  1. WiFi から TCP/IP を使用して 1k サイズのデータ​​を受信します (このデータ レートは 20Mb/s になります)

  2. 受信した Wifi データは 10k サイズのキューに入れられます。各ブロックのサイズは 1K です。

  3. キューから各ブロックが取得され、1Mb/s の低レートで別のインターフェイスに送信されます

このシナリオでは、wifi <-> キューからのデータ間に手動でフロー制御を実装する必要がありますか? どうすればこれを達成できますか?

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

networking - トランスポート層でのフローとエラー制御

私が理解しているように、フロー制御とエラー制御は、トランスポート層とデータリンク層の両方で採用されています。データ リンクがパケットのエラーのない配信を保証する場合、トランスポート層によってどのようなエラーが検出されますか?

また、TCP で処理される UDP ではどのようなエラーが発生する可能性がありますか?