タグ

ネットワークとjavaに関するciveのブックマーク (2)

  • UDP hole punchingについて

    そろそろ、やるやると言って後回しにしてきた事を書いていこうかと思いますよ~ まずは、UDP hole punchingについてです UDP hole punchingとは読んで字のごとく UDPで穴をパンチしますww わかりませんね笑 順をおって話をしましょう ただ、自分も勉強中の身であるので解釈に間違いがあるかもしれません 多くの方がルータを使用してネットに接続しているのではないでしょうか? 雑な図ですがルータを使用している場合の図になります そうすると図のようにPC1台ごとにプライベートIPアドレスが割り振られるのがわかります (図だと逆にわかりにくいかもw) グローバルIPアドレスはルータを指します するとここで問題が起きます それは、何回か前の記事に書いたソケット通信での問題です ソケット通信では通信相手の「IPアドレス」を指定して通信を行います ですがこの場合グローバルIPアドレ

    UDP hole punchingについて
  • Javaで作るルーム機能付きチャットサーバー

    はじめに ここでは、Javaを用いて不特定多数のユーザーの接続を実現するチャットプログラムを作ります。最も単純なチャットプログラムは、1対1で文字列をお互いに送受信するだけですが、不特定多数のユーザーが任意のタイミングでメッセージを交換し合う場合は、サーバーが正しくユーザーを管理し、ユーザーの要求に応じて情報を送らなければなりません。 稿で実装するチャットサーバーでは、ユーザー同士を単純につなげるのではなく、チャットルームを作成して、チャットルームに入室しているユーザー同士のみメッセージを交換する、より格的なチャットサービスを実装します。これを管理するには、チャットサーバー、チャットルーム、チャットユーザーの関係と役割をオブジェクトに与え、任意の数のチャットルームとチャットユーザーを動的な配列で管理しなければなりません。 来ならば、サーバーとクライアント間の通信にはネットワークトラフ

    Javaで作るルーム機能付きチャットサーバー
  • 1