私はインターネット上に公開サービスを提供している場合があり、サーバーが必要に応じて通常のホームネットワークにある組み込みデバイスを特別に設計したものに接続できるようにしたいと考えています。
デバイスがサーバーをポーリングして更新などを取得できることは知っていますが、1)サーバーが何かを実行してから、デバイスが更新をポーリングするまでに遅延が発生します。2)無駄なトラフィックが(時間の経過とともに)大量に生成されます。
誰かがこれを行う方法について何か提案がありますか?ただし、私の最初の方法は、組み込みデバイスでUPNPを使用して、ホームルーターでポート転送ルールを生成し、そのポートをサーバーに登録することです。サーバーは、そのアドレスへのHTTPリクエストを生成できます(httpを使用すると、途中でファイアウォールなどによってブロックされることなく、ルーティングなどが行われます)。デバイスが転送ルールを作成できない場合は、ポーリング方式に戻ります。
これは正しいと思いますか?誰かがこの種のものと共有できる経験がありますか?(クライアントは組み込みLinux、サーバー.NETではc ++になります)。