問題タブ [qos]
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.
c++ - Linuxでトラフィック制御機能(つまりQOS)ライブラリを探しています
Windows から Linux にいくつかの C++ コードを移植しようとしていますが、Linux でトラフィック制御機能用の同様の API を見つけることができません。
これらの関数が必要です。そのような API をどこで見つけることができるか知っていれば、助けてください。
お時間をいただきありがとうございます。
sockets - マルチキャストの奇妙な動作に対する Qos(qWAVE API)
Windows7 64 ビット OS では、qWAVE API を使用して、通常のトラフィック udp で発信パケットの DSCP 値を設定すると、正常に動作します。
しかし、マルチキャストトラフィックに対して同じことをしようとしていますが、奇妙に見えます!!
コードの論理フローは次のようになります。
- ソケットを作成してマルチキャスト グループに参加する
- 別のソケットを作成し、それにソケットを追加すると qWAVE がエラーを報告します
1 台の PC で、ステップ #1 を実行すると、ステップ #2 が 10 ~ 20 秒で失敗します。qWAVE の実装による問題だと思いますが、よくわかりません。ヒントがあればありがとう。
以下は私のコードです:
c++ - UPnP 経由の QoS により、無線 LAN での VoIP 品質が向上
私は、VoIP、カム ストリーミング、およびファイル転送を同時に行うアプリケーションに取り組んでいます。現在、Windows、OS X、Android、iPhone/iPad で動作します。ご存じのとおり、特に同じ LAN 上の複数のユーザーが同時にこれを行う場合は、かなりの量のネットワーク トラフィックが発生する可能性があります。その結果、VoIP の品質が低下します。
理論上の最善の解決策は、ローカル Wi-Fi ルーターに VoIP トラフィックを優先できるかどうかを丁寧に尋ねることだと思います。残念ながら、VoIP およびビデオ用の SIP を含むほとんどのトラフィック ストリームは暗号化され、TCP 経由で送信されます。そのため、ルーターには、どの TCP/UDP ストリームが何を行っているかを把握する方法がありません。
UPnP QoS について簡単に説明しました。仕様から、それは私が必要とするものです。しかし、今日のホームルーターで広く利用できるかどうかはわかりません. また、実際に希望どおりに機能するかどうかもわかりません。簡単に言うと、VoIP の場合、ストリームをそのエンドポイントで指定し、Wi-Fi ルーター/ホーム ネットワークに最小限の遅延を与えるように指示します。
だから私の質問は本当に:
- UPnP QoS をさらに掘り下げる努力をする価値はありますか?
- これは、最新のホーム LAN ハードウェア (Wi-Fi ルーター) で広く採用されていますか?
- 考慮すべきより良いアプローチはありますか?
また、Samsung はこれに関する特許を申請中であることにも言及しましたが、その影響が懸念されます。
UPnP および QoS 用の本当に優れた API は見つかりませんでしたが、curl または boost::asio と一緒に何かを調理することは可能だと思います。もしそうなら、この目的のために C++ オープン ソース ライブラリに興味はありますか?
node.js - mqtt.jsノード-メッセージ付きのqosを渡す
MQTT.jsを使用して、新しいアプリのブローカーを作成しています。ここ数時間、QoSフラグを渡すのに苦労しています。messageId、dup、フラグの保持は簡単に渡すことができますが、QoSは渡すことができません。私のコードはかなり単純で、クライアント(MQTT.jsで作成)では次のようになります。
サーバー上で私は次のことを行っています:
クライアントでQoSとして何を設定しても、サーバーでは常に0になります。私はこれが箱から出してうまくいくことを期待していました。誰かがこれについて何か経験がありますか?
ありがとうございました。
voip - voipにprio qdiscを使用する
ホーム ネットワークに Ooma VoIP デバイスがあります。正常に動作しているデュアル NIC Linux ボックスが既にあるため、インターネットへのルーターとして機能させたくありません。優先度の高い qdisc を使用して、ooma デバイスからのすべてのトラフィックを優先度を高くし、トレントを優先度を低くし、その他すべてを通常の優先度にしたいと考えています。さまざまな設定を試しましたが、すべてが中優先度クラスのほぼすべてのパケットをダンプするため、正しく設定できていないに違いありません。私のLinuxボックス(CentOS 6)では、eth1が内部ネットワークで、eth0がインターネットに接続されています。
ありがとう!
rabbitmq - Pika + RabbitMQ:basic_qosをprefetch = 1に設定しても、キュー内のすべてのメッセージを消費しているように見えます
それぞれがRabbitMQキューにフックする10個のワーカーを起動するPythonワーカークライアントがあります。このようなビット:
私が抱えている問題は、チャネルにbasic_qosを設定しているにもかかわらず、最初に開始したワーカーがキューからすべてのメッセージを受け入れ、他のワーカーはアイドル状態になっていることです。これはrabbitmqインターフェースで確認できます。1に設定worker_count
して50個のメッセージをキューにダンプした場合でも、50個すべてが「未確認」バケットに入れられますが、1個は未確認になり、他の49個は準備。
なぜこれが機能しないのですか?
flash - Flash/RTMFPで利用可能な帯域幅の品質を最適化する
私はActionScriptを使用して単純な1対1のP2Pビデオチャットを開発しています。そして、帯域幅を考慮して、ピアに最高のビデオ品質を保証したいと思います。これの意味は:
- チャット開始時に利用可能な帯域幅を考慮して最高の品質を設定する
- 品質を下げることにより、チャット中のネットワークの混雑に対応します。
タスクは動的ストリームスイッチングに似ていますが、P2Pには、動的ストリーミングアプローチが機能しないようにする詳細があります。たとえば、動的ストリームスイッチングで監視されるmaxBytesPerSecondメトリックは、遅延を最小限に抑えるために受信NetStreamのバッファサイズが0に設定されているP2Pではほとんど役に立ちません。
これまでのところ、P2Pの最も信頼できるQoSメトリックはSRTTのようです。ローカルネットワークでのシミュレートされたテストでは、帯域幅の輻輳により、帯域幅の制限が導入された場合、最大500ミリ秒以上のショットが発生します。ただし、輻輳に対応するためbandwidth
にinの値を最適に調整する方法についてはヒントがありません。Camera.setQuality(0, bandwidth)
私はたくさんの実験をしましたが、問題に対する明確で単純な解決策はまだわかりません。また、他のRTMFPチャットソリューションでこの問題が(あるとしても)どのように対処されるのか疑問に思っています。
networking - Linux でのトラフィック制御の無効化
Linux のトラフィック制御機能は、エグレス トラフィックを形成してバーストを除去しようとし、独自のキュー メカニズムを備えていることを読みました。
私の場合、トラフィック制御がボトルネックになるため、より高いレートでトラフィックを生成しようとしています。
Linux のトラフィック制御によってキューイングが行われないようにするには、どうすれば無効にできますか?
python - scapy 受信 2 パケット待ち
scapy で http QoS を実行しようとしています。スキャナーの場合、接続時間、GET 間の時間、送信されたデータの開始 (サーバーからの ACK)、そして最後にデータの終了を取得する必要があります。
私はそれを書いた:
Wireshark では、GET の後、ACK パケット ("reply = sr(request, verbose=0)" でキャッチ) と HTTP パケット (HTTP /1.0 200 OK など) の後に、応答の終わりであることがわかります。
私の問題は、時々、この HTTP パケットがスニフ行が解釈される前に来る (http_fin = sniff(filter="tcp and host 88.191.132.65", count=1)) ため、これらのコマンドは何も待機しないことです。
sr コマンドで 2 つのパケットをキャッチできると思いますが、よくわかりません。別の方法を見た人はいますか?
python - 複数のパケットを待っている Scapy
HTTP GET を実行するには、パケット (GET / HTTP/1.0\n\n) を送信し、3 つのパケットを待機する必要があります。
私のGETのACK
GET の回答: HTTP/1.0 200 OK
および送信のFIN ACK
私は2つの方法を見つけました:
=> マルチオプションで sr() を使用
=> GET リクエストを送信した直後に sniff を使用する
sr() 関数の場合、問題はスニッフィングを停止することです。唯一のオプションはタイムアウトを設定することですが、私のスクリプトは多くの異なるサイトをテストします。非常に多くの時間の答えが異なるため、静的なタイムアウト値を選択するのは難しい場合があります。いつでもそれを超えるサイトはないと確信しています。
sniff の場合、「count」引数を設定して 3 つのパケットのみを取得できるため、同じ問題はありません。しかし、記録された 3 つのパケットが必要な 3 つであることを確認するのに十分なほど良いフィルターを作成するのは困難です (ARP や DNS などは含まれません)。しかし、主な問題は、"sniff" が起動される前 (send(GET_PACKET) とanswers=sniff(...) の間) に最初の回答パケットが来ることがあります。この場合、一部の情報が失われ、すべての後処理が破損しています。
完璧な方法は、「count=3」オプションを指定して sr() 関数を使用して 3 つのパケットのみを取得することですが、そのオプションは sr() には存在しません。
誰にもアイデアはありますか?
どうもありがとう
私の言語でごめんなさい、私はフランス語です