ブロードキャスト非同期ネットワークシステムでmsgとそのackを同期させるために使用できるプロトコル/方法は何ですか?我々は、ACKとタイマーを使ってUDPを使用して、再送の必要性があるかどうかを確認しています(maxは同じmsgを3回送信します)。ブロードキャスト非同期ネットワークシステムでmsgsとそのacksを同期させるために使用できるプロトコル/メソッド?
答えて
ACKと再送信を使用している場合は、UDPの上に構築信頼性とスケーラビリティが危険に満ちているため、TCPを使用することについて懸念する必要があります(3回の再送信は実際に信頼性を与えません)。規模の拡大が必要な放送システムでは、定期的な再送だけでなく、必要な情報(自動検出システムがどれだけ機能するか)を確認した後に受信者の予約を解除するようにしてください。
しかしUDPを使用する必要があります。これは、すでに構築されている古いソフトウェアで使用されているためです。締め切りは厳しく、古いソフトウェアのソースコードはありません。だから私たちは何をすることができますか? – yeeen
ACK付きUDP。 TCPを試してください。それ以上のことはすべて行います。
本当に手でしたい場合は、スライディングウィンドウを見てください。一言で言えば、複数のメッセージを一度に送ることができ、(ACKを送信して待機する代わりに)複数のACKを期待できます。 ACKがタイムアウトすると(受信されない場合)、どのように進行するかはあなたによって異なります。ビデオフレームを送信する場合は、無視するように選択できます。一方、ACKedされていないパケットだけを再送するか、最後に期限切れのACK後にすべて再送するかを選択できます。
ウィキペディアは、スライドウィンドウプロトコルhereについて説明しています。
視覚的なデモは、このリンクにありますhttp://www.osischool.com/protocol/Tcp/slidingWindow/index.php
- 1. MPI - 非同期ブロードキャスト/ギャザー
- 2. JMSで同期メッセージと非同期メッセージを使用するタイミング
- 3. JavaScript:同期コードで非同期FileReaderを使用するには?
- 4. 非同期コンポーネントを同期させることはできますか?
- 5. nodejsで非同期に同期する
- 6. 非同期メソッドでの非同期ライブラリメソッドの使用
- 7. 「非同期キーワード非同期」関数を「非同期キーワード非同期」関数に変換できますか?
- 8. 非同期のCocoaクラスを同期的に動作させる
- 9. 非同期の値を同期的に使用する
- 10. コントローラメソッドを非同期にするか、同期させますか?
- 11. 非同期ソケットと同期
- 12. コアデータのManagedObjectContext.ExecuteFetchRequestを非同期で非同期にする方法
- 13. リクエストで非同期を使用する
- 14. C++でCOMイベントを発生させる - 同期または非同期?
- 15. RxJavaで非同期メソッドを同期する方法は? RxJavaの非同期ウォーターフォール
- 16. Meteor.methodsを同期非同期にする
- 17. 非同期操作と非同期ネットワークタスク?
- 18. 非同期ツイスト通話を使用する同期クライアントのリファクタリング
- 19. 同期フラスコ非同期を作る - 人々は「非同期」または「フラスコの非同期を作る」について話すときフラスコのインスタンスが
- 20. コールバックリターンヌルため非同期要求のための非同期リクエスト「タブ」の
- 21. NSXMLParserを非同期で使用するときの問題
- 22. BitmapFrameを非同期で非同期メソッドで作成する
- 23. マルチインサートは非同期で使用する
- 24. 非同期に使用されるHttpListenerが同期的に動作する
- 25. 非同期呼び出しを同期するための用語
- 26. 同期と非同期AJAXを同時に実行する
- 27. WCF:非同期CTP:それは使用できますか?
- 28. ネストされた非同期タスクを同期する
- 29. 非同期キューモニタリングのためのPornでのTornadoの使用
- 30. 非同期イベントの同期
は、既存のACKベースの信頼性の高い放送のミドルウェア上で注文した配信を実現するためにどのように質問ですか?それとも、メッセージングプロトコルについてのオープンな質問ですか? –