問題タブ [nat-traversal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
tcp - サーバーからクライアントにメッセージを送信する最速の方法
毎秒数千のメッセージを送信するアプリケーションを作成したいと考えています。これらは、それぞれわずか数文字の非常に小さなメッセージですが、クライアントごとに 1 秒あたり 10 ~ 20 の可能性がある非常に高速なメッセージでもあります。メッセージはサーバーからさまざまなクライアントにのみ送信され、一度に最大 10,000 ユーザーになる可能性があるため、1 秒あたり 200,000 メッセージになります。
これらは、3g または wifi 上のクライアントに送信できます。
何がこれを行うことができると思いますか? xmpp アプリケーション、NAT トラバーサルを使用した udp メッセージ、またはまだ考えていない何か?
java - WebサーバーでのJavaEEアプリケーションの実行
以下は、ポート15445でリッスンしているSOCKETを持つスレッドです。データグラムパケットが送信されるたびに、文字列(SERVERからの応答)を追加した後、送信者のアドレスに転送されます。このコードをインターネット上のどこかで実行したいのですが、どこから始めればよいのかわかりません。
出来ますか?このコードをTomcatサーバーで実行できますか、それとも別のことをする必要がありますか?
port - SIP INVITE リクエスト ポートがめちゃくちゃになる
resiprocateを使用して NAT トラバーサル ソリューションを開発すると、正常に動作しますが、特に cisco ルーターで SIP INVITE get が失敗することがよくあります。
1. SIP REGISTER はポート 1024 から送信されます
ソース: 107.108.188.26
宛先:107.108.188.52
ユーザー データグラム プロトコル、送信元ポート: 1024 (1024)、送信先ポート: sip (5060)
2. SIP ステータス 200 OK
ソース: 107.108.188.52
宛先:107.108.188.26
ユーザー データグラム プロトコル、送信元ポート: sip (5060)、送信先ポート: 1024 (1024)
3. SIP/SDP 招待
送信元: 107.108.188.52 送信先: 107.108.188.26 ユーザー データグラム プロトコル、送信元ポート: sip (5060)、送信先ポート: sip (5060)
理想的には、ステップ 1 とステップ 3 の送信元ポートは 1024 である必要があります。同じ理由があれば教えてください。
android - スマートフォンからスマートフォンへの通信 - オプションは何ですか?
iPhone ゲームを開発しましたが、マルチプレイヤー機能を追加したいと考えています。そのためには、ゲーム中に iPhone 間の双方向接続が必要です。私はグーグルで少し調査を行い、次のオプションを見つけました。
仮想プライベート サーバーまたは専用マシンをクラウドに配置し、デバイス間の通信を再生するサーバーを実装します (後で、より高度な nat トラバーサル テクニックを使用できます)。利点: A. 特定のスマートフォンのプラットフォームに縛られないこと。B. サーバーは一部のロジックを処理できます。C. 統計や高度なロギングなど、より多くのフェザーの実装を追加できます。欠点: A. 別のソフトウェア (サーバー) の開発。B. サーバーのホスティングに多額の費用を支払う (月額 80 ドルから 500 ドル)。C. サーバーのセキュリティに気を配り、サーバーを維持する。
Apple ゲーム センターを使用します。利点: A. シンプルで高速。(ゲームキットを使用) B. 無料 (または低コスト? リファレンスが見つかりませんでした) 欠点: A. ゲームセンターで提供される羽しか使用できません。B. ゲームをクロスプラットフォームにすることができない。(「クラッシュ・オブ・クラン」の開発者は何をしましたか?)
別のオプションはありますか?Game Center のようなクロスプラットフォームのサービスを探しましたが、見つかりませんでした。
長所/短所を見逃しましたか?
c# - C# で無料の STUN および TURN サーバーのみを使用する NAT トラバーサル
インターネットを介して別の PC とピアツーピアで通信するオンライン ゲーム アプリケーションを作成しようとしています。両方の PC が NAT の下にある可能性が高く、外部サーバーを購入する余裕がないため、Numbなどの無料の STUN および TURN サーバーを使用するしかないと考えました。
しかし、いくつかの調査の結果、これらのサーバーを使用して接続する方法がわかりませんでした。
それらのサーバーだけを使用してそれを行うことは本当に可能ですか? もしそうなら、どうやってそれをしますか?または、それを行う簡単な方法はありますか?
これにはUDPまたはTCPのいずれかを使用できます。
sockets - ブーストasioでTCPソースポートを設定できません
通常、クライアントとしてどの送信元ポートからデータを送信するかは問題ではありませんが、テストのためにそれを実行したいと思います。そこで、クライアントのソケットを特定のポートにバインドしようとしましたが、ローカル マシンでクライアントとサーバーを実行している場合でも (宛先アドレスとして localhost を使用)、サーバーはソース ポートが 59000 のようなものであると通知します。ソケットを初期化しますこのような:
私が意図したことを行うことは可能ですか?メッセージがルーターを通過するときにルーターがポートを変更するかどうかを調べようとしています。それは、私が現在遊んでいるNATトラバーサルのものです。