マルチキャストパケットは一般にUDPベースであるため、信頼性がありません
ローカルホストでは、パケットが1つのプロセスのバッファから別のプロセスにコピーされたと想定しているため、送信者が送信した順序でキューに入れられますね。
私がよくわからないのは:
- マルチキャスト(またはUDP)のローカルホストで一般的に正しいパッケージ順序を想定できますか?そうでない場合、なぜですか?
- 異なるオペレーティングシステムの処理(win、mac、linux)の具体的な違いは何ですか?
ありがとうございました
マルチキャストパケットは一般にUDPベースであるため、信頼性がありません
ローカルホストでは、パケットが1つのプロセスのバッファから別のプロセスにコピーされたと想定しているため、送信者が送信した順序でキューに入れられますね。
私がよくわからないのは:
ありがとうございました
マルチキャスト(またはUDP)のローカルホストで一般的に正しいパッケージ順序を想定できますか?そうでない場合、なぜですか?
いいえ、パケットはカタログ化されていないためです。さらに、すでにご存知かもしれませんが、ループバック接続がUDPを正常に維持するという保証はありません。
異なるオペレーティングシステムの処理(win、mac、linux)の具体的な違いは何ですか?
プロトコルに違いはありませんが(RFCを参照)、本質的な詳細はプラットフォーム(およびバージョン)に依存している可能性が高く、手元にあることを誰も知らないと確信しています(とにかくソースが近いものもあります)。これが、秩序が保証されない可能性が高いもう1つの理由です。これをテストしてパケットが順番に来たとしても、ループバック接続でのUDPパケットの順序のようなものに依存することは非常に悪い考え(tm)です。
また、UDPは「信頼できない」という議論は真実ですが、誤解を招く可能性があります。多くのセキュリティ意識の高いソフトウェアはUDPを介して機能し、一般に、ドロップされるパケットの割合はごくわずかです。適切な不測の事態が発生した場合、UDPを使用していても(パフォーマンスのために)、ソフトウェアが爆発してパケットがドロップすることはありません。しかし、それが心配な場合は、TCPを使用してみませんか?