実際には、PCに接続されたWebカメラの写真を受信するAndroidアプリをコーディングしています。より多くのfpsを取得するには、tcpの代わりにudpプロトコルを使用します。アイデアは、PCが写真を電話のIPとポートに送信するというものです。ただし、電話のプロバイダーにはさまざまなパブリックポートがあります。だから私は直接電話にかけることができません。そのため、UDPホールパンチングを使用して問題を解決しようとしましたが、うまくいきませんでした。私の電話が1つのパケットをPCに送信すると、PCは電話のパブリックIPとポートを取得します。これは、接続を開いたままにするために毎秒発生します。次に、サーバーはWebカメラフレームをこのIPとポートにできるだけ速く送信します。しかし、電話は1〜2秒で10〜15枚の写真を受信します。その後、電話はそれ以上のパケットを受信しないため、プロバイダーは後続のすべてのパケットなどをフィルタリングするように見えます。
今私の質問は:何が起こっているのか(またはプロバイダーは何をしているのか)、そしてどうすればこの問題を修正できますか?TCPプロトコルは機能しますが、オーバーヘッドとエラー修正が多すぎるため、ストリーミングには遅すぎます。