通常、Azureワーカーへのアクセスは、サービス定義で定義されているエンドポイントを介して行われます。これらのエンドポイントは、TCPまたはHTTP(S)でなければなりませんが、ロードバランサを通過してAzureマシンの実際のIP /ポートに接続されます。Azureの作業者に直接アクセスします。ロードバランサをバイパスする
私のアプリケーションは、バイトをカウントするセルラーデバイスから接続し、SYN/ACK/FINのオーバーヘッドが私が送信している8バイトのパケットを矮小化するので、劇的にUDPの使用に恩恵を受けるでしょう。私はICMPメッセージヘッダーに自分のデータを直接入れることも考えました。ただし、これはロードバランサでサポートされていません。
Azure仮想マシンでpingを有効にしてからpingを実行できることがわかっています - http://weblogs.thinktecture.com/cweyer/2010/12/enabling-ping-aka-icmp-on-windows-azure-roles.html。
Azure VMアドレスのIPアドレスとポートを単に渡すTCPベースのサービス(ロードバランサを通じて公開されている)を使用できないことがありますか?ワーカーがシャットダウンまたは移動した場合、アプリケーションはスマートになり、TCPエンドポイントに再接続してデータを送信するための新しい場所を要求します。
このコンセプトは機能しますか、このような直接アクセスを防止するための手段がありますか?
役割は、外部からアクセス可能なIPアドレスを持っていませんか? –
IOW、ロードバランサがUDPをサポートしていなくても、何とかUDPポートを開いて接続することはできますか? (負荷が均衡していなくても) –
Windows Azure Connectを使用しないとUDPはサポートされません。 1)ソケットフォワーダを書く(私のブログの例を参照してください)、2)ARRを使用してください - HTTPのために良い選択、または3)Windows Azure Connectを使用してください。ただし、最後の例だけがUDPをサポートします。 UDPがここの唯一の目標であれば、それが今日の唯一の選択です。 – dunnry