2007年06月21日

IndyのUDP通信でP2P方式を使用し、作業中のグラフィックを共有するグラフィック編集ソフト

IndyのUDP通信でP2P方式を使用し、作業中のグラフィックを共有するグラフィック編集ソフト




試作品ダウンロードはこちら

サーバーとクライアント という形ではなく、

サーバーとサーバー

UDPClientを使わず、UDPServerのみの通信になっている。


この実験のシステムでは、接続者のIPとportをまとめたリストを共有するため、

全てのサーバーは、他の全てのサーバーに接続している状態になる。


例えば、A・B・Cの3人のユーザーがいて、Aをホストとした従来のやり方では、

B(データ送信) → A(サーバーホスト経由) → C(データ受信)

となり、Aの負担が大きくなってしまうが、


自分自身がサーバーホストとなり、他の全てのユーザーと接続しているのなら、

Bがデータを送信する場合、
B(データ送信) → A(Bへの接続者)
B(データ送信) → C(データ受信)

Cがデータを送信する場合、
C(データ送信) → A(Cへの接続者)
C(データ送信) → B(Cへの接続者)

となり、サーバーのホストをAとした通信に比べ、Aの回線の負担は軽くなる


次に、接続者の何人かが光回線であり、

回線速度が速い人に回線への負担をかける場合の処理はまだ作成していないが、

それができれば、P2P方式の完成だろうか


現在わかっている問題は、火壁やルータなど、何らかの環境で、

UDPServerを立てられない人がいる場合、

接続ができないなどの問題が発生するという事。



また、グラフィックのシステムについては、

「画像を共有」するのではなく、

グラフィックを描く「命令(文字列)を共有」しているので、

100byteにも満たない情報が送受信されているだけとなる。


これにより、大人数でも同期が取れるかもしれない。


ちなみに使用したIndyはIndy9である


IndyのUDP通信でP2P方式を使用し、作業中のグラフィックを共有するグラフィック編集ソフト



使い方

8060 : 自分のサーバーのポート

127.0.0.1:8060 : そのアドレスへ接続する(ホストではなく、接続時のみ使用する)


ホスト : 誰にも接続せず(ノードをもらわず)サーバーを立てます
接続 : 既にホストがある場合、そのホストへ接続します。
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:


この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。