0

このシナリオを実装する簡単な方法を探しています。

データを共有したいマシンが2台あるとします。これらのマシンの場所/アドレスはいつでも変更できます。両方のマシンが中央サーバーにチェックインして、それらの可用性を通知するようにしたいと思います。2つのシステムの一方が、もう一方からファイルをプルしたいと考えています。シンクシステムにサーバーにリクエストを送信させ、サーバーがソースからファイルをリクエストしてプルし、リクエスターにフィードできることを知っています。ただし、これは帯域幅の観点からは非効率的です。ファイルは2回転送されます。ソースがシンクに直接ブロードキャストできるシステムはありますか?

システムがファイアウォールの背後にある場合のポート転送などを保証することはできません。方法がわかりません。

ありがとう。

4

1 に答える 1

2

マシンがマシンにAデータを送信したい場合、中央サーバーにリクエストを送信します。 許可を求めます。受け入れられた場合、のIPとポートをに与えます。 直接接続を試みます。失敗した場合(つまり、ルーター/ファイアウォールの背後にある場合)、失敗を通知します。 次に、のIPとポートをに与えます。 (のファイアウォール/ルーターを通過できるはずの)に直接接続しようとします。いずれかの接続が成功した場合は、にデータを送信するための直接接続があります。両方の接続が失敗した場合(つまり、BACCBCBAABBACCABBABABAまた、ファイアウォール/ルーターの背後にあります)、とCの間のすべての転送のプロキシとして機能する必要がAありBます。

于 2010-09-14T21:06:35.377 に答える