こんばんは初めまして。pranky と申します。 ここで、いつもネットワークプログラミングなどを勉強させて頂いております。 今回 TCP で実装してあった双方向のプロトコルをファイアウォールにも 対応させなくてはならなくなり、困っているのでご相談させて下さい。 今のところ考えているのは、現在の TCP のプロトコルを HTTP の上に乗せて HTTP プロキシに対応する事でファイアウォールを越えようと考えています。 開発言語は Perl を使用しておりますので、テスト的に HTTP:Daemon モジュールを 使用してサーバを構築し、LWP::UserAgent でクライアントとして動作を させてみました。 1. 基本的に既存のプロトコルが Peer to Peer なので、起動時にクライアント側から サーバ側へ HTTP 接続をし、その起動中はつないだままにしておきたい。 2. 接続中はクライアント側からもサーバ側からも数KB 位のデータのやりとりを 双方向で行いたい。 この上記2 点は両立するものでしょうか? 上の 1. は keepalive を行えばできそうな感じはしますが、下の 2. はできる のでしょうか。 通常のブラウザを見ていると 1. サーバ側へファイル要求 2. サーバ側がファイル送信 という事の繰り返しですが、MSN Messenger が HTTP を使用している事を 考えると上記の 1. 2. の両立が出来そうな気がします。 |