2011-01-17 4 views
1

ブロードキャスト非同期ネットワークシステムでmsgとそのackを同期させるために使用できるプロトコル/方法は何ですか?我々は、ACKとタイマーを使ってUDPを使用して、再送の必要性があるかどうかを確認しています(maxは同じmsgを3回送信します)。ブロードキャスト非同期ネットワークシステムでmsgsとそのacksを同期させるために使用できるプロトコル/メソッド?

+0

は、既存のACKベースの信頼性の高い放送のミドルウェア上で注文した配信を実現するためにどのように質問ですか?それとも、メッセージングプロトコルについてのオープンな質問ですか? –

答えて

1

ACKと再送信を使用している場合は、UDPの上に構築信頼性とスケーラビリティが危険に満ちているため、TCPを使用することについて懸念する必要があります(3回の再送信は実際に信頼性を与えません)。規模の拡大が必要な放送システムでは、定期的な再送だけでなく、必要な情報(自動検出システムがどれだけ機能するか)を確認した後に受信者の予約を解除するようにしてください。

+0

しかしUDPを使用する必要があります。これは、すでに構築されている古いソフトウェアで使用されているためです。締め切りは厳しく、古いソフトウェアのソースコードはありません。だから私たちは何をすることができますか? – yeeen

0

ACK付きUDP。 TCPを試してください。それ以上のことはすべて行います。

本当に手でしたい場合は、スライディングウィンドウを見てください。一言で言えば、複数のメッセージを一度に送ることができ、(ACKを送信して待機する代わりに)複数のACKを期待できます。 ACKがタイムアウトすると(受信されない場合)、どのように進行するかはあなたによって異なります。ビデオフレームを送信する場合は、無視するように選択できます。一方、ACKedされていないパケットだけを再送するか、最後に期限切れのACK後にすべて再送するかを選択できます。

ウィキペディアは、スライドウィンドウプロトコルhereについて説明しています。

視覚的なデモは、このリンクにありますhttp://www.osischool.com/protocol/Tcp/slidingWindow/index.php

関連する問題