You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(64) |
Oct
(32) |
Nov
|
Dec
|
---|
From:
<ken...@ya...> - 2006-10-21 03:49:05
|
松永です。 主要な処理とこれに紐づくタスクを全て書き出しました。 ファイルUP/DOWN周り以外は、これで全部臭いんですが、漏れてたらすみません。 階層化クラスタリングがうまく運用されれば、結構性能良いと思います。 タスクについては、擬似言語っぽい文章で内容を説明していますが、 これは、「こんな感じの処理をやる」って意味でして、 全くこれと同じ処理になるわけではありません。 厳密な処理としては全然変わってくると思います。 (詳細設計まで書くとしたら、数十倍に膨らむっぽい) 申し訳ないのですが、管理するデータの内容については、ほとんど触れていません。 (一部のデータについては、処理概要から汲みとれるかもしれません) いいかげんな説明ですみません。 自分は以下の方式のクラスタリング、ファイルキー収集のシミュレーター、本体の作成を開始します。 *************************************************************************************************************************************** [ファイル検索処理] ユーザーが設定した検索用クラスタ情報でクラスタリングを行い、指定されたキーワードで検索を行う。 ユーザーが設定した検索用クラスタ情報の数分だけ並列で実行する。 以下のタスクを実行する。 ※各タスクの処理はもうちょっと下にまとめて記載 ・ノード情報取得要求送信タスク ノード情報送信要求を送信 ・ノード情報取得タスク ノード情報収集 ・ノード情報取得要求への応答タスク 収集したノード情報を伝播 ・ノード情報リストタイムアウトタスク 古いノード情報を破棄 ・ファイルキー収集タスク 検索用のファイルキーを収集 ・ファイルキー取得要求への応答タスク 自身のファイルキーを伝播(自身のファイルキー) ・ファイルキーリストタイムアウトタスク 古いファイルキーを破棄 ・検索タスク 検索&検索結果保存 ・ファイルキー取得要求への応答タスク 自身のファイルキーを伝播(ユーザーが設定した検索用クラスタ情報に属したものが、たまたま自身のファイルキーに存在すれば、これを伝播する) [自ファイルキー伝播処理] 自身のファイルキーを適切な位置に伝播するためのクラスタリング処理。 自身のファイルキー群をクラスタ情報が近いもの同士で切り分けて、 切り分けたそれぞれの中で時分割でクラスタキーワードを変更しながら、 自身のノード情報(アドレス、クラスタ情報、保有ファイルキー数)を周囲に伝播して、ファイルキーを伝播する。 各クラスタキーワードに紐づくファイルの数で、時分割に差をつける。(数が多いほど、長い時間をとる) 本処理は複数個(定数個。未定)で並列で処理する。 以下のタスクを実行する。 ※各タスクの処理はもうちょっと下にまとめて記載 ・ノード情報取得要求送信タスク ノード情報送信要求を送信 ・ノード情報取得タスク ノード情報収集 ・ノード情報取得要求への応答タスク 収集したノード情報を伝播 ・ノード情報リストタイムアウトタスク 古いノード情報を破棄 ・ファイルキー取得要求への応答タスク 自身のファイルキーを伝播(自身のファイルキー) *************************************************************************************************************************************** [クラスタリング関連タスク群] クラスタリングを行う。 クラスタ情報単位でタスクを作成する。 以下情報にアクセスする。 ・自身のクラスタ情報 ・自身のノード情報 ・自身が収集したノード情報リスト ・クラスタ情報リスト ------------------------------------------------------------------------------------------------------------------------------------- ・ノード情報取得要求送信タスク 処理対象ノード情報リスト = ノード情報リストから、ノード情報取得済みフラグがOFFのノードを選び出す。 if(処理対象ノード情報リストが0件か?) { // 0件 ノード情報リストの全てのノードのノード情報取得済みフラグをONにする。 処理対象ノード情報リスト = ノード情報リスト } ノード情報取得要求送信ノードリスト = 処理対象ノード情報リストから、クラスタ情報の優先度が高い順に数件のノードを選ぶ。 ノード情報取得要求送信ノードリストの全ノードに対して、ノード情報取得要求を送信する。 ノード情報取得済みフラグをONにする。 ★ついでに、自ノード情報も送信する。 ------------------------------------------------------------------------------------------------------------------------------------- ・ノード情報取得タスク 受信済みノード情報リスト = 受信キューから受信したノード情報を取り出す。 ノード情報リストに受信済みノード情報リストのノード情報を追加する。 既存ノードの場合、より新しい情報であれば、情報を上書きする。 ★新しいクラスタ情報が発見されれば、クラスタ情報リストにクラスタ情報を追加する。←クラスタ情報のブラウズに使用する ノード情報リストを自クラスタ情報の優先度で降順ソートする。 if(ノード情報リストがn件を超えたか?) { // n件を超えた ノード情報リストのn件目以降を破棄する } ------------------------------------------------------------------------------------------------------------------------------------- ・ノード情報取得要求への応答タスク ノード情報取得要求リスト = 受信キューからノード情報取得要求を取り出す。 for(インデックス = 0; インデックス < ノード情報取得要求リストの要素数; インデックス++) { ノード情報リストから優先度上位n位のノード情報を取り出して、ノード情報取得要求リスト[インデックス]の要求発信元へ送信する。 ★ついでに、自ノード情報も送信する。 } ------------------------------------------------------------------------------------------------------------------------------------- ・ノード情報リストタイムアウトタスク for(インデックス = 0; インデックス < ノード情報リストの要素数; インデックス++) { ノード情報リスト[インデックス]の残り時間をデクリメントする。 } for(インデックス = 0; インデックス < ノード情報リストの要素数; インデックス++) { if(ノード情報リスト[インデックス]の残り時間 <= 0) { ノード情報リスト[インデックス]を破棄する。 } } *************************************************************************************************************************************** [ファイルキー収集関連タスク群] ファイルキーの収集、検索を行う。 クラスタ情報単位でタスクを作成する。 以下情報にアクセスする。 ・自身のクラスタ情報 ・自身のクラスタ情報に紐づいたファイルキーリスト ・自身が収集したファイルキーリスト ・自身の検索キーワードリスト ・検索キーワード別検索結果リスト ・自身のノード情報 ・自身が収集したノード情報リスト ------------------------------------------------------------------------------------------------------------------------------------- ・ファイルキー取得要求送信タスク 処理対象ノード情報リスト = ノード情報リストから、ファイルキー取得済みフラグがOFFのノードを選び出す。 if(処理対象ノード情報リストが0件か?) { // 0件 ノード情報リストの全てのノードのファイルキー取得済みフラグをONにする。 処理対象ノード情報リスト = ノード情報リスト } ファイルキー要求送信ノードリスト = 処理対象ノード情報リストから、クラスタ情報の優先度が高い順に数件のノードを選ぶ。 ファイルキー要求送信ノードリストの全ノードに対して、自クラスタ以下の階層のファイルキー取得要求を送信する。 ファイルキー取得済みフラグをONにする。 ------------------------------------------------------------------------------------------------------------------------------------- ・ファイルキー収集タスク 受信済みファイルキーリスト = 受信キューから受信したファイルキーを取り出す。 ファイルキーリストに受信済みファイルキーリストに取り込む。 ★新しいクラスタ情報が発見されれば、クラスタ情報リストにクラスタ情報を追加する。←クラスタ情報のブラウズに使用する ファイルキーリストを自クラスタ情報の優先度で降順ソートする。 if(ファイルキーリストがn件を超えたか?) { // n件を超えた ファイルキーリストのn件目以降を破棄する } ------------------------------------------------------------------------------------------------------------------------------------- ・ファイルキー取得要求への応答タスク ファイルキー取得要求リスト = 受信キューからファイルキー取得要求を取り出す。 for(インデックス = 0; インデックス < ファイルキー取得要求リストの要素数; インデックス++) { 指定された階層以下のファイルキーを、ファイルキー取得要求リスト[インデックス]の要求発信元へ送信する。 } ------------------------------------------------------------------------------------------------------------------------------------- ・ファイルキーリストタイムアウトタスク for(インデックス = 0; インデックス < ファイルキーリストの要素数; インデックス++) { ファイルキーリスト[インデックス]の残り時間をデクリメントする。 } for(インデックス = 0; インデックス < ファイルキーリストの要素数; インデックス++) { if(ファイルキーリスト[インデックス]の残り時間 <= 0) { ファイルキーリスト[インデックス]を破棄する。 } } ------------------------------------------------------------------------------------------------------------------------------------- ・検索タスク for(インデックス = 0; インデックス < 検索キーワードリストの要素数; インデックス++) { 検索対象リスト = 検索キーワードリスト[インデックス]のキーワードで検索されていないファイルキーを、ファイルキーリストから取得する。 for(インデックス2 = 0; インデックス2 < 検索対象リストの要素数; インデックス2++) { 検索結果リスト = 検索対象リストを検索キーワードリスト[インデックス]のキーワードで検索し結果を取得する。 検索結果リストの内容を検索キーワード別検索結果リストへ取り込む。 } } *************************************************************************************************************************************** [その他検討中] ファイルのダウンロードは今まで検討していたやり方でOKぽい。 ファイル全ブロックのの1/nを超えたら、そのファイルキーの伝播を始める。 ただし、検索者側は完全なファイルを持つノードを見つけない限り、不完全なファイルのファイルキーを表示させない。 (不完全なファイルがネットワークに残るのを防ぐため) クラスタ階層のブラウズはツリー構造で行う。 ツリーを開くことでリアルタイムでクラスタキーワードを切り替えて、その階層の情報を収集する。 各階層には、ノードする、完全・不完全ファイル数を表示する。 以上 --------------------------------- Start Yahoo! Auction now! Check out the cool campaign |
From:
<ken...@ya...> - 2006-10-18 17:04:38
|
ありえます。 入れ替わった場合、入れ替わったそれぞれのキーワードについては、 前方一致分の繋がりしか保てません。 クラスタをブラウズする機能がありますので、 キーワードを設定する人は極力、既存のキーワードにあわせる運用が望まれます。 阿部誠 <abe...@gm...> wrote: まだ理解できていないんですが、 気になった点を一つだけ /動画/映画/洋画/アクション/スーパーマン/ヤングスーパーマン 上記のようにクラスタを階層化するという話ですが /動画/映画/洋画/アクション/スーパーマン/ヤングスーパーマン とか /動画/映画/洋画/アクション/ヤングスーパーマン/スーパーマン とか /スーパーマン/ヤングスーパーマン/動画/映画/洋画/アクション など順番の入れ替れかわったクラスタ階層は発生しえますか? 発生する場合、どのように扱うことになりますか? --------------------------------- Start Yahoo! Auction now! Check out the cool campaign |
From: <abe...@gm...> - 2006-10-18 16:24:52
|
まだ理解できていないんですが、 気になった点を一つだけ /動画/映画/洋画/アクション/スーパーマン/ヤングスーパーマン 上記のようにクラスタを階層化するという話ですが /動画/映画/洋画/アクション/スーパーマン/ヤングスーパーマン とか /動画/映画/洋画/アクション/ヤングスーパーマン/スーパーマン とか /スーパーマン/ヤングスーパーマン/動画/映画/洋画/アクション など順番の入れ替れかわったクラスタ階層は発生しえますか? 発生する場合、どのように扱うことになりますか? |
From:
<ken...@ya...> - 2006-10-18 15:16:11
|
松永です。 今、考えているアイデアを連携します。 適当な内容、文章でごめんなさい。 考えていることの全てを書ききっているわけではありませんので、 気になる点がありましたら、質問お願いします。 >クラスタキーワードをディレクトリ構造のような階層構造にして、 >それをブラウズできるようにするアイデアと、 >share式のクラスタ化をうまく組み合わせると、 >すごく良くなりそうな気がしている所です。 ------------------------------------------------------------ ・クラスタキーワードをディレクトリの様な階層構造で指定する。 例) /動画/アニメ/ドラゴンボール /動画/映画/洋画/アクション/スーパーマン/ヤングスーパーマン /コミック/一般コミック/ドラゴンボール ------------------------------------------------------------ ・ファイルの第一発信者は、ファイルに対して1つのクラスタキーワードを設定する。 例) ファイル名 ... ドラゴンボール第1話.avi クラスタキーワード ... /動画/アニメ/ドラゴンボール/ ------------------------------------------------------------ ・ファイルの検索者は検索用にクラスタキーワードを指定する。 複数のクラスタキーワードと、クラスタキーワードに紐づく複数の検索キーワードを指定できる。 例) 検索クラスタキーワード1: /動画/アニメ/ドラゴンボール/ 検索キーワード1: ドラゴンボール 1話 検索キーワード2: ドラゴンボール 2話 検索キーワード3: ドラゴンボール 3話 検索クラスタキーワード1: /コミック/一般コミック/デスノート 検索キーワード1: デスノート 1巻 検索キーワード2: デスノート 2巻 検索キーワード3: デスノート 3巻 ------------------------------------------------------------ ・クラスタキーワードのブラウズをサポートする ネットワーク上で検出した全てのクラスタキーワードを、木構造で閲覧可能にして、それを選択できるようにする。 もちろん、本人が新しいキーワードを作成することもできる。 ------------------------------------------------------------ ・クラスタキーワードの結びつきの判定は、階層単位の前方一致で行う 上位の階層から順に照合していき一致するだびにポイントを加算する。 不一致が見つかった時点で判定をやめる。 ポイントが高いほど、結びつきが強い。 ------------------------------------------------------------ ・クラスタリングタスクについて 自身のクラスタキーワードと結びつきが強いノード間で、 周辺のノード情報(アドレスとクラスタキーワード、同クラスタキーワードでの提供ファイル数)を伝播する。 全てのノードが複数のクラスタリングタスクを実行する。 タスクは検索クラスタキーワード1つにつき1つ、ファイル提供者としてn個(未定。定数個)存在する。 検索クラスタキーワードのクラスタリングタスクは、 指定されたクラスタキーワードでクラスタリングを行い、ノード情報の伝播に貢献する。 同時に集めたノードからファイルキーを収集して、自身の検索に役立てる。 ファイルキーの他ノードへの伝播は行わない。 ファイル提供者のクラスタリングタスクは、 自身が持つ複数のファイルの複数のクラスタキーワードを時分割で切り替えながら、 クラスタリングを行う。 クラスタキーワード毎のファイルキーの数で、時分割の重み付けを行う。 ノード情報の伝播に貢献しながら、自身のノード情報を他ノードに伝播させて、 依頼があれば、自身のファイルのファイルキーを検索ノードに渡す。 複数タスクで動作させて、複数クラスタキーワードのクラスタリングを同時に行う。 松永 健太郎 <ken...@ya...> wrote: 松永です。 自分は全く独自路線で考えている所でした。 まだ不完全で、色々アイデアは考えている途中ですが、一応報告しときます。 クラスタキーワードをディレクトリ構造のような階層構造にして、それをブラウズできるようにするアイデアと、share式のクラスタ化をうまく組み合わせると、すごく良くなりそうな気がしている所です。 詳細はそのうち発表します。 阿部君の提案はそれはそれでありかもしれないと思いますんで、 そっちはそっちの方向で考えていてOKです。 --------------------------------- Start Yahoo! Auction now! Check out the cool campaign |
From:
<ken...@ya...> - 2006-10-17 15:43:04
|
松永です。 自分は全く独自路線で考えている所でした。 まだ不完全で、色々アイデアは考えている途中ですが、一応報告しときます。 クラスタキーワードをディレクトリ構造のような階層構造にして、それをブラウズできるようにするアイデアと、share式のクラスタ化をうまく組み合わせると、すごく良くなりそうな気がしている所です。 詳細はそのうち発表します。 阿部君の提案はそれはそれでありかもしれないと思いますんで、 そっちはそっちの方向で考えていてOKです。 阿部誠 <abe...@gm...> wrote: 阿部です。 管理サーバによるクラスタリングノードの形成と それにぶら下がる形の、キーサーバ、一般ノードと言う構図(今の設計) はやはりそれほど複雑ではないと思います。 キーサーバは、クラスタリングノードから最適な管理サーバを見つけて登録し、 一般ノードは検索対象のキーサーバをクラスタリングノードから見つける。 管理サーバへの問い合わせは、クラスタ情報を引数に、最適なノードを見つけるだけ と、決めて設計して、それに沿わない部分を変更していけば問題ないはず。 (キーサーバは登録に最適な管理サーバを見つけるために使用、 一般ノードは検索に最適なキーサーバを見つけるために使用) *ファイルキー登録時のグループ化という考えが、すべての破綻の原因だと思う。 以上。 06/10/16 に 阿部誠 さんは書きました: > 今までのメールに流れた、Wikiに書き込まれた情報は、 > 松永PLの英断により、一旦白紙となりました。 > > あまりにも複雑化したため(後づけの機能仕様) > とShareがもっと簡単な仕組みで動いていると言う事実により、 > Share方式も視野に入れた、新たな方式を摸索していこうと言うことに。 > > > Share方式について、 > Share方式は、検索自体はノード間で行わず、ファイルキー収集のみを行う仕様になっており、 > 自ノードはクラスタ化で寄せられたノード内を駆け回ってファイルキー情報を集め回り > 検索は集めたファイルキー情報の集合に対して行います。 > ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ P2p-sim-develop mailing list P2p...@li... https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop --------------------------------- Start Yahoo! Auction now! Check out the cool campaign |
From: <abe...@gm...> - 2006-10-17 14:12:29
|
阿部です。 管理サーバによるクラスタリングノードの形成と それにぶら下がる形の、キーサーバ、一般ノードと言う構図(今の設計) はやはりそれほど複雑ではないと思います。 キーサーバは、クラスタリングノードから最適な管理サーバを見つけて登録し、 一般ノードは検索対象のキーサーバをクラスタリングノードから見つける。 管理サーバへの問い合わせは、クラスタ情報を引数に、最適なノードを見つけるだけ と、決めて設計して、それに沿わない部分を変更していけば問題ないはず。 (キーサーバは登録に最適な管理サーバを見つけるために使用、 一般ノードは検索に最適なキーサーバを見つけるために使用) *ファイルキー登録時のグループ化という考えが、すべての破綻の原因だと思う。 以上。 06/10/16 に 阿部誠<abe...@gm...> さんは書きました: > 今までのメールに流れた、Wikiに書き込まれた情報は、 > 松永PLの英断により、一旦白紙となりました。 > > あまりにも複雑化したため(後づけの機能仕様) > とShareがもっと簡単な仕組みで動いていると言う事実により、 > Share方式も視野に入れた、新たな方式を摸索していこうと言うことに。 > > > Share方式について、 > Share方式は、検索自体はノード間で行わず、ファイルキー収集のみを行う仕様になっており、 > 自ノードはクラスタ化で寄せられたノード内を駆け回ってファイルキー情報を集め回り > 検索は集めたファイルキー情報の集合に対して行います。 > |
From: <abe...@gm...> - 2006-10-17 13:55:41
|
阿部です。 そもそもファイルキーごとにクラスタキーワードを作るまではいいけど それをグループ化しようという考えが間違いだと気づきました。 グループ化は辞めて、ファイルキーごとに、管理サーバへの最適ノードの問い合わせ 抽出ノードへの登録を順次繰り返す処理に変更すべきです。 ファイルキー登録のタイムアウト時間を多くとれば、それで問題ないはず。 そもそもグループ化という考えは、管理サーバへの最適ノード問い合わせの 省力化という考えで生まれたものと推測できますが、 グループ化を中心に考えすぎて、構想が破綻してしまったと思います。 06/10/15 に 阿部誠<abe...@gm...> さんは書きました: > アベです。 > > 松永氏と協議した内容を展開します。 > > 現状の仕様だとファイルキー登録の際、 > 適切なキーサーバに登録されないと言う問題が発生するようです。 > > ファイルキー登録の際、ファイルごとにクラスタ情報(クラスタキーワード集合) > を設定し、クラスタ情報ごとに適切なキーサーバを見つける必要がありますが、 > その前に一般ノードが数千のキャッシュ情報を保持していたりする場合、 > いくつものフアイルキークラスタ情報が発生しえるため、すべてのキーサーバを見つけるのが不可能 > というものです。 > > したがって、一般ノードが完全に適切なキーサーバに登録させるのはあきらめ、 > 登録されたファイルキー情報をキーサーバが独自に判断して登録を移動させよう。 > と言うことになりました。 > > それに伴い > ・キーサーバー自身がクラスタ化しないと独自の判断で動けない > と言う問題が生じ、 > じゃあ管理サーバ(システム管理サーバ)いらないじゃん というところまで話が進行しています。 > (今までは管理サーバがクラスタ化を行っていた) > > > んで思いついたことがあるんですが、とりあえずこのメールはここまで。 > |
From: <abe...@gm...> - 2006-10-15 15:13:17
|
今までのメールに流れた、Wikiに書き込まれた情報は、 松永PLの英断により、一旦白紙となりました。 あまりにも複雑化したため(後づけの機能仕様) とShareがもっと簡単な仕組みで動いていると言う事実により、 Share方式も視野に入れた、新たな方式を摸索していこうと言うことに。 Share方式について、 Share方式は、検索自体はノード間で行わず、ファイルキー収集のみを行う仕様になっており、 自ノードはクラスタ化で寄せられたノード内を駆け回ってファイルキー情報を集め回り 検索は集めたファイルキー情報の集合に対して行います。 |
From: <abe...@gm...> - 2006-10-14 19:52:51
|
ファイルキー登録を適切なキーサーバに登録する方法につきまして 案がありますので、メールにて展開します。 まず前提として、現在wikiに書いているシステムがベースです。 〔結論〕システム管理サーバ(管理サーバ)にファイルキー登録を代行させる 一般ノードはファイルキーに適切なクラスタキーワードを設定していきます。 ファイル1:A,B,C,D ファイル2:A,E,F,G ファイル3:H,I,J ファイル4:L,M,N ここで、一般ノードのファイルキー登録用クラスタ情報には限界があるので グループ化することになります。 クラスタ情報:A ファイル1、ファイル2 クラスタ情報:H ファイル3、ファイル4 見たいな感じです。グループ化はクラスタ情報の共通部分でまとめるイメージとなります。 ただし、グループ化にも限界数があるため、 限界がきたらファイル4のように無理やり当てはめることになります。 さてここで管理サーバに登録を依頼します。 ファイル1の場合は、クラスタ情報Aに近い管理サーバにファイルキー登録を依頼します。 この際、ファイルキー内部情報として適切なクラスタ情報(A,B,C,D)も入れておきます。 後は管理サーバ内の情報からより近い管理サーバを見つけファイルキー情報を 再送します。再送先の管理サーバも同様の処理を繰り返します。 そんな具合で、定数回ホップし、より近い管理サーバに到達したところで その下にぶら下がるキーサーバのうちもっとも近いキーサーバに登録します。 ホップを何度か行うためファイル4も適切な場所に登録されます。 またホップする際には当然ファイルキー内部情報を使用します。(言うまでもないか) 当然、負荷が増大するため システム管理サーバ<キーサーバ<一般ノード と言う比率ではなく キーサーバ<システム管理サーバ<一般ノード となるかもしれません。 名前も、管理サーバというより窓口サーバ?になるかもしれません。 追加案として ホップしている間、ホップ先の管理サーバにぶら下がるキーサーバのクラスタ情報もチェックして、 一番近いキーサーバ情報を記憶しておき、定数回に達した時点での 一番近いキーサーバに登録する。 というのはどうでしょう? いっそのこと検索も管理サーバにやらせてしまいますか? <利点> キーサーバの負荷を減らせる。 管理サーバが多重登録を行うため、一般ノードの負荷も減らせる。 <欠点> いまのところ思い浮かばない。 あとはキーサーバは管理サーバに登録する必要がありますが、 管理サーバのほうがノード数が増える場合、その辺の処理が変更になるかもしれません |
From: <abe...@gm...> - 2006-10-14 19:12:23
|
アベです。 松永氏と協議した内容を展開します。 現状の仕様だとファイルキー登録の際、 適切なキーサーバに登録されないと言う問題が発生するようです。 ファイルキー登録の際、ファイルごとにクラスタ情報(クラスタキーワード集合) を設定し、クラスタ情報ごとに適切なキーサーバを見つける必要がありますが、 その前に一般ノードが数千のキャッシュ情報を保持していたりする場合、 いくつものフアイルキークラスタ情報が発生しえるため、すべてのキーサーバを見つけるのが不可能 というものです。 したがって、一般ノードが完全に適切なキーサーバに登録させるのはあきらめ、 登録されたファイルキー情報をキーサーバが独自に判断して登録を移動させよう。 と言うことになりました。 それに伴い ・キーサーバー自身がクラスタ化しないと独自の判断で動けない と言う問題が生じ、 じゃあ管理サーバ(システム管理サーバ)いらないじゃん というところまで話が進行しています。 (今までは管理サーバがクラスタ化を行っていた) んで思いついたことがあるんですが、とりあえずこのメールはここまで。 |
From:
<ken...@ya...> - 2006-10-11 17:22:09
|
松永です。 下記件について、阿部氏と松永の協議により、とりあえず、以下に決定しました。 [ポート開けられないユーザについて] ポート開けられないユーザの救済はやらないこととしました。 理由: やっぱりめんどくさい(メーカ別ルータの仕様調査とか) IPv6が普及すれば、みんなグローバルIPもらえるっぽい。(ホントか?) [ファイルキー登録方式の意見交換] とりあえずA案採用としました。 理由: A案の欠点と思われる所が、アルゴリズムの工夫で大きな負荷とならないことが判明。 アルゴリズムの工夫で、ファイル共有効率をかなり高くできそう。 等 --------------------------------- [10th Anniversary] special auction campaign now! |
From:
<ken...@ya...> - 2006-10-11 17:06:27
|
松永です。 タスクの洗い出しをやっている所ですが、 この作業の先が見えなくなってきた感じがするので、一旦ここでまとめてみます。 「足りないと思われる処理」に書き加えられるものがありましたら指摘願います。 以下、ノード種別毎の現在必要と思われているタスクと、 今後タスクとして追加しないといけなそうな処理です。 タスクの概要はwikiのTop / P2P-Sim / タスク一覧 に記載されています。(超汚い。タスク全て洗い出したら整理しようね) ------------------------------------------------------------------------- [ノードによらないもの] ・基本 受信データ振り分けタスク ・ファイルキー登録 ファイル情報生成タスク ・ノード比率調整 自ノード情報送信タスク ■■■足りないと思われる処理■■■ ファイルの検索 ファイルキーの登録 ファイルの検索、ファイルキーの登録に使用する管理サーバ、キーサーバ情報の収集 自身のノード種別の変更 ファイルの送信、受信 ディスク空き容量確保? [システム管理サーバ] ・クラスタ化 システム管理サーバリストタイムアウト監視タスク 管理サーバリスト取得要求タスク システム管理サーバ情報収集タスク 管理サーバ取得要求応答タスク システム管理サーバ情報取得要求応答 ・キーサーバ情報の管理 キーサーバ情報の収集タスク キーサーバ情報取得要求応答タスク キーサーバ情報タイムアウト削除タスク ・ノード比率調整 システム情報収集タスク 比率調整タスク ■■■足りないと思われる処理■■■ 無い? [キーサーバ] ・ファイルキー情報の収集 ファイルキー受け入れタスク ファイル保持ノードのタイムアウト監視タスク ・検索サービス、ファイル情報の公開 検索要求受け入れタスク ダウンロード候補リスト取得要求応答タスク ファイル情報取得要求応答タスク ・自情報公開 キーサーバ情報取得要求応答タスク ■■■足りないと思われる処理■■■ 無い? [キャッシュサーバ] ■■■足りないと思われる処理■■■ キャッシュ処理 ------------------------------------------------------------------------- --------------------------------- [10th Anniversary] special auction campaign now! |
From:
<ken...@ya...> - 2006-10-07 04:20:52
|
うん 阿部誠 <abe...@gm...> wrote: こんな感じ? http://p2p-sim.sourceforge.net/sitedev2/index.php?P2P-Sim%2F%E6%9C%AA%E8%A7%A3%E6%B1%BA%E5%95%8F%E9%A1%8C 06/10/07 に 松永 健太郎 さんは書きました: > 松永です。 > > 開発サイトに話したことの概要書き込む領域作ってそこに色々書き込もうよ。 > ついでにmailの履歴とかも。 > > > > 阿部誠 wrote: > でも・・全員に展開しないと・・・。 > > 06/10/06 に 松永 健太郎 さんは書きました: > > 松永です。 > > > > 書くのめんどくさいんで、直接話します。 > > めんどくさすぎる... > > > > > > > 松永 健太郎 wrote: > > > > 松永です。 > > > > えー、UDPホール・パンチングについては松永の解釈に誤解があったようです。ごめんなさい。 > > > > > ****************************************************************************************************************************** > > > > [UDPホール・パンチングとは] > > > > ×(以前の松永の解釈) ... A→BとUDPパケットを投げた時に、ルータによってB→Aエントリが作成される。← > > ルータの機能でCone NATと言うらしい。全てのルータがサポートしているわけではない。 > > > > ○(本当の意味) ... A、B共にルータの内側に居る場合でも、Cone > > NAT機能を利用してUDPの通信を可能にするためのテクニック。 > > > (Skypeの例では、スーパーノードを経由して互いの情報を交換して、その情報を元にA→B、B→AとUDPパケットを投げて、双方向のエントリを作成する) > > > > ということなので、これまでの松永の書込みの「UDPホール・パンチング」は全て、Cone > > NATに置き換えて解釈して下さい。ごめんなさい。 > > また、「Cone NATをサポートしていたら片方がポート開けてればOK」は厳密には間違いで、 > > プラスαでUDPホール・パンチングをやればどっちもポート開けてなくてもOKになるね。 > > > > で、ルータがCone > > > NATをサポートしていないことが、ルータの内側に居るノードの通信の障壁になるわけで、プロバイダは技術的にブロックできないよ。 > > > (プロバイダが加入者とその通信相手のローカルネットワークのルータのエントリについて知ってるわけないし。ルータ使ってるって事も普通に考えて意識しないだろうし。) > > > > あと、西村君の家のCone > > NATサポート状況を調べたければ、Skypeで通話して、外部からUDPパケットが届いているか調べれば確実。 > > ただし、UDPパケットが届かずにTCP接続で通話していたからといって、Cone > > NATサポートしていないとは言い切れない(Skypeのプロトコル次第)。 > > この場合は、実際にパケット投げて確かめないと判らないね。 > > > > ちょっと議論の本質からは離れてしまいました。 > > > > > ****************************************************************************************************************************** > > > > [ポート開けられないユーザについて] > > > > 阿部君がものすごくやりたそうなので、もう止めはしませんが、阿部君案でいくつか気になる所があります。 > > > > 昼休みが終わりそうなので、内容については後で。 > > > > > > > > 阿部誠 wrote: > > さらに補足です。 > > ノードFはポート空けノードです。 > > もしポート未明けノードだったら、ノードPへのダウンロード要求時に失敗応答を返すとします。 > > > > > > 06/10/06 に 阿部誠 さんは書きました: > > > ごめん言い忘れてたけど、前提としてキーサーバはポート空けノードしかなれない > > > (システム管理サーバも同様(今回は関係ないけど)) > > > > > > 06/10/06 に 阿部誠 さんは書きました: > > > > お疲れです。阿部です。 > > > > > > > > スカイプのサイトは見てみたよ。 > > > > もしかしたら間違ってるかもしれないけど、そのときはすいませn。 > > > > > > > > どうも松永君の記載を見ていると「UDPホール・パンチング」を間違えてないかと > > > > > > > > <前提> > > > > ノードA:グローバルIP保持 > > > > ノードB:ローカルIP(ルータ越し) > > > > > > > > 「ノードBからノードAへUDPパケットを送る場合はノードBルータにA→Bエントリが形成され > > > > ノードAからノードBへの返信UDPパケットはそのエントリを元にルータを通過し、ノードBへ届く」 > > > > > > > 上記はUDP通信として本来想定している動作であり、そのエントリ生成機能を規定外利用しているのが「UDPホール・パンチング」機能だよね? > > > > > > > > したがって上記例では対応していないルータはないはずだよ。 > > > > > > > 意図的にUDPを許可していない可能性はあるかもしれないけど、そんなプロバイダはないとおもう。そしてレオネットが対応しているかどうかはリアルタイム性を要求するネットげーを > > > > 試してみればわかるんじゃないかな?>西村君 > > > > > > > > んで、提案させてもらうと > > > > 基本的には(1)案なんだけど、 > > > > 将来的に機能拡張という形で搭載と言う方向性を考えて(1)変則案を提示します。 > > > > > > > > ・新たなノード種別として「プロクシノード」を定義する。 > > > > 対象ノードはポートが空けてある一般ノードすべて > > > > > > > > ポート未空ノード(以降「ノードA」)はプロキシノード(以降「ノードP」)に対し定期的に > > > > ファイルキーを登録。(キーサーバには送信しない) > > > > ノードPは自身のファイルキーと同時に自分のファイルキーとして > > > > ノードAのファイルキーをキーサーバーに代理登録。 > > > > > > > > ノードAのファイルがほしいノード(以降「ノードF」)はまずキーサーバから > > > > 持ち主がノードPと認識し、ノードPへダウンロード要求を送信します。 > > > > > > > > ノードPは自分の持っているファイルキーではないと判断すると、 > > > > ノードFに対して、TCPポートを空けて待機するように指示を出します。 > > > > > > > > ノードAは定期的にファイルキー登録要求をノードPに送信しているため、 > > > > ノードPはそのファイル登録キー登録要求の応答にあわせて、 > > > > アップロード指示をノードAに出します。(UDPとしての通常の手順) > > > > > > > > ノードAは」指示をうけるとノードFへファイル転送コネクションをとります。 > > > > これでノードA→ノードFへのファイル転送が行われます。 > > > > > > > > 補足として、ノードPが扱うポート未空けノードは1台or2台くらい > > > > プロキシノードの探し方はキーサーバからランダムに検出 > > > > > > > > ・一般ノード間のやりとりだけの変更になるため、後からでも対応可能? > > > > ・一般ノードのファイルキー登録処理周辺が複雑化しそう > > > > 等ありますが、やはりほしい機能です。 > > > > > > > > ご考慮ください > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 06/10/05 に 松永 健太郎 さんは書きました: > > > > > 松永です。 > > > > > > > > > > 少し情報が足りないので内容を追加します。 > > > > > > > > > > 3番の案はルータがUDPホール・パンチングに対応している場合のみ可能。 > > > > > > > > > > 松永 健太郎 wrote: > > > > > > > > > > 松永です。 > > > > > > > > > > >それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > > > > > そうなりますね。 > > > > > 西村君の名前を出されるとかなり心苦しいところではあるけど。 > > > > > 見捨てる方向のほうが楽できると思う。 > > > > > ちょっと前に阿部君とそういう話しなかったけ? > > > > > > > > > > UDPホール・パンチングってどんなものか見てみた? > > > > > > > > > > この仕組みで、ポート開けているノードと同じような通信を > > > > > ポート開けていないノードにやらせようとすると、結構つらいことになるよ。 > > > > > > > > > > UDPホール・パンチングの何がつらいかっていうと、 > > > > > > > > UDPホール・パンチングではルータの外側Aから内側Bに対して通信するために、まず内側Bから外側Aにパケットを投げて道を作る必要があるけど、つまり、外側から勝手に通信を始めることが出来ない。 > > > > > > > > > > > > > これじゃ一般ノードにしても、ファイルアップロード時には、外側から要求が来るわけだから、外側から要求を受け付けるには、以下のどれかの選択に迫られるね。 > > > > > > > > > > > > > 1.外部からの要求を受け付ける代理ノード(もちろんポートが開いている)を定義して、内側のノードは外側からの通信を受け付けるために、代理ノードはUDPホール・パンチングでコネクションを確保する。内側のノードにパケットを投げたい時には、代理ノードにパケットを投げる。代理ノードはパケットを転送する。 > > > > > > > > > > 代理ノードの候補としてはキーサーバーが考えられる。 > > > > > ファイルキーを登録する全てのキーサーバに代理登録をしておく。 > > > > > > > > > > > > > ただし、ルータがUDPホール・パンチングに対応していなかったら、(1)の方法をとっても、外側からUDPのパケットを届けるのは不可能。 > > > > > 例えばレオネットのルータがUDPホール・パンチングに対応しているかはかなり怪しい。 > > > > > > > > > > 2. (1)と同じ MWNN$@$,!"DL?.$rTCPにする。これなら確実に通信可能。 > > > > > > > > > > 3.諦めて、ポートの内側はダウンロードオンリーする。 > > > > > > > > > > > > > > > 他にも方法は考え付くけど、上の案よりひどいので省略。 > > > > > > > > > > > > > > > 個人的な意見を言わせてもらえば、 > > > > > > > > > > 1は面倒だし、ルータが対応していないと破綻するので嫌。 > > > > > > > > > > 2は面倒な上に、普段はUDPなのに、特別ケースでTCPの通信も考えなくちゃいけないので嫌。 > > > > > > > > > > 3は内側のノードがシステムに一切貢献しないから嫌。 > > > > > < DIV>よって、ポート開けられないユーザは見捨てたい。 > > > > > 対応するとしても、ずっと後がいいです。 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > それとも、もっと簡単な実現方法考え付いてる? > > > > > 又は、上記の案のどれかと似たような仕組みを考え付いていて、それを受け入れている? > > > > > > > > > > > > > > > 阿部誠 wrote: > > > > > 阿部です。 > > > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > > それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > > > > > それはないと思うので、 > > > > > 少なくても一般ノード(キャッシュサーバ)はポート空けなしで参加可能と言うことにしましょう。 > > > > > システム管理サーバ、キーサーバはポート空け必須と言うことにしましょう。 > > > > > > > > > > 問題は、大多数がポート空けなしになる可能性だけど > > > > > ファイル交換時はノード空けなしだと接続対象が大幅に減るので問題ないと思います。 > > > > > > > > > > > > > > > 06/10/04 に 松永 健太郎 さんは書きました: > > > > > > 松永です。 > > > > > > > > > > > > >プライベートIPでの参加ノードはどう取り扱いますか? > > > > > > > > > > > > > > アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 > > > > > > で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 > > > > > > 他に良さげな方法ある? > > > > > > たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) > > > > > > > > > > > > >UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > > > > > > > UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 > > > > > > 使えないなら、両方空けている必要があるね。 > > > > > > > > > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > > > > > > > > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html > > > > > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html > > > > > > > > > > > > > > > > > > 関係ないけど、下のページ少し参考になるよ? > > > > > > SkypeとかGnutellaのプロトコルについて少し解説してるし。 > > > > > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html > > > > > > > > > > > > 阿部誠 wrote: > > > > > > 阿部です。 > > > > > > > > > > > > プライベートIPでの参加ノードはどう取り扱いますか? > > > > > > UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > > share > > > > > > your > > > > > > opinions on IT & business topics through brief surveys -- and > earn > > cash > > > > > > > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > _______________________________________________ > > > > > > P2p-sim-develop mailing list > > > > > > P2p...@li... > > > > > > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > > share > > > > > your > > > > > > opinions on IT & business topics through brief surveys -- and > earn > > cash > > > > > > > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > > > > > > > _______________________________________________ > > > > > > P2p-sim-develop mailing list > > > > > > P2p...@li... > > > > > > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > > share > > > > > your > > > > > opinions on IT & business topics through brief surveys -- and earn > > cash > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > _______________________________________________ > > > > > P2p-sim-develop mailing list > > > > > P2p...@li... > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > > [10th Anniversary] special auction campaign now! > > > > > > > > ------------------------------------------------------------------------- > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > > share > > > > > your > > > > > opinions on IT & business topics through brief surveys -- and earn > > cash > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > > > > > P2p-sim-develop mailing list > > > > > P2p...@li... > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > > share your > > > > > opinions on IT & business topics through brief surveys -- and earn > > cash > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > > > > > _______________________________________________ > > > > > P2p-sim-develop mailing list > > > > > P2p...@li... > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > your > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > > P2p-sim-develop mailing list > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > ________________________________ > > [10th Anniversary] special auction campaign now! > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > your > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > > P2p-sim-develop mailing list > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > ________________________________ > > [10th Anniversary] special auction campaign now! > > > > > > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > _______________________________________________ > > P2p-sim-develop mailing list > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > ________________________________ > [10th Anniversary] special auction campaign now! > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ P2p-sim-develop mailing list P2p...@li... https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop --------------------------------- [10th Anniversary] special auction campaign now! |
From: <abe...@gm...> - 2006-10-07 02:49:43
|
こんな感じ? http://p2p-sim.sourceforge.net/sitedev2/index.php?P2P-Sim%2F%E6%9C%AA%E8%A7%A3%E6%B1%BA%E5%95%8F%E9%A1%8C 06/10/07 に 松永 健太郎<ken...@ya...> さんは書きました: > 松永です。 > > 開発サイトに話したことの概要書き込む領域作ってそこに色々書き込もうよ。 > ついでにmailの履歴とかも。 > > > > 阿部誠 <abe...@gm...> wrote: > でも・・全員に展開しないと・・・。 > > 06/10/06 に 松永 健太郎 さんは書きました: > > 松永です。 > > > > 書くのめんどくさいんで、直接話します。 > > めんどくさすぎる... > > > > > > > 松永 健太郎 wrote: > > > > 松永です。 > > > > えー、UDPホール・パンチングについては松永の解釈に誤解があったようです。ごめんなさい。 > > > > > ****************************************************************************************************************************** > > > > [UDPホール・パンチングとは] > > > > ×(以前の松永の解釈) ... A→BとUDPパケットを投げた時に、ルータによってB→Aエントリが作成される。← > > ルータの機能でCone NATと言うらしい。全てのルータがサポートしているわけではない。 > > > > ○(本当の意味) ... A、B共にルータの内側に居る場合でも、Cone > > NAT機能を利用してUDPの通信を可能にするためのテクニック。 > > > (Skypeの例では、スーパーノードを経由して互いの情報を交換して、その情報を元にA→B、B→AとUDPパケットを投げて、双方向のエントリを作成する) > > > > ということなので、これまでの松永の書込みの「UDPホール・パンチング」は全て、Cone > > NATに置き換えて解釈して下さい。ごめんなさい。 > > また、「Cone NATをサポートしていたら片方がポート開けてればOK」は厳密には間違いで、 > > プラスαでUDPホール・パンチングをやればどっちもポート開けてなくてもOKになるね。 > > > > で、ルータがCone > > > NATをサポートしていないことが、ルータの内側に居るノードの通信の障壁になるわけで、プロバイダは技術的にブロックできないよ。 > > > (プロバイダが加入者とその通信相手のローカルネットワークのルータのエントリについて知ってるわけないし。ルータ使ってるって事も普通に考えて意識しないだろうし。) > > > > あと、西村君の家のCone > > NATサポート状況を調べたければ、Skypeで通話して、外部からUDPパケットが届いているか調べれば確実。 > > ただし、UDPパケットが届かずにTCP接続で通話していたからといって、Cone > > NATサポートしていないとは言い切れない(Skypeのプロトコル次第)。 > > この場合は、実際にパケット投げて確かめないと判らないね。 > > > > ちょっと議論の本質からは離れてしまいました。 > > > > > ****************************************************************************************************************************** > > > > [ポート開けられないユーザについて] > > > > 阿部君がものすごくやりたそうなので、もう止めはしませんが、阿部君案でいくつか気になる所があります。 > > > > 昼休みが終わりそうなので、内容については後で。 > > > > > > > > 阿部誠 wrote: > > さらに補足です。 > > ノードFはポート空けノードです。 > > もしポート未明けノードだったら、ノードPへのダウンロード要求時に失敗応答を返すとします。 > > > > > > 06/10/06 に 阿部誠 さんは書きました: > > > ごめん言い忘れてたけど、前提としてキーサーバはポート空けノードしかなれない > > > (システム管理サーバも同様(今回は関係ないけど)) > > > > > > 06/10/06 に 阿部誠 さんは書きました: > > > > お疲れです。阿部です。 > > > > > > > > スカイプのサイトは見てみたよ。 > > > > もしかしたら間違ってるかもしれないけど、そのときはすいませn。 > > > > > > > > どうも松永君の記載を見ていると「UDPホール・パンチング」を間違えてないかと > > > > > > > > <前提> > > > > ノードA:グローバルIP保持 > > > > ノードB:ローカルIP(ルータ越し) > > > > > > > > 「ノードBからノードAへUDPパケットを送る場合はノードBルータにA→Bエントリが形成され > > > > ノードAからノードBへの返信UDPパケットはそのエントリを元にルータを通過し、ノードBへ届く」 > > > > > > > 上記はUDP通信として本来想定している動作であり、そのエントリ生成機能を規定外利用しているのが「UDPホール・パンチング」機能だよね? > > > > > > > > したがって上記例では対応していないルータはないはずだよ。 > > > > > > > 意図的にUDPを許可していない可能性はあるかもしれないけど、そんなプロバイダはないとおもう。そしてレオネットが対応しているかどうかはリアルタイム性を要求するネットげーを > > > > 試してみればわかるんじゃないかな?>西村君 > > > > > > > > んで、提案させてもらうと > > > > 基本的には(1)案なんだけど、 > > > > 将来的に機能拡張という形で搭載と言う方向性を考えて(1)変則案を提示します。 > > > > > > > > ・新たなノード種別として「プロクシノード」を定義する。 > > > > 対象ノードはポートが空けてある一般ノードすべて > > > > > > > > ポート未空ノード(以降「ノードA」)はプロキシノード(以降「ノードP」)に対し定期的に > > > > ファイルキーを登録。(キーサーバには送信しない) > > > > ノードPは自身のファイルキーと同時に自分のファイルキーとして > > > > ノードAのファイルキーをキーサーバーに代理登録。 > > > > > > > > ノードAのファイルがほしいノード(以降「ノードF」)はまずキーサーバから > > > > 持ち主がノードPと認識し、ノードPへダウンロード要求を送信します。 > > > > > > > > ノードPは自分の持っているファイルキーではないと判断すると、 > > > > ノードFに対して、TCPポートを空けて待機するように指示を出します。 > > > > > > > > ノードAは定期的にファイルキー登録要求をノードPに送信しているため、 > > > > ノードPはそのファイル登録キー登録要求の応答にあわせて、 > > > > アップロード指示をノードAに出します。(UDPとしての通常の手順) > > > > > > > > ノードAは」指示をうけるとノードFへファイル転送コネクションをとります。 > > > > これでノードA→ノードFへのファイル転送が行われます。 > > > > > > > > 補足として、ノードPが扱うポート未空けノードは1台or2台くらい > > > > プロキシノードの探し方はキーサーバからランダムに検出 > > > > > > > > ・一般ノード間のやりとりだけの変更になるため、後からでも対応可能? > > > > ・一般ノードのファイルキー登録処理周辺が複雑化しそう > > > > 等ありますが、やはりほしい機能です。 > > > > > > > > ご考慮ください > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 06/10/05 に 松永 健太郎 さんは書きました: > > > > > 松永です。 > > > > > > > > > > 少し情報が足りないので内容を追加します。 > > > > > > > > > > 3番の案はルータがUDPホール・パンチングに対応している場合のみ可能。 > > > > > > > > > > 松永 健太郎 wrote: > > > > > > > > > > 松永です。 > > > > > > > > > > >それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > > > > > そうなりますね。 > > > > > 西村君の名前を出されるとかなり心苦しいところではあるけど。 > > > > > 見捨てる方向のほうが楽できると思う。 > > > > > ちょっと前に阿部君とそういう話しなかったけ? > > > > > > > > > > UDPホール・パンチングってどんなものか見てみた? > > > > > > > > > > この仕組みで、ポート開けているノードと同じような通信を > > > > > ポート開けていないノードにやらせようとすると、結構つらいことになるよ。 > > > > > > > > > > UDPホール・パンチングの何がつらいかっていうと、 > > > > > > > > UDPホール・パンチングではルータの外側Aから内側Bに対して通信するために、まず内側Bから外側Aにパケットを投げて道を作る必要があるけど、つまり、外側から勝手に通信を始めることが出来ない。 > > > > > > > > > > > > > これじゃ一般ノードにしても、ファイルアップロード時には、外側から要求が来るわけだから、外側から要求を受け付けるには、以下のどれかの選択に迫られるね。 > > > > > > > > > > > > > 1.外部からの要求を受け付ける代理ノード(もちろんポートが開いている)を定義して、内側のノードは外側からの通信を受け付けるために、代理ノードはUDPホール・パンチングでコネクションを確保する。内側のノードにパケットを投げたい時には、代理ノードにパケットを投げる。代理ノードはパケットを転送する。 > > > > > > > > > > 代理ノードの候補としてはキーサーバーが考えられる。 > > > > > ファイルキーを登録する全てのキーサーバに代理登録をしておく。 > > > > > > > > > > > > > ただし、ルータがUDPホール・パンチングに対応していなかったら、(1)の方法をとっても、外側からUDPのパケットを届けるのは不可能。 > > > > > 例えばレオネットのルータがUDPホール・パンチングに対応しているかはかなり怪しい。 > > > > > > > > > > 2. (1)と同じ MWNN$@$,!"DL?.$rTCPにする。これなら確実に通信可能。 > > > > > > > > > > 3.諦めて、ポートの内側はダウンロードオンリーする。 > > > > > > > > > > > > > > > 他にも方法は考え付くけど、上の案よりひどいので省略。 > > > > > > > > > > > > > > > 個人的な意見を言わせてもらえば、 > > > > > > > > > > 1は面倒だし、ルータが対応していないと破綻するので嫌。 > > > > > > > > > > 2は面倒な上に、普段はUDPなのに、特別ケースでTCPの通信も考えなくちゃいけないので嫌。 > > > > > > > > > > 3は内側のノードがシステムに一切貢献しないから嫌。 > > > > > < DIV>よって、ポート開けられないユーザは見捨てたい。 > > > > > 対応するとしても、ずっと後がいいです。 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > それとも、もっと簡単な実現方法考え付いてる? > > > > > 又は、上記の案のどれかと似たような仕組みを考え付いていて、それを受け入れている? > > > > > > > > > > > > > > > 阿部誠 wrote: > > > > > 阿部です。 > > > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > > それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > > > > > それはないと思うので、 > > > > > 少なくても一般ノード(キャッシュサーバ)はポート空けなしで参加可能と言うことにしましょう。 > > > > > システム管理サーバ、キーサーバはポート空け必須と言うことにしましょう。 > > > > > > > > > > 問題は、大多数がポート空けなしになる可能性だけど > > > > > ファイル交換時はノード空けなしだと接続対象が大幅に減るので問題ないと思います。 > > > > > > > > > > > > > > > 06/10/04 に 松永 健太郎 さんは書きました: > > > > > > 松永です。 > > > > > > > > > > > > >プライベートIPでの参加ノードはどう取り扱いますか? > > > > > > > > > > > > > > アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 > > > > > > で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 > > > > > > 他に良さげな方法ある? > > > > > > たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) > > > > > > > > > > > > >UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > > > > > > > UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 > > > > > > 使えないなら、両方空けている必要があるね。 > > > > > > > > > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > > > > > > > > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html > > > > > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html > > > > > > > > > > > > > > > > > > 関係ないけど、下のページ少し参考になるよ? > > > > > > SkypeとかGnutellaのプロトコルについて少し解説してるし。 > > > > > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html > > > > > > > > > > > > 阿部誠 wrote: > > > > > > 阿部です。 > > > > > > > > > > > > プライベートIPでの参加ノードはどう取り扱いますか? > > > > > > UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > > share > > > > > > your > > > > > > opinions on IT & business topics through brief surveys -- and > earn > > cash > > > > > > > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > _______________________________________________ > > > > > > P2p-sim-develop mailing list > > > > > > P2p...@li... > > > > > > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > > share > > > > > your > > > > > > opinions on IT & business topics through brief surveys -- and > earn > > cash > > > > > > > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > > > > > > > _______________________________________________ > > > > > > P2p-sim-develop mailing list > > > > > > P2p...@li... > > > > > > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > > share > > > > > your > > > > > opinions on IT & business topics through brief surveys -- and earn > > cash > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > _______________________________________________ > > > > > P2p-sim-develop mailing list > > > > > P2p...@li... > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > > [10th Anniversary] special auction campaign now! > > > > > > > > ------------------------------------------------------------------------- > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > > share > > > > > your > > > > > opinions on IT & business topics through brief surveys -- and earn > > cash > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > > > > > P2p-sim-develop mailing list > > > > > P2p...@li... > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > > share your > > > > > opinions on IT & business topics through brief surveys -- and earn > > cash > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > > > > > _______________________________________________ > > > > > P2p-sim-develop mailing list > > > > > P2p...@li... > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > your > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > > P2p-sim-develop mailing list > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > ________________________________ > > [10th Anniversary] special auction campaign now! > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > your > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > > P2p-sim-develop mailing list > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > ________________________________ > > [10th Anniversary] special auction campaign now! > > > > > > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > _______________________________________________ > > P2p-sim-develop mailing list > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > ________________________________ > [10th Anniversary] special auction campaign now! > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > |
From:
<ken...@ya...> - 2006-10-06 15:48:00
|
松永です。 開発サイトに話したことの概要書き込む領域作ってそこに色々書き込もうよ。 ついでにmailの履歴とかも。 阿部誠 <abe...@gm...> wrote: でも・・全員に展開しないと・・・。 06/10/06 に 松永 健太郎 さんは書きました: > 松永です。 > > 書くのめんどくさいんで、直接話します。 > めんどくさすぎる... > > > 松永 健太郎 wrote: > > 松永です。 > > えー、UDPホール・パンチングについては松永の解釈に誤解があったようです。ごめんなさい。 > > ****************************************************************************************************************************** > > [UDPホール・パンチングとは] > > ×(以前の松永の解釈) ... A→BとUDPパケットを投げた時に、ルータによってB→Aエントリが作成される。← > ルータの機能でCone NATと言うらしい。全てのルータがサポートしているわけではない。 > > ○(本当の意味) ... A、B共にルータの内側に居る場合でも、Cone > NAT機能を利用してUDPの通信を可能にするためのテクニック。 > (Skypeの例では、スーパーノードを経由して互いの情報を交換して、その情報を元にA→B、B→AとUDPパケットを投げて、双方向のエントリを作成する) > > ということなので、これまでの松永の書込みの「UDPホール・パンチング」は全て、Cone > NATに置き換えて解釈して下さい。ごめんなさい。 > また、「Cone NATをサポートしていたら片方がポート開けてればOK」は厳密には間違いで、 > プラスαでUDPホール・パンチングをやればどっちもポート開けてなくてもOKになるね。 > > で、ルータがCone > NATをサポートしていないことが、ルータの内側に居るノードの通信の障壁になるわけで、プロバイダは技術的にブロックできないよ。 > (プロバイダが加入者とその通信相手のローカルネットワークのルータのエントリについて知ってるわけないし。ルータ使ってるって事も普通に考えて意識しないだろうし。) > > あと、西村君の家のCone > NATサポート状況を調べたければ、Skypeで通話して、外部からUDPパケットが届いているか調べれば確実。 > ただし、UDPパケットが届かずにTCP接続で通話していたからといって、Cone > NATサポートしていないとは言い切れない(Skypeのプロトコル次第)。 > この場合は、実際にパケット投げて確かめないと判らないね。 > > ちょっと議論の本質からは離れてしまいました。 > > ****************************************************************************************************************************** > > [ポート開けられないユーザについて] > > 阿部君がものすごくやりたそうなので、もう止めはしませんが、阿部君案でいくつか気になる所があります。 > > 昼休みが終わりそうなので、内容については後で。 > > > > 阿部誠 wrote: > さらに補足です。 > ノードFはポート空けノードです。 > もしポート未明けノードだったら、ノードPへのダウンロード要求時に失敗応答を返すとします。 > > > 06/10/06 に 阿部誠 さんは書きました: > > ごめん言い忘れてたけど、前提としてキーサーバはポート空けノードしかなれない > > (システム管理サーバも同様(今回は関係ないけど)) > > > > 06/10/06 に 阿部誠 さんは書きました: > > > お疲れです。阿部です。 > > > > > > スカイプのサイトは見てみたよ。 > > > もしかしたら間違ってるかもしれないけど、そのときはすいませn。 > > > > > > どうも松永君の記載を見ていると「UDPホール・パンチング」を間違えてないかと > > > > > > <前提> > > > ノードA:グローバルIP保持 > > > ノードB:ローカルIP(ルータ越し) > > > > > > 「ノードBからノードAへUDPパケットを送る場合はノードBルータにA→Bエントリが形成され > > > ノードAからノードBへの返信UDPパケットはそのエントリを元にルータを通過し、ノードBへ届く」 > > > > 上記はUDP通信として本来想定している動作であり、そのエントリ生成機能を規定外利用しているのが「UDPホール・パンチング」機能だよね? > > > > > > したがって上記例では対応していないルータはないはずだよ。 > > > > 意図的にUDPを許可していない可能性はあるかもしれないけど、そんなプロバイダはないとおもう。そしてレオネットが対応しているかどうかはリアルタイム性を要求するネットげーを > > > 試してみればわかるんじゃないかな?>西村君 > > > > > > んで、提案させてもらうと > > > 基本的には(1)案なんだけど、 > > > 将来的に機能拡張という形で搭載と言う方向性を考えて(1)変則案を提示します。 > > > > > > ・新たなノード種別として「プロクシノード」を定義する。 > > > 対象ノードはポートが空けてある一般ノードすべて > > > > > > ポート未空ノード(以降「ノードA」)はプロキシノード(以降「ノードP」)に対し定期的に > > > ファイルキーを登録。(キーサーバには送信しない) > > > ノードPは自身のファイルキーと同時に自分のファイルキーとして > > > ノードAのファイルキーをキーサーバーに代理登録。 > > > > > > ノードAのファイルがほしいノード(以降「ノードF」)はまずキーサーバから > > > 持ち主がノードPと認識し、ノードPへダウンロード要求を送信します。 > > > > > > ノードPは自分の持っているファイルキーではないと判断すると、 > > > ノードFに対して、TCPポートを空けて待機するように指示を出します。 > > > > > > ノードAは定期的にファイルキー登録要求をノードPに送信しているため、 > > > ノードPはそのファイル登録キー登録要求の応答にあわせて、 > > > アップロード指示をノードAに出します。(UDPとしての通常の手順) > > > > > > ノードAは」指示をうけるとノードFへファイル転送コネクションをとります。 > > > これでノードA→ノードFへのファイル転送が行われます。 > > > > > > 補足として、ノードPが扱うポート未空けノードは1台or2台くらい > > > プロキシノードの探し方はキーサーバからランダムに検出 > > > > > > ・一般ノード間のやりとりだけの変更になるため、後からでも対応可能? > > > ・一般ノードのファイルキー登録処理周辺が複雑化しそう > > > 等ありますが、やはりほしい機能です。 > > > > > > ご考慮ください > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 06/10/05 に 松永 健太郎 さんは書きました: > > > > 松永です。 > > > > > > > > 少し情報が足りないので内容を追加します。 > > > > > > > > 3番の案はルータがUDPホール・パンチングに対応している場合のみ可能。 > > > > > > > > 松永 健太郎 wrote: > > > > > > > > 松永です。 > > > > > > > > >それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > > > そうなりますね。 > > > > 西村君の名前を出されるとかなり心苦しいところではあるけど。 > > > > 見捨てる方向のほうが楽できると思う。 > > > > ちょっと前に阿部君とそういう話しなかったけ? > > > > > > > > UDPホール・パンチングってどんなものか見てみた? > > > > > > > > この仕組みで、ポート開けているノードと同じような通信を > > > > ポート開けていないノードにやらせようとすると、結構つらいことになるよ。 > > > > > > > > UDPホール・パンチングの何がつらいかっていうと、 > > > > > UDPホール・パンチングではルータの外側Aから内側Bに対して通信するために、まず内側Bから外側Aにパケットを投げて道を作る必要があるけど、つまり、外側から勝手に通信を始めることが出来ない。 > > > > > > > > > これじゃ一般ノードにしても、ファイルアップロード時には、外側から要求が来るわけだから、外側から要求を受け付けるには、以下のどれかの選択に迫られるね。 > > > > > > > > > 1.外部からの要求を受け付ける代理ノード(もちろんポートが開いている)を定義して、内側のノードは外側からの通信を受け付けるために、代理ノードはUDPホール・パンチングでコネクションを確保する。内側のノードにパケットを投げたい時には、代理ノードにパケットを投げる。代理ノードはパケットを転送する。 > > > > > > > > 代理ノードの候補としてはキーサーバーが考えられる。 > > > > ファイルキーを登録する全てのキーサーバに代理登録をしておく。 > > > > > > > > > ただし、ルータがUDPホール・パンチングに対応していなかったら、(1)の方法をとっても、外側からUDPのパケットを届けるのは不可能。 > > > > 例えばレオネットのルータがUDPホール・パンチングに対応しているかはかなり怪しい。 > > > > > > > > 2. (1)と同じ MWNN$@$,!"DL?.$rTCPにする。これなら確実に通信可能。 > > > > > > > > 3.諦めて、ポートの内側はダウンロードオンリーする。 > > > > > > > > > > > > 他にも方法は考え付くけど、上の案よりひどいので省略。 > > > > > > > > > > > > 個人的な意見を言わせてもらえば、 > > > > > > > > 1は面倒だし、ルータが対応していないと破綻するので嫌。 > > > > > > > > 2は面倒な上に、普段はUDPなのに、特別ケースでTCPの通信も考えなくちゃいけないので嫌。 > > > > > > > > 3は内側のノードがシステムに一切貢献しないから嫌。 > > > > < DIV>よって、ポート開けられないユーザは見捨てたい。 > > > > 対応するとしても、ずっと後がいいです。 > > > > > > > > > > > > > > > > > > > > > > > > それとも、もっと簡単な実現方法考え付いてる? > > > > 又は、上記の案のどれかと似たような仕組みを考え付いていて、それを受け入れている? > > > > > > > > > > > > 阿部誠 wrote: > > > > 阿部です。 > > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > > > それはないと思うので、 > > > > 少なくても一般ノード(キャッシュサーバ)はポート空けなしで参加可能と言うことにしましょう。 > > > > システム管理サーバ、キーサーバはポート空け必須と言うことにしましょう。 > > > > > > > > 問題は、大多数がポート空けなしになる可能性だけど > > > > ファイル交換時はノード空けなしだと接続対象が大幅に減るので問題ないと思います。 > > > > > > > > > > > > 06/10/04 に 松永 健太郎 さんは書きました: > > > > > 松永です。 > > > > > > > > > > >プライベートIPでの参加ノードはどう取り扱いますか? > > > > > > > > > > > アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 > > > > > で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 > > > > > 他に良さげな方法ある? > > > > > たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) > > > > > > > > > > >UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > > > > UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 > > > > > 使えないなら、両方空けている必要があるね。 > > > > > > > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > > > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html > > > > > > > > > > > > > > > 関係ないけど、下のページ少し参考になるよ? > > > > > SkypeとかGnutellaのプロトコルについて少し解説してるし。 > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html > > > > > > > > > > 阿部誠 wrote: > > > > > 阿部です。 > > > > > > > > > > プライベートIPでの参加ノードはどう取り扱いますか? > > > > > UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > share > > > > > your > > > > > opinions on IT & business topics through brief surveys -- and earn > cash > > > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > _______________________________________________ > > > > > P2p-sim-develop mailing list > > > > > P2p...@li... > > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > share > > > > your > > > > > opinions on IT & business topics through brief surveys -- and earn > cash > > > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > > > > > _______________________________________________ > > > > > P2p-sim-develop mailing list > > > > > P2p...@li... > > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > share > > > > your > > > > opinions on IT & business topics through brief surveys -- and earn > cash > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > _______________________________________________ > > > > P2p-sim-develop mailing list > > > > P2p...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > ________________________________ > > > > [10th Anniversary] special auction campaign now! > > > > > ------------------------------------------------------------------------- > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > share > > > > your > > > > opinions on IT & business topics through brief surveys -- and earn > cash > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > > > > P2p-sim-develop mailing list > > > > P2p...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > share your > > > > opinions on IT & business topics through brief surveys -- and earn > cash > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > > > _______________________________________________ > > > > P2p-sim-develop mailing list > > > > P2p...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > ________________________________ > [10th Anniversary] special auction campaign now! > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > ________________________________ > [10th Anniversary] special auction campaign now! > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ P2p-sim-develop mailing list P2p...@li... https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop --------------------------------- [10th Anniversary] special auction campaign now! |
From: <abe...@gm...> - 2006-10-06 15:37:11
|
でも・・全員に展開しないと・・・。 06/10/06 に 松永 健太郎<ken...@ya...> さんは書きました: > 松永です。 > > 書くのめんどくさいんで、直接話します。 > めんどくさすぎる... > > > 松永 健太郎 <ken...@ya...> wrote: > > 松永です。 > > えー、UDPホール・パンチングについては松永の解釈に誤解があったようです。ごめんなさい。 > > ****************************************************************************************************************************** > > [UDPホール・パンチングとは] > > ×(以前の松永の解釈) ... A→BとUDPパケットを投げた時に、ルータによってB→Aエントリが作成される。← > ルータの機能でCone NATと言うらしい。全てのルータがサポートしているわけではない。 > > ○(本当の意味) ... A、B共にルータの内側に居る場合でも、Cone > NAT機能を利用してUDPの通信を可能にするためのテクニック。 > (Skypeの例では、スーパーノードを経由して互いの情報を交換して、その情報を元にA→B、B→AとUDPパケットを投げて、双方向のエントリを作成する) > > ということなので、これまでの松永の書込みの「UDPホール・パンチング」は全て、Cone > NATに置き換えて解釈して下さい。ごめんなさい。 > また、「Cone NATをサポートしていたら片方がポート開けてればOK」は厳密には間違いで、 > プラスαでUDPホール・パンチングをやればどっちもポート開けてなくてもOKになるね。 > > で、ルータがCone > NATをサポートしていないことが、ルータの内側に居るノードの通信の障壁になるわけで、プロバイダは技術的にブロックできないよ。 > (プロバイダが加入者とその通信相手のローカルネットワークのルータのエントリについて知ってるわけないし。ルータ使ってるって事も普通に考えて意識しないだろうし。) > > あと、西村君の家のCone > NATサポート状況を調べたければ、Skypeで通話して、外部からUDPパケットが届いているか調べれば確実。 > ただし、UDPパケットが届かずにTCP接続で通話していたからといって、Cone > NATサポートしていないとは言い切れない(Skypeのプロトコル次第)。 > この場合は、実際にパケット投げて確かめないと判らないね。 > > ちょっと議論の本質からは離れてしまいました。 > > ****************************************************************************************************************************** > > [ポート開けられないユーザについて] > > 阿部君がものすごくやりたそうなので、もう止めはしませんが、阿部君案でいくつか気になる所があります。 > > 昼休みが終わりそうなので、内容については後で。 > > > > 阿部誠 <abe...@gm...> wrote: > さらに補足です。 > ノードFはポート空けノードです。 > もしポート未明けノードだったら、ノードPへのダウンロード要求時に失敗応答を返すとします。 > > > 06/10/06 に 阿部誠 さんは書きました: > > ごめん言い忘れてたけど、前提としてキーサーバはポート空けノードしかなれない > > (システム管理サーバも同様(今回は関係ないけど)) > > > > 06/10/06 に 阿部誠 さんは書きました: > > > お疲れです。阿部です。 > > > > > > スカイプのサイトは見てみたよ。 > > > もしかしたら間違ってるかもしれないけど、そのときはすいませn。 > > > > > > どうも松永君の記載を見ていると「UDPホール・パンチング」を間違えてないかと > > > > > > <前提> > > > ノードA:グローバルIP保持 > > > ノードB:ローカルIP(ルータ越し) > > > > > > 「ノードBからノードAへUDPパケットを送る場合はノードBルータにA→Bエントリが形成され > > > ノードAからノードBへの返信UDPパケットはそのエントリを元にルータを通過し、ノードBへ届く」 > > > > 上記はUDP通信として本来想定している動作であり、そのエントリ生成機能を規定外利用しているのが「UDPホール・パンチング」機能だよね? > > > > > > したがって上記例では対応していないルータはないはずだよ。 > > > > 意図的にUDPを許可していない可能性はあるかもしれないけど、そんなプロバイダはないとおもう。そしてレオネットが対応しているかどうかはリアルタイム性を要求するネットげーを > > > 試してみればわかるんじゃないかな?>西村君 > > > > > > んで、提案させてもらうと > > > 基本的には(1)案なんだけど、 > > > 将来的に機能拡張という形で搭載と言う方向性を考えて(1)変則案を提示します。 > > > > > > ・新たなノード種別として「プロクシノード」を定義する。 > > > 対象ノードはポートが空けてある一般ノードすべて > > > > > > ポート未空ノード(以降「ノードA」)はプロキシノード(以降「ノードP」)に対し定期的に > > > ファイルキーを登録。(キーサーバには送信しない) > > > ノードPは自身のファイルキーと同時に自分のファイルキーとして > > > ノードAのファイルキーをキーサーバーに代理登録。 > > > > > > ノードAのファイルがほしいノード(以降「ノードF」)はまずキーサーバから > > > 持ち主がノードPと認識し、ノードPへダウンロード要求を送信します。 > > > > > > ノードPは自分の持っているファイルキーではないと判断すると、 > > > ノードFに対して、TCPポートを空けて待機するように指示を出します。 > > > > > > ノードAは定期的にファイルキー登録要求をノードPに送信しているため、 > > > ノードPはそのファイル登録キー登録要求の応答にあわせて、 > > > アップロード指示をノードAに出します。(UDPとしての通常の手順) > > > > > > ノードAは」指示をうけるとノードFへファイル転送コネクションをとります。 > > > これでノードA→ノードFへのファイル転送が行われます。 > > > > > > 補足として、ノードPが扱うポート未空けノードは1台or2台くらい > > > プロキシノードの探し方はキーサーバからランダムに検出 > > > > > > ・一般ノード間のやりとりだけの変更になるため、後からでも対応可能? > > > ・一般ノードのファイルキー登録処理周辺が複雑化しそう > > > 等ありますが、やはりほしい機能です。 > > > > > > ご考慮ください > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 06/10/05 に 松永 健太郎 さんは書きました: > > > > 松永です。 > > > > > > > > 少し情報が足りないので内容を追加します。 > > > > > > > > 3番の案はルータがUDPホール・パンチングに対応している場合のみ可能。 > > > > > > > > 松永 健太郎 wrote: > > > > > > > > 松永です。 > > > > > > > > >それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > > > そうなりますね。 > > > > 西村君の名前を出されるとかなり心苦しいところではあるけど。 > > > > 見捨てる方向のほうが楽できると思う。 > > > > ちょっと前に阿部君とそういう話しなかったけ? > > > > > > > > UDPホール・パンチングってどんなものか見てみた? > > > > > > > > この仕組みで、ポート開けているノードと同じような通信を > > > > ポート開けていないノードにやらせようとすると、結構つらいことになるよ。 > > > > > > > > UDPホール・パンチングの何がつらいかっていうと、 > > > > > UDPホール・パンチングではルータの外側Aから内側Bに対して通信するために、まず内側Bから外側Aにパケットを投げて道を作る必要があるけど、つまり、外側から勝手に通信を始めることが出来ない。 > > > > > > > > > これじゃ一般ノードにしても、ファイルアップロード時には、外側から要求が来るわけだから、外側から要求を受け付けるには、以下のどれかの選択に迫られるね。 > > > > > > > > > 1.外部からの要求を受け付ける代理ノード(もちろんポートが開いている)を定義して、内側のノードは外側からの通信を受け付けるために、代理ノードはUDPホール・パンチングでコネクションを確保する。内側のノードにパケットを投げたい時には、代理ノードにパケットを投げる。代理ノードはパケットを転送する。 > > > > > > > > 代理ノードの候補としてはキーサーバーが考えられる。 > > > > ファイルキーを登録する全てのキーサーバに代理登録をしておく。 > > > > > > > > > ただし、ルータがUDPホール・パンチングに対応していなかったら、(1)の方法をとっても、外側からUDPのパケットを届けるのは不可能。 > > > > 例えばレオネットのルータがUDPホール・パンチングに対応しているかはかなり怪しい。 > > > > > > > > 2. (1)と同じ MWNN$@$,!"DL?.$rTCPにする。これなら確実に通信可能。 > > > > > > > > 3.諦めて、ポートの内側はダウンロードオンリーする。 > > > > > > > > > > > > 他にも方法は考え付くけど、上の案よりひどいので省略。 > > > > > > > > > > > > 個人的な意見を言わせてもらえば、 > > > > > > > > 1は面倒だし、ルータが対応していないと破綻するので嫌。 > > > > > > > > 2は面倒な上に、普段はUDPなのに、特別ケースでTCPの通信も考えなくちゃいけないので嫌。 > > > > > > > > 3は内側のノードがシステムに一切貢献しないから嫌。 > > > > < DIV>よって、ポート開けられないユーザは見捨てたい。 > > > > 対応するとしても、ずっと後がいいです。 > > > > > > > > > > > > > > > > > > > > > > > > それとも、もっと簡単な実現方法考え付いてる? > > > > 又は、上記の案のどれかと似たような仕組みを考え付いていて、それを受け入れている? > > > > > > > > > > > > 阿部誠 wrote: > > > > 阿部です。 > > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > > > それはないと思うので、 > > > > 少なくても一般ノード(キャッシュサーバ)はポート空けなしで参加可能と言うことにしましょう。 > > > > システム管理サーバ、キーサーバはポート空け必須と言うことにしましょう。 > > > > > > > > 問題は、大多数がポート空けなしになる可能性だけど > > > > ファイル交換時はノード空けなしだと接続対象が大幅に減るので問題ないと思います。 > > > > > > > > > > > > 06/10/04 に 松永 健太郎 さんは書きました: > > > > > 松永です。 > > > > > > > > > > >プライベートIPでの参加ノードはどう取り扱いますか? > > > > > > > > > > > アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 > > > > > で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 > > > > > 他に良さげな方法ある? > > > > > たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) > > > > > > > > > > >UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > > > > UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 > > > > > 使えないなら、両方空けている必要があるね。 > > > > > > > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > > > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html > > > > > > > > > > > > > > > 関係ないけど、下のページ少し参考になるよ? > > > > > SkypeとかGnutellaのプロトコルについて少し解説してるし。 > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html > > > > > > > > > > 阿部誠 wrote: > > > > > 阿部です。 > > > > > > > > > > プライベートIPでの参加ノードはどう取り扱いますか? > > > > > UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > share > > > > > your > > > > > opinions on IT & business topics through brief surveys -- and earn > cash > > > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > _______________________________________________ > > > > > P2p-sim-develop mailing list > > > > > P2p...@li... > > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > share > > > > your > > > > > opinions on IT & business topics through brief surveys -- and earn > cash > > > > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > > > > > _______________________________________________ > > > > > P2p-sim-develop mailing list > > > > > P2p...@li... > > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > share > > > > your > > > > opinions on IT & business topics through brief surveys -- and earn > cash > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > _______________________________________________ > > > > P2p-sim-develop mailing list > > > > P2p...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > ________________________________ > > > > [10th Anniversary] special auction campaign now! > > > > > ------------------------------------------------------------------------- > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > share > > > > your > > > > opinions on IT & business topics through brief surveys -- and earn > cash > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > > > > P2p-sim-develop mailing list > > > > P2p...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > Join SourceForge.net's Techsay panel and you'll get the chance to > share your > > > > opinions on IT & business topics through brief surveys -- and earn > cash > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > > > _______________________________________________ > > > > P2p-sim-develop mailing list > > > > P2p...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > ________________________________ > [10th Anniversary] special auction campaign now! > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > ________________________________ > [10th Anniversary] special auction campaign now! > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > |
From:
<ken...@ya...> - 2006-10-06 08:54:59
|
松永です。 書くのめんどくさいんで、直接話します。 めんどくさすぎる... 松永 健太郎 <ken...@ya...> wrote: 松永です。 えー、UDPホール・パンチングについては松永の解釈に誤解があったようです。ごめんなさい。 ****************************************************************************************************************************** [UDPホール・パンチングとは] ×(以前の松永の解釈) ... A→BとUDPパケットを投げた時に、ルータによってB→Aエントリが作成される。← ルータの機能でCone NATと言うらしい。全てのルータがサポートしているわけではない。 ○(本当の意味) ... A、B共にルータの内側に居る場合でも、Cone NAT機能を利用してUDPの通信を可能にするためのテクニック。 (Skypeの例では、スーパーノードを経由して互いの情報を交換して、その情報を元にA→B、B→AとUDPパケットを投げて、双方向のエントリを作成する) ということなので、これまでの松永の書込みの「UDPホール・パンチング」は全て、Cone NATに置き換えて解釈して下さい。ごめんなさい。 また、「Cone NATをサポートしていたら片方がポート開けてればOK」は厳密には間違いで、 プラスαでUDPホール・パンチングをやればどっちもポート開けてなくてもOKになるね。 で、ルータがCone NATをサポートしていないことが、ルータの内側に居るノードの通信の障壁になるわけで、プロバイダは技術的にブロックできないよ。 (プロバイダが加入者とその通信相手のローカルネットワークのルータのエントリについて知ってるわけないし。ルータ使ってるって事も普通に考えて意識しないだろうし。) あと、西村君の家のCone NATサポート状況を調べたければ、Skypeで通話して、外部からUDPパケットが届いているか調べれば確実。 ただし、UDPパケットが届かずにTCP接続で通話していたからといって、Cone NATサポートしていないとは言い切れない(Skypeのプロトコル次第)。 この場合は、実際にパケット投げて確かめないと判らないね。 ちょっと議論の本質からは離れてしまいました。 ****************************************************************************************************************************** [ポート開けられないユーザについて] 阿部君がものすごくやりたそうなので、もう止めはしませんが、阿部君案でいくつか気になる所があります。 昼休みが終わりそうなので、内容については後で。 阿部誠 <abe...@gm...> wrote: さらに補足です。 ノードFはポート空けノードです。 もしポート未明けノードだったら、ノードPへのダウンロード要求時に失敗応答を返すとします。 06/10/06 に 阿部誠 さんは書きました: > ごめん言い忘れてたけど、前提としてキーサーバはポート空けノードしかなれない > (システム管理サーバも同様(今回は関係ないけど)) > > 06/10/06 に 阿部誠 さんは書きました: > > お疲れです。阿部です。 > > > > スカイプのサイトは見てみたよ。 > > もしかしたら間違ってるかもしれないけど、そのときはすいませn。 > > > > どうも松永君の記載を見ていると「UDPホール・パンチング」を間違えてないかと > > > > <前提> > > ノードA:グローバルIP保持 > > ノードB:ローカルIP(ルータ越し) > > > > 「ノードBからノードAへUDPパケットを送る場合はノードBルータにA→Bエントリが形成され > > ノードAからノードBへの返信UDPパケットはそのエントリを元にルータを通過し、ノードBへ届く」 > > 上記はUDP通信として本来想定している動作であり、そのエントリ生成機能を規定外利用しているのが「UDPホール・パンチング」機能だよね? > > > > したがって上記例では対応していないルータはないはずだよ。 > > 意図的にUDPを許可していない可能性はあるかもしれないけど、そんなプロバイダはないとおもう。そしてレオネットが対応しているかどうかはリアルタイム性を要求するネットげーを > > 試してみればわかるんじゃないかな?>西村君 > > > > んで、提案させてもらうと > > 基本的には(1)案なんだけど、 > > 将来的に機能拡張という形で搭載と言う方向性を考えて(1)変則案を提示します。 > > > > ・新たなノード種別として「プロクシノード」を定義する。 > > 対象ノードはポートが空けてある一般ノードすべて > > > > ポート未空ノード(以降「ノードA」)はプロキシノード(以降「ノードP」)に対し定期的に > > ファイルキーを登録。(キーサーバには送信しない) > > ノードPは自身のファイルキーと同時に自分のファイルキーとして > > ノードAのファイルキーをキーサーバーに代理登録。 > > > > ノードAのファイルがほしいノード(以降「ノードF」)はまずキーサーバから > > 持ち主がノードPと認識し、ノードPへダウンロード要求を送信します。 > > > > ノードPは自分の持っているファイルキーではないと判断すると、 > > ノードFに対して、TCPポートを空けて待機するように指示を出します。 > > > > ノードAは定期的にファイルキー登録要求をノードPに送信しているため、 > > ノードPはそのファイル登録キー登録要求の応答にあわせて、 > > アップロード指示をノードAに出します。(UDPとしての通常の手順) > > > > ノードAは」指示をうけるとノードFへファイル転送コネクションをとります。 > > これでノードA→ノードFへのファイル転送が行われます。 > > > > 補足として、ノードPが扱うポート未空けノードは1台or2台くらい > > プロキシノードの探し方はキーサーバからランダムに検出 > > > > ・一般ノード間のやりとりだけの変更になるため、後からでも対応可能? > > ・一般ノードのファイルキー登録処理周辺が複雑化しそう > > 等ありますが、やはりほしい機能です。 > > > > ご考慮ください > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 06/10/05 に 松永 健太郎 さんは書きました: > > > 松永です。 > > > > > > 少し情報が足りないので内容を追加します。 > > > > > > 3番の案はルータがUDPホール・パンチングに対応している場合のみ可能。 > > > > > > 松永 健太郎 wrote: > > > > > > 松永です。 > > > > > > >それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > そうなりますね。 > > > 西村君の名前を出されるとかなり心苦しいところではあるけど。 > > > 見捨てる方向のほうが楽できると思う。 > > > ちょっと前に阿部君とそういう話しなかったけ? > > > > > > UDPホール・パンチングってどんなものか見てみた? > > > > > > この仕組みで、ポート開けているノードと同じような通信を > > > ポート開けていないノードにやらせようとすると、結構つらいことになるよ。 > > > > > > UDPホール・パンチングの何がつらいかっていうと、 > > > UDPホール・パンチングではルータの外側Aから内側Bに対して通信するために、まず内側Bから外側Aにパケットを投げて道を作る必要があるけど、つまり、外側から勝手に通信を始めることが出来ない。 > > > > > > これじゃ一般ノードにしても、ファイルアップロード時には、外側から要求が来るわけだから、外側から要求を受け付けるには、以下のどれかの選択に迫られるね。 > > > > > > 1.外部からの要求を受け付ける代理ノード(もちろんポートが開いている)を定義して、内側のノードは外側からの通信を受け付けるために、代理ノードはUDPホール・パンチングでコネクションを確保する。内側のノードにパケットを投げたい時には、代理ノードにパケットを投げる。代理ノードはパケットを転送する。 > > > > > > 代理ノードの候補としてはキーサーバーが考えられる。 > > > ファイルキーを登録する全てのキーサーバに代理登録をしておく。 > > > > > > ただし、ルータがUDPホール・パンチングに対応していなかったら、(1)の方法をとっても、外側からUDPのパケットを届けるのは不可能。 > > > 例えばレオネットのルータがUDPホール・パンチングに対応しているかはかなり怪しい。 > > > > > > 2. (1)と同じ MWNN$@$,!"DL?.$rTCPにする。これなら確実に通信可能。 > > > > > > 3.諦めて、ポートの内側はダウンロードオンリーする。 > > > > > > > > > 他にも方法は考え付くけど、上の案よりひどいので省略。 > > > > > > > > > 個人的な意見を言わせてもらえば、 > > > > > > 1は面倒だし、ルータが対応していないと破綻するので嫌。 > > > > > > 2は面倒な上に、普段はUDPなのに、特別ケースでTCPの通信も考えなくちゃいけないので嫌。 > > > > > > 3は内側のノードがシステムに一切貢献しないから嫌。 > > > < DIV>よって、ポート開けられないユーザは見捨てたい。 > > > 対応するとしても、ずっと後がいいです。 > > > > > > > > > > > > > > > > > > それとも、もっと簡単な実現方法考え付いてる? > > > 又は、上記の案のどれかと似たような仕組みを考え付いていて、それを受け入れている? > > > > > > > > > 阿部誠 wrote: > > > 阿部です。 > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > それはないと思うので、 > > > 少なくても一般ノード(キャッシュサーバ)はポート空けなしで参加可能と言うことにしましょう。 > > > システム管理サーバ、キーサーバはポート空け必須と言うことにしましょう。 > > > > > > 問題は、大多数がポート空けなしになる可能性だけど > > > ファイル交換時はノード空けなしだと接続対象が大幅に減るので問題ないと思います。 > > > > > > > > > 06/10/04 に 松永 健太郎 さんは書きました: > > > > 松永です。 > > > > > > > > >プライベートIPでの参加ノードはどう取り扱いますか? > > > > > > > > アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 > > > > で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 > > > > 他に良さげな方法ある? > > > > たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) > > > > > > > > >UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 > > > > 使えないなら、両方空けている必要があるね。 > > > > > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html > > > > > > > > > > > > 関係ないけど、下のページ少し参考になるよ? > > > > SkypeとかGnutellaのプロトコルについて少し解説してるし。 > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html > > > > > > > > 阿部誠 wrote: > > > > 阿部です。 > > > > > > > > プライベートIPでの参加ノードはどう取り扱いますか? > > > > UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > > > > ------------------------------------------------------------------------- > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > > your > > > > opinions on IT & business topics through brief surveys -- and earn cash > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > _______________________________________________ > > > > P2p-sim-develop mailing list > > > > P2p...@li... > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > your > > > > opinions on IT & business topics through brief surveys -- and earn cash > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > > > _______________________________________________ > > > > P2p-sim-develop mailing list > > > > P2p...@li... > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > Take Surveys. Earn Cash. Influence the Future of IT > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > your > > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > _______________________________________________ > > > P2p-sim-develop mailing list > > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > ________________________________ > > > [10th Anniversary] special auction campaign now! > > > ------------------------------------------------------------------------- > > > Take Surveys. Earn Cash. Influence the Future of IT > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > your > > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > > > P2p-sim-develop mailing list > > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > ________________________________ > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > ------------------------------------------------------------------------- > > > Take Surveys. Earn Cash. Influence the Future of IT > > > Join SourceForge.net's Techsay panel and you'll get the chance to share your > > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > _______________________________________________ > > > P2p-sim-develop mailing list > > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ P2p-sim-develop mailing list P2p...@li... https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop --------------------------------- [10th Anniversary] special auction campaign now! ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ P2p-sim-develop mailing list P2p...@li... https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop --------------------------------- [10th Anniversary] special auction campaign now! |
From:
<ken...@ya...> - 2006-10-06 04:01:15
|
松永です。 えー、UDPホール・パンチングについては松永の解釈に誤解があったようです。ごめんなさい。 ****************************************************************************************************************************** [UDPホール・パンチングとは] ×(以前の松永の解釈) ... A→BとUDPパケットを投げた時に、ルータによってB→Aエントリが作成される。← ルータの機能でCone NATと言うらしい。全てのルータがサポートしているわけではない。 ○(本当の意味) ... A、B共にルータの内側に居る場合でも、Cone NAT機能を利用してUDPの通信を可能にするためのテクニック。 (Skypeの例では、スーパーノードを経由して互いの情報を交換して、その情報を元にA→B、B→AとUDPパケットを投げて、双方向のエントリを作成する) ということなので、これまでの松永の書込みの「UDPホール・パンチング」は全て、Cone NATに置き換えて解釈して下さい。ごめんなさい。 また、「Cone NATをサポートしていたら片方がポート開けてればOK」は厳密には間違いで、 プラスαでUDPホール・パンチングをやればどっちもポート開けてなくてもOKになるね。 で、ルータがCone NATをサポートしていないことが、ルータの内側に居るノードの通信の障壁になるわけで、プロバイダは技術的にブロックできないよ。 (プロバイダが加入者とその通信相手のローカルネットワークのルータのエントリについて知ってるわけないし。ルータ使ってるって事も普通に考えて意識しないだろうし。) あと、西村君の家のCone NATサポート状況を調べたければ、Skypeで通話して、外部からUDPパケットが届いているか調べれば確実。 ただし、UDPパケットが届かずにTCP接続で通話していたからといって、Cone NATサポートしていないとは言い切れない(Skypeのプロトコル次第)。 この場合は、実際にパケット投げて確かめないと判らないね。 ちょっと議論の本質からは離れてしまいました。 ****************************************************************************************************************************** [ポート開けられないユーザについて] 阿部君がものすごくやりたそうなので、もう止めはしませんが、阿部君案でいくつか気になる所があります。 昼休みが終わりそうなので、内容については後で。 阿部誠 <abe...@gm...> wrote: さらに補足です。 ノードFはポート空けノードです。 もしポート未明けノードだったら、ノードPへのダウンロード要求時に失敗応答を返すとします。 06/10/06 に 阿部誠 さんは書きました: > ごめん言い忘れてたけど、前提としてキーサーバはポート空けノードしかなれない > (システム管理サーバも同様(今回は関係ないけど)) > > 06/10/06 に 阿部誠 さんは書きました: > > お疲れです。阿部です。 > > > > スカイプのサイトは見てみたよ。 > > もしかしたら間違ってるかもしれないけど、そのときはすいませn。 > > > > どうも松永君の記載を見ていると「UDPホール・パンチング」を間違えてないかと > > > > <前提> > > ノードA:グローバルIP保持 > > ノードB:ローカルIP(ルータ越し) > > > > 「ノードBからノードAへUDPパケットを送る場合はノードBルータにA→Bエントリが形成され > > ノードAからノードBへの返信UDPパケットはそのエントリを元にルータを通過し、ノードBへ届く」 > > 上記はUDP通信として本来想定している動作であり、そのエントリ生成機能を規定外利用しているのが「UDPホール・パンチング」機能だよね? > > > > したがって上記例では対応していないルータはないはずだよ。 > > 意図的にUDPを許可していない可能性はあるかもしれないけど、そんなプロバイダはないとおもう。そしてレオネットが対応しているかどうかはリアルタイム性を要求するネットげーを > > 試してみればわかるんじゃないかな?>西村君 > > > > んで、提案させてもらうと > > 基本的には(1)案なんだけど、 > > 将来的に機能拡張という形で搭載と言う方向性を考えて(1)変則案を提示します。 > > > > ・新たなノード種別として「プロクシノード」を定義する。 > > 対象ノードはポートが空けてある一般ノードすべて > > > > ポート未空ノード(以降「ノードA」)はプロキシノード(以降「ノードP」)に対し定期的に > > ファイルキーを登録。(キーサーバには送信しない) > > ノードPは自身のファイルキーと同時に自分のファイルキーとして > > ノードAのファイルキーをキーサーバーに代理登録。 > > > > ノードAのファイルがほしいノード(以降「ノードF」)はまずキーサーバから > > 持ち主がノードPと認識し、ノードPへダウンロード要求を送信します。 > > > > ノードPは自分の持っているファイルキーではないと判断すると、 > > ノードFに対して、TCPポートを空けて待機するように指示を出します。 > > > > ノードAは定期的にファイルキー登録要求をノードPに送信しているため、 > > ノードPはそのファイル登録キー登録要求の応答にあわせて、 > > アップロード指示をノードAに出します。(UDPとしての通常の手順) > > > > ノードAは」指示をうけるとノードFへファイル転送コネクションをとります。 > > これでノードA→ノードFへのファイル転送が行われます。 > > > > 補足として、ノードPが扱うポート未空けノードは1台or2台くらい > > プロキシノードの探し方はキーサーバからランダムに検出 > > > > ・一般ノード間のやりとりだけの変更になるため、後からでも対応可能? > > ・一般ノードのファイルキー登録処理周辺が複雑化しそう > > 等ありますが、やはりほしい機能です。 > > > > ご考慮ください > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 06/10/05 に 松永 健太郎 さんは書きました: > > > 松永です。 > > > > > > 少し情報が足りないので内容を追加します。 > > > > > > 3番の案はルータがUDPホール・パンチングに対応している場合のみ可能。 > > > > > > 松永 健太郎 wrote: > > > > > > 松永です。 > > > > > > >それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > そうなりますね。 > > > 西村君の名前を出されるとかなり心苦しいところではあるけど。 > > > 見捨てる方向のほうが楽できると思う。 > > > ちょっと前に阿部君とそういう話しなかったけ? > > > > > > UDPホール・パンチングってどんなものか見てみた? > > > > > > この仕組みで、ポート開けているノードと同じような通信を > > > ポート開けていないノードにやらせようとすると、結構つらいことになるよ。 > > > > > > UDPホール・パンチングの何がつらいかっていうと、 > > > UDPホール・パンチングではルータの外側Aから内側Bに対して通信するために、まず内側Bから外側Aにパケットを投げて道を作る必要があるけど、つまり、外側から勝手に通信を始めることが出来ない。 > > > > > > これじゃ一般ノードにしても、ファイルアップロード時には、外側から要求が来るわけだから、外側から要求を受け付けるには、以下のどれかの選択に迫られるね。 > > > > > > 1.外部からの要求を受け付ける代理ノード(もちろんポートが開いている)を定義して、内側のノードは外側からの通信を受け付けるために、代理ノードはUDPホール・パンチングでコネクションを確保する。内側のノードにパケットを投げたい時には、代理ノードにパケットを投げる。代理ノードはパケットを転送する。 > > > > > > 代理ノードの候補としてはキーサーバーが考えられる。 > > > ファイルキーを登録する全てのキーサーバに代理登録をしておく。 > > > > > > ただし、ルータがUDPホール・パンチングに対応していなかったら、(1)の方法をとっても、外側からUDPのパケットを届けるのは不可能。 > > > 例えばレオネットのルータがUDPホール・パンチングに対応しているかはかなり怪しい。 > > > > > > 2. (1)と同じ MWNN$@$,!"DL?.$rTCPにする。これなら確実に通信可能。 > > > > > > 3.諦めて、ポートの内側はダウンロードオンリーする。 > > > > > > > > > 他にも方法は考え付くけど、上の案よりひどいので省略。 > > > > > > > > > 個人的な意見を言わせてもらえば、 > > > > > > 1は面倒だし、ルータが対応していないと破綻するので嫌。 > > > > > > 2は面倒な上に、普段はUDPなのに、特別ケースでTCPの通信も考えなくちゃいけないので嫌。 > > > > > > 3は内側のノードがシステムに一切貢献しないから嫌。 > > > < DIV>よって、ポート開けられないユーザは見捨てたい。 > > > 対応するとしても、ずっと後がいいです。 > > > > > > > > > > > > > > > > > > それとも、もっと簡単な実現方法考え付いてる? > > > 又は、上記の案のどれかと似たような仕組みを考え付いていて、それを受け入れている? > > > > > > > > > 阿部誠 wrote: > > > 阿部です。 > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > それはないと思うので、 > > > 少なくても一般ノード(キャッシュサーバ)はポート空けなしで参加可能と言うことにしましょう。 > > > システム管理サーバ、キーサーバはポート空け必須と言うことにしましょう。 > > > > > > 問題は、大多数がポート空けなしになる可能性だけど > > > ファイル交換時はノード空けなしだと接続対象が大幅に減るので問題ないと思います。 > > > > > > > > > 06/10/04 に 松永 健太郎 さんは書きました: > > > > 松永です。 > > > > > > > > >プライベートIPでの参加ノードはどう取り扱いますか? > > > > > > > > アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 > > > > で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 > > > > 他に良さげな方法ある? > > > > たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) > > > > > > > > >UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 > > > > 使えないなら、両方空けている必要があるね。 > > > > > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html > > > > > > > > > > > > 関係ないけど、下のページ少し参考になるよ? > > > > SkypeとかGnutellaのプロトコルについて少し解説してるし。 > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html > > > > > > > > 阿部誠 wrote: > > > > 阿部です。 > > > > > > > > プライベートIPでの参加ノードはどう取り扱いますか? > > > > UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > > > > ------------------------------------------------------------------------- > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > > your > > > > opinions on IT & business topics through brief surveys -- and earn cash > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > _______________________________________________ > > > > P2p-sim-develop mailing list > > > > P2p...@li... > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > your > > > > opinions on IT & business topics through brief surveys -- and earn cash > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > > > _______________________________________________ > > > > P2p-sim-develop mailing list > > > > P2p...@li... > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > Take Surveys. Earn Cash. Influence the Future of IT > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > your > > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > _______________________________________________ > > > P2p-sim-develop mailing list > > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > ________________________________ > > > [10th Anniversary] special auction campaign now! > > > ------------------------------------------------------------------------- > > > Take Surveys. Earn Cash. Influence the Future of IT > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > your > > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > > > P2p-sim-develop mailing list > > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > ________________________________ > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > ------------------------------------------------------------------------- > > > Take Surveys. Earn Cash. Influence the Future of IT > > > Join SourceForge.net's Techsay panel and you'll get the chance to share your > > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > _______________________________________________ > > > P2p-sim-develop mailing list > > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ P2p-sim-develop mailing list P2p...@li... https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop --------------------------------- [10th Anniversary] special auction campaign now! |
From: <abe...@gm...> - 2006-10-06 01:23:30
|
さらに補足です。 ノードFはポート空けノードです。 もしポート未明けノードだったら、ノードPへのダウンロード要求時に失敗応答を返すとします。 06/10/06 に 阿部誠<abe...@gm...> さんは書きました: > ごめん言い忘れてたけど、前提としてキーサーバはポート空けノードしかなれない > (システム管理サーバも同様(今回は関係ないけど)) > > 06/10/06 に 阿部誠<abe...@gm...> さんは書きました: > > お疲れです。阿部です。 > > > > スカイプのサイトは見てみたよ。 > > もしかしたら間違ってるかもしれないけど、そのときはすいませn。 > > > > どうも松永君の記載を見ていると「UDPホール・パンチング」を間違えてないかと > > > > <前提> > > ノードA:グローバルIP保持 > > ノードB:ローカルIP(ルータ越し) > > > > 「ノードBからノードAへUDPパケットを送る場合はノードBルータにA→Bエントリが形成され > > ノードAからノードBへの返信UDPパケットはそのエントリを元にルータを通過し、ノードBへ届く」 > > 上記はUDP通信として本来想定している動作であり、そのエントリ生成機能を規定外利用しているのが「UDPホール・パンチング」機能だよね? > > > > したがって上記例では対応していないルータはないはずだよ。 > > 意図的にUDPを許可していない可能性はあるかもしれないけど、そんなプロバイダはないとおもう。そしてレオネットが対応しているかどうかはリアルタイム性を要求するネットげーを > > 試してみればわかるんじゃないかな?>西村君 > > > > んで、提案させてもらうと > > 基本的には(1)案なんだけど、 > > 将来的に機能拡張という形で搭載と言う方向性を考えて(1)変則案を提示します。 > > > > ・新たなノード種別として「プロクシノード」を定義する。 > > 対象ノードはポートが空けてある一般ノードすべて > > > > ポート未空ノード(以降「ノードA」)はプロキシノード(以降「ノードP」)に対し定期的に > > ファイルキーを登録。(キーサーバには送信しない) > > ノードPは自身のファイルキーと同時に自分のファイルキーとして > > ノードAのファイルキーをキーサーバーに代理登録。 > > > > ノードAのファイルがほしいノード(以降「ノードF」)はまずキーサーバから > > 持ち主がノードPと認識し、ノードPへダウンロード要求を送信します。 > > > > ノードPは自分の持っているファイルキーではないと判断すると、 > > ノードFに対して、TCPポートを空けて待機するように指示を出します。 > > > > ノードAは定期的にファイルキー登録要求をノードPに送信しているため、 > > ノードPはそのファイル登録キー登録要求の応答にあわせて、 > > アップロード指示をノードAに出します。(UDPとしての通常の手順) > > > > ノードAは」指示をうけるとノードFへファイル転送コネクションをとります。 > > これでノードA→ノードFへのファイル転送が行われます。 > > > > 補足として、ノードPが扱うポート未空けノードは1台or2台くらい > > プロキシノードの探し方はキーサーバからランダムに検出 > > > > ・一般ノード間のやりとりだけの変更になるため、後からでも対応可能? > > ・一般ノードのファイルキー登録処理周辺が複雑化しそう > > 等ありますが、やはりほしい機能です。 > > > > ご考慮ください > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 06/10/05 に 松永 健太郎<ken...@ya...> さんは書きました: > > > 松永です。 > > > > > > 少し情報が足りないので内容を追加します。 > > > > > > 3番の案はルータがUDPホール・パンチングに対応している場合のみ可能。 > > > > > > 松永 健太郎 <ken...@ya...> wrote: > > > > > > 松永です。 > > > > > > >それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > そうなりますね。 > > > 西村君の名前を出されるとかなり心苦しいところではあるけど。 > > > 見捨てる方向のほうが楽できると思う。 > > > ちょっと前に阿部君とそういう話しなかったけ? > > > > > > UDPホール・パンチングってどんなものか見てみた? > > > > > > この仕組みで、ポート開けているノードと同じような通信を > > > ポート開けていないノードにやらせようとすると、結構つらいことになるよ。 > > > > > > UDPホール・パンチングの何がつらいかっていうと、 > > > UDPホール・パンチングではルータの外側Aから内側Bに対して通信するために、まず内側Bから外側Aにパケットを投げて道を作る必要があるけど、つまり、外側から勝手に通信を始めることが出来ない。 > > > > > > これじゃ一般ノードにしても、ファイルアップロード時には、外側から要求が来るわけだから、外側から要求を受け付けるには、以下のどれかの選択に迫られるね。 > > > > > > 1.外部からの要求を受け付ける代理ノード(もちろんポートが開いている)を定義して、内側のノードは外側からの通信を受け付けるために、代理ノードはUDPホール・パンチングでコネクションを確保する。内側のノードにパケットを投げたい時には、代理ノードにパケットを投げる。代理ノードはパケットを転送する。 > > > > > > 代理ノードの候補としてはキーサーバーが考えられる。 > > > ファイルキーを登録する全てのキーサーバに代理登録をしておく。 > > > > > > ただし、ルータがUDPホール・パンチングに対応していなかったら、(1)の方法をとっても、外側からUDPのパケットを届けるのは不可能。 > > > 例えばレオネットのルータがUDPホール・パンチングに対応しているかはかなり怪しい。 > > > > > > 2. (1)と同じ MWNN$@$,!"DL?.$rTCPにする。これなら確実に通信可能。 > > > > > > 3.諦めて、ポートの内側はダウンロードオンリーする。 > > > > > > > > > 他にも方法は考え付くけど、上の案よりひどいので省略。 > > > > > > > > > 個人的な意見を言わせてもらえば、 > > > > > > 1は面倒だし、ルータが対応していないと破綻するので嫌。 > > > > > > 2は面倒な上に、普段はUDPなのに、特別ケースでTCPの通信も考えなくちゃいけないので嫌。 > > > > > > 3は内側のノードがシステムに一切貢献しないから嫌。 > > > < DIV>よって、ポート開けられないユーザは見捨てたい。 > > > 対応するとしても、ずっと後がいいです。 > > > > > > > > > > > > > > > > > > それとも、もっと簡単な実現方法考え付いてる? > > > 又は、上記の案のどれかと似たような仕組みを考え付いていて、それを受け入れている? > > > > > > > > > 阿部誠 <abe...@gm...> wrote: > > > 阿部です。 > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > > > それはないと思うので、 > > > 少なくても一般ノード(キャッシュサーバ)はポート空けなしで参加可能と言うことにしましょう。 > > > システム管理サーバ、キーサーバはポート空け必須と言うことにしましょう。 > > > > > > 問題は、大多数がポート空けなしになる可能性だけど > > > ファイル交換時はノード空けなしだと接続対象が大幅に減るので問題ないと思います。 > > > > > > > > > 06/10/04 に 松永 健太郎 さんは書きました: > > > > 松永です。 > > > > > > > > >プライベートIPでの参加ノードはどう取り扱いますか? > > > > > > > > アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 > > > > で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 > > > > 他に良さげな方法ある? > > > > たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) > > > > > > > > >UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 > > > > 使えないなら、両方空けている必要があるね。 > > > > > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html > > > > > > > > > > > > 関係ないけど、下のページ少し参考になるよ? > > > > SkypeとかGnutellaのプロトコルについて少し解説してるし。 > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html > > > > > > > > 阿部誠 wrote: > > > > 阿部です。 > > > > > > > > プライベートIPでの参加ノードはどう取り扱いますか? > > > > UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > > > > ------------------------------------------------------------------------- > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > > your > > > > opinions on IT & business topics through brief surveys -- and earn cash > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > _______________________________________________ > > > > P2p-sim-develop mailing list > > > > P2p...@li... > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > Take Surveys. Earn Cash. Influence the Future of IT > > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > your > > > > opinions on IT & business topics through brief surveys -- and earn cash > > > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > > > _______________________________________________ > > > > P2p-sim-develop mailing list > > > > P2p...@li... > > > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > Take Surveys. Earn Cash. Influence the Future of IT > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > your > > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > _______________________________________________ > > > P2p-sim-develop mailing list > > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > ________________________________ > > > [10th Anniversary] special auction campaign now! > > > ------------------------------------------------------------------------- > > > Take Surveys. Earn Cash. Influence the Future of IT > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > your > > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > > > P2p-sim-develop mailing list > > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > ________________________________ > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > ------------------------------------------------------------------------- > > > Take Surveys. Earn Cash. Influence the Future of IT > > > Join SourceForge.net's Techsay panel and you'll get the chance to share your > > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > _______________________________________________ > > > P2p-sim-develop mailing list > > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > |
From: <abe...@gm...> - 2006-10-05 16:57:57
|
ごめん言い忘れてたけど、前提としてキーサーバはポート空けノードしかなれない (システム管理サーバも同様(今回は関係ないけど)) 06/10/06 に 阿部誠<abe...@gm...> さんは書きました: > お疲れです。阿部です。 > > スカイプのサイトは見てみたよ。 > もしかしたら間違ってるかもしれないけど、そのときはすいませn。 > > どうも松永君の記載を見ていると「UDPホール・パンチング」を間違えてないかと > > <前提> > ノードA:グローバルIP保持 > ノードB:ローカルIP(ルータ越し) > > 「ノードBからノードAへUDPパケットを送る場合はノードBルータにA→Bエントリが形成され > ノードAからノードBへの返信UDPパケットはそのエントリを元にルータを通過し、ノードBへ届く」 > 上記はUDP通信として本来想定している動作であり、そのエントリ生成機能を規定外利用しているのが「UDPホール・パンチング」機能だよね? > > したがって上記例では対応していないルータはないはずだよ。 > 意図的にUDPを許可していない可能性はあるかもしれないけど、そんなプロバイダはないとおもう。そしてレオネットが対応しているかどうかはリアルタイム性を要求するネットげーを > 試してみればわかるんじゃないかな?>西村君 > > んで、提案させてもらうと > 基本的には(1)案なんだけど、 > 将来的に機能拡張という形で搭載と言う方向性を考えて(1)変則案を提示します。 > > ・新たなノード種別として「プロクシノード」を定義する。 > 対象ノードはポートが空けてある一般ノードすべて > > ポート未空ノード(以降「ノードA」)はプロキシノード(以降「ノードP」)に対し定期的に > ファイルキーを登録。(キーサーバには送信しない) > ノードPは自身のファイルキーと同時に自分のファイルキーとして > ノードAのファイルキーをキーサーバーに代理登録。 > > ノードAのファイルがほしいノード(以降「ノードF」)はまずキーサーバから > 持ち主がノードPと認識し、ノードPへダウンロード要求を送信します。 > > ノードPは自分の持っているファイルキーではないと判断すると、 > ノードFに対して、TCPポートを空けて待機するように指示を出します。 > > ノードAは定期的にファイルキー登録要求をノードPに送信しているため、 > ノードPはそのファイル登録キー登録要求の応答にあわせて、 > アップロード指示をノードAに出します。(UDPとしての通常の手順) > > ノードAは」指示をうけるとノードFへファイル転送コネクションをとります。 > これでノードA→ノードFへのファイル転送が行われます。 > > 補足として、ノードPが扱うポート未空けノードは1台or2台くらい > プロキシノードの探し方はキーサーバからランダムに検出 > > ・一般ノード間のやりとりだけの変更になるため、後からでも対応可能? > ・一般ノードのファイルキー登録処理周辺が複雑化しそう > 等ありますが、やはりほしい機能です。 > > ご考慮ください > > > > > > > > > > > > > > > > > 06/10/05 に 松永 健太郎<ken...@ya...> さんは書きました: > > 松永です。 > > > > 少し情報が足りないので内容を追加します。 > > > > 3番の案はルータがUDPホール・パンチングに対応している場合のみ可能。 > > > > 松永 健太郎 <ken...@ya...> wrote: > > > > 松永です。 > > > > >それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > そうなりますね。 > > 西村君の名前を出されるとかなり心苦しいところではあるけど。 > > 見捨てる方向のほうが楽できると思う。 > > ちょっと前に阿部君とそういう話しなかったけ? > > > > UDPホール・パンチングってどんなものか見てみた? > > > > この仕組みで、ポート開けているノードと同じような通信を > > ポート開けていないノードにやらせようとすると、結構つらいことになるよ。 > > > > UDPホール・パンチングの何がつらいかっていうと、 > > UDPホール・パンチングではルータの外側Aから内側Bに対して通信するために、まず内側Bから外側Aにパケットを投げて道を作る必要があるけど、つまり、外側から勝手に通信を始めることが出来ない。 > > > > これじゃ一般ノードにしても、ファイルアップロード時には、外側から要求が来るわけだから、外側から要求を受け付けるには、以下のどれかの選択に迫られるね。 > > > > 1.外部からの要求を受け付ける代理ノード(もちろんポートが開いている)を定義して、内側のノードは外側からの通信を受け付けるために、代理ノードはUDPホール・パンチングでコネクションを確保する。内側のノードにパケットを投げたい時には、代理ノードにパケットを投げる。代理ノードはパケットを転送する。 > > > > 代理ノードの候補としてはキーサーバーが考えられる。 > > ファイルキーを登録する全てのキーサーバに代理登録をしておく。 > > > > ただし、ルータがUDPホール・パンチングに対応していなかったら、(1)の方法をとっても、外側からUDPのパケットを届けるのは不可能。 > > 例えばレオネットのルータがUDPホール・パンチングに対応しているかはかなり怪しい。 > > > > 2. (1)と同じ MWNN$@$,!"DL?.$rTCPにする。これなら確実に通信可能。 > > > > 3.諦めて、ポートの内側はダウンロードオンリーする。 > > > > > > 他にも方法は考え付くけど、上の案よりひどいので省略。 > > > > > > 個人的な意見を言わせてもらえば、 > > > > 1は面倒だし、ルータが対応していないと破綻するので嫌。 > > > > 2は面倒な上に、普段はUDPなのに、特別ケースでTCPの通信も考えなくちゃいけないので嫌。 > > > > 3は内側のノードがシステムに一切貢献しないから嫌。 > > < DIV>よって、ポート開けられないユーザは見捨てたい。 > > 対応するとしても、ずっと後がいいです。 > > > > > > > > > > > > それとも、もっと簡単な実現方法考え付いてる? > > 又は、上記の案のどれかと似たような仕組みを考え付いていて、それを受け入れている? > > > > > > 阿部誠 <abe...@gm...> wrote: > > 阿部です。 > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > それって西村君とかレオネットユーザーを見捨てると言うこと? > > > > それはないと思うので、 > > 少なくても一般ノード(キャッシュサーバ)はポート空けなしで参加可能と言うことにしましょう。 > > システム管理サーバ、キーサーバはポート空け必須と言うことにしましょう。 > > > > 問題は、大多数がポート空けなしになる可能性だけど > > ファイル交換時はノード空けなしだと接続対象が大幅に減るので問題ないと思います。 > > > > > > 06/10/04 に 松永 健太郎 さんは書きました: > > > 松永です。 > > > > > > >プライベートIPでの参加ノードはどう取り扱いますか? > > > > > > アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 > > > で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 > > > 他に良さげな方法ある? > > > たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) > > > > > > >UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 > > > 使えないなら、両方空けている必要があるね。 > > > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html > > > > > > > > > 関係ないけど、下のページ少し参考になるよ? > > > SkypeとかGnutellaのプロトコルについて少し解説してるし。 > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html > > > > > > 阿部誠 wrote: > > > 阿部です。 > > > > > > プライベートIPでの参加ノードはどう取り扱いますか? > > > UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > > > > ------------------------------------------------------------------------- > > > Take Surveys. Earn Cash. Influence the Future of IT > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > > your > > > opinions on IT & business topics through brief surveys -- and earn cash > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > _______________________________________________ > > > P2p-sim-develop mailing list > > > P2p...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > > > ________________________________ > > > [10th Anniversary] special auction campaign now! > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > Take Surveys. Earn Cash. Influence the Future of IT > > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > your > > > opinions on IT & business topics through brief surveys -- and earn cash > > > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > > > _______________________________________________ > > > P2p-sim-develop mailing list > > > P2p...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > your > > opinions on IT & business topics through brief surveys -- and earn cash > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > > P2p-sim-develop mailing list > > P2p...@li... > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > ________________________________ > > [10th Anniversary] special auction campaign now! > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > your > > opinions on IT & business topics through brief surveys -- and earn cash > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > > P2p-sim-develop mailing list > > P2p...@li... > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > ________________________________ > > [10th Anniversary] special auction campaign now! > > > > > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share your > > opinions on IT & business topics through brief surveys -- and earn cash > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > _______________________________________________ > > P2p-sim-develop mailing list > > P2p...@li... > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > |
From: <abe...@gm...> - 2006-10-05 16:54:35
|
お疲れです。阿部です。 スカイプのサイトは見てみたよ。 もしかしたら間違ってるかもしれないけど、そのときはすいませn。 どうも松永君の記載を見ていると「UDPホール・パンチング」を間違えてないかと <前提> ノードA:グローバルIP保持 ノードB:ローカルIP(ルータ越し) 「ノードBからノードAへUDPパケットを送る場合はノードBルータにA→Bエントリが形成され ノードAからノードBへの返信UDPパケットはそのエントリを元にルータを通過し、ノードBへ届く」 上記はUDP通信として本来想定している動作であり、そのエントリ生成機能を規定外利用しているのが「UDPホール・パンチング」機能だよね? したがって上記例では対応していないルータはないはずだよ。 意図的にUDPを許可していない可能性はあるかもしれないけど、そんなプロバイダはないとおもう。そしてレオネットが対応しているかどうかはリアルタイム性を要求するネットげーを 試してみればわかるんじゃないかな?>西村君 んで、提案させてもらうと 基本的には(1)案なんだけど、 将来的に機能拡張という形で搭載と言う方向性を考えて(1)変則案を提示します。 ・新たなノード種別として「プロクシノード」を定義する。 対象ノードはポートが空けてある一般ノードすべて ポート未空ノード(以降「ノードA」)はプロキシノード(以降「ノードP」)に対し定期的に ファイルキーを登録。(キーサーバには送信しない) ノードPは自身のファイルキーと同時に自分のファイルキーとして ノードAのファイルキーをキーサーバーに代理登録。 ノードAのファイルがほしいノード(以降「ノードF」)はまずキーサーバから 持ち主がノードPと認識し、ノードPへダウンロード要求を送信します。 ノードPは自分の持っているファイルキーではないと判断すると、 ノードFに対して、TCPポートを空けて待機するように指示を出します。 ノードAは定期的にファイルキー登録要求をノードPに送信しているため、 ノードPはそのファイル登録キー登録要求の応答にあわせて、 アップロード指示をノードAに出します。(UDPとしての通常の手順) ノードAは」指示をうけるとノードFへファイル転送コネクションをとります。 これでノードA→ノードFへのファイル転送が行われます。 補足として、ノードPが扱うポート未空けノードは1台or2台くらい プロキシノードの探し方はキーサーバからランダムに検出 ・一般ノード間のやりとりだけの変更になるため、後からでも対応可能? ・一般ノードのファイルキー登録処理周辺が複雑化しそう 等ありますが、やはりほしい機能です。 ご考慮ください 06/10/05 に 松永 健太郎<ken...@ya...> さんは書きました: > 松永です。 > > 少し情報が足りないので内容を追加します。 > > 3番の案はルータがUDPホール・パンチングに対応している場合のみ可能。 > > 松永 健太郎 <ken...@ya...> wrote: > > 松永です。 > > >それって西村君とかレオネットユーザーを見捨てると言うこと? > > そうなりますね。 > 西村君の名前を出されるとかなり心苦しいところではあるけど。 > 見捨てる方向のほうが楽できると思う。 > ちょっと前に阿部君とそういう話しなかったけ? > > UDPホール・パンチングってどんなものか見てみた? > > この仕組みで、ポート開けているノードと同じような通信を > ポート開けていないノードにやらせようとすると、結構つらいことになるよ。 > > UDPホール・パンチングの何がつらいかっていうと、 > UDPホール・パンチングではルータの外側Aから内側Bに対して通信するために、まず内側Bから外側Aにパケットを投げて道を作る必要があるけど、つまり、外側から勝手に通信を始めることが出来ない。 > > これじゃ一般ノードにしても、ファイルアップロード時には、外側から要求が来るわけだから、外側から要求を受け付けるには、以下のどれかの選択に迫られるね。 > > 1.外部からの要求を受け付ける代理ノード(もちろんポートが開いている)を定義して、内側のノードは外側からの通信を受け付けるために、代理ノードはUDPホール・パンチングでコネクションを確保する。内側のノードにパケットを投げたい時には、代理ノードにパケットを投げる。代理ノードはパケットを転送する。 > > 代理ノードの候補としてはキーサーバーが考えられる。 > ファイルキーを登録する全てのキーサーバに代理登録をしておく。 > > ただし、ルータがUDPホール・パンチングに対応していなかったら、(1)の方法をとっても、外側からUDPのパケットを届けるのは不可能。 > 例えばレオネットのルータがUDPホール・パンチングに対応しているかはかなり怪しい。 > > 2. (1)と同じ MWNN$@$,!"DL?.$rTCPにする。これなら確実に通信可能。 > > 3.諦めて、ポートの内側はダウンロードオンリーする。 > > > 他にも方法は考え付くけど、上の案よりひどいので省略。 > > > 個人的な意見を言わせてもらえば、 > > 1は面倒だし、ルータが対応していないと破綻するので嫌。 > > 2は面倒な上に、普段はUDPなのに、特別ケースでTCPの通信も考えなくちゃいけないので嫌。 > > 3は内側のノードがシステムに一切貢献しないから嫌。 > < DIV>よって、ポート開けられないユーザは見捨てたい。 > 対応するとしても、ずっと後がいいです。 > > > > > > それとも、もっと簡単な実現方法考え付いてる? > 又は、上記の案のどれかと似たような仕組みを考え付いていて、それを受け入れている? > > > 阿部誠 <abe...@gm...> wrote: > 阿部です。 > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > それって西村君とかレオネットユーザーを見捨てると言うこと? > > それはないと思うので、 > 少なくても一般ノード(キャッシュサーバ)はポート空けなしで参加可能と言うことにしましょう。 > システム管理サーバ、キーサーバはポート空け必須と言うことにしましょう。 > > 問題は、大多数がポート空けなしになる可能性だけど > ファイル交換時はノード空けなしだと接続対象が大幅に減るので問題ないと思います。 > > > 06/10/04 に 松永 健太郎 さんは書きました: > > 松永です。 > > > > >プライベートIPでの参加ノードはどう取り扱いますか? > > > > アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 > > で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 > > 他に良さげな方法ある? > > たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) > > > > >UDP通信ってポートを空けずに双方向通信ってできるの? > > > > UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 > > 使えないなら、両方空けている必要があるね。 > > > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html > > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html > > > > > > 関係ないけど、下のページ少し参考になるよ? > > SkypeとかGnutellaのプロトコルについて少し解説してるし。 > > > http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html > > > > 阿部誠 wrote: > > 阿部です。 > > > > プライベートIPでの参加ノードはどう取り扱いますか? > > UDP通信ってポートを空けずに双方向通信ってできるの? > > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share > > your > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > > P2p-sim-develop mailing list > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > > > ________________________________ > > [10th Anniversary] special auction campaign now! > > > > > > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > > opinions on IT & business topics through brief surveys -- and earn cash > > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > > _______________________________________________ > > P2p-sim-develop mailing list > > P2p...@li... > > > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > ________________________________ > [10th Anniversary] special auction campaign now! > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > ________________________________ > [10th Anniversary] special auction campaign now! > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > |
From:
<ken...@ya...> - 2006-10-04 23:40:57
|
松永です。 少し情報が足りないので内容を追加します。 3番の案はルータがUDPホール・パンチングに対応している場合のみ可能。 松永 健太郎 <ken...@ya...> wrote: 松永です。 >それって西村君とかレオネットユーザーを見捨てると言うこと? そうなりますね。 西村君の名前を出されるとかなり心苦しいところではあるけど。 見捨てる方向のほうが楽できると思う。 ちょっと前に阿部君とそういう話しなかったけ? UDPホール・パンチングってどんなものか見てみた? この仕組みで、ポート開けているノードと同じような通信を ポート開けていないノードにやらせようとすると、結構つらいことになるよ。 UDPホール・パンチングの何がつらいかっていうと、 UDPホール・パンチングではルータの外側Aから内側Bに対して通信するために、まず内側Bから外側Aにパケットを投げて道を作る必要があるけど、つまり、外側から勝手に通信を始めることが出来ない。 これじゃ一般ノードにしても、ファイルアップロード時には、外側から要求が来るわけだから、外側から要求を受け付けるには、以下のどれかの選択に迫られるね。 1.外部からの要求を受け付ける代理ノード(もちろんポートが開いている)を定義して、内側のノードは外側からの通信を受け付けるために、代理ノードはUDPホール・パンチングでコネクションを確保する。内側のノードにパケットを投げたい時には、代理ノードにパケットを投げる。代理ノードはパケットを転送する。 代理ノードの候補としてはキーサーバーが考えられる。 ファイルキーを登録する全てのキーサーバに代理登録をしておく。 ただし、ルータがUDPホール・パンチングに対応していなかったら、(1)の方法をとっても、外側からUDPのパケットを届けるのは不可能。 例えばレオネットのルータがUDPホール・パンチングに対応しているかはかなり怪しい。 2. (1)と同じ MWNN$@$,!"DL?.$rTCPにする。これなら確実に通信可能。 3.諦めて、ポートの内側はダウンロードオンリーする。 他にも方法は考え付くけど、上の案よりひどいので省略。 個人的な意見を言わせてもらえば、 1は面倒だし、ルータが対応していないと破綻するので嫌。 2は面倒な上に、普段はUDPなのに、特別ケースでTCPの通信も考えなくちゃいけないので嫌。 3は内側のノードがシステムに一切貢献しないから嫌。 よって、ポート開けられないユーザは見捨てたい。 対応するとしても、ずっと後がいいです。 それとも、もっと簡単な実現方法考え付いてる? 又は、上記の案のどれかと似たような仕組みを考え付いていて、それを受け入れている? 阿部誠 <abe...@gm...> wrote: 阿部です。 > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 それって西村君とかレオネットユーザーを見捨てると言うこと? それはないと思うので、 少なくても一般ノード(キャッシュサーバ)はポート空けなしで参加可能と言うことにしましょう。 システム管理サーバ、キーサーバはポート空け必須と言うことにしましょう。 問題は、大多数がポート空けなしになる可能性だけど ファイル交換時はノード空けなしだと接続対象が大幅に減るので問題ないと思います。 06/10/04 に 松永 健太郎 さんは書きました: > 松永です。 > > >プライベートIPでの参加ノードはどう取り扱いますか? > > アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 > で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 > 他に良さげな方法ある? > たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) > > >UDP通信ってポートを空けずに双方向通信ってできるの? > > UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 > 使えないなら、両方空けている必要があるね。 > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html > > > 関係ないけど、下のページ少し参考になるよ? > SkypeとかGnutellaのプロトコルについて少し解説してるし。 > http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html > > 阿部誠 wrote: > 阿部です。 > > プライベートIPでの参加ノードはどう取り扱いますか? > UDP通信ってポートを空けずに双方向通信ってできるの? > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > ________________________________ > [10th Anniversary] special auction campaign now! > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ P2p-sim-develop mailing list P2p...@li... https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop --------------------------------- [10th Anniversary] special auction campaign now! ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________ P2p-sim-develop mailing list P2p...@li... https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop --------------------------------- [10th Anniversary] special auction campaign now! |
From:
<ken...@ya...> - 2006-10-04 17:15:12
|
松永です。 >それって西村君とかレオネットユーザーを見捨てると言うこと? そうなりますね。 西村君の名前を出されるとかなり心苦しいところではあるけど。 見捨てる方向のほうが楽できると思う。 ちょっと前に阿部君とそういう話しなかったけ? UDPホール・パンチングってどんなものか見てみた? この仕組みで、ポート開けているノードと同じような通信を ポート開けていないノードにやらせようとすると、結構つらいことになるよ。 UDPホール・パンチングの何がつらいかっていうと、 UDPホール・パンチングではルータの外側Aから内側Bに対して通信するために、まず内側Bから外側Aにパケットを投げて道を作る必要があるけど、つまり、外側から勝手に通信を始めることが出来ない。 これじゃ一般ノードにしても、ファイルアップロード時には、外側から要求が来るわけだから、外側から要求を受け付けるには、以下のどれかの選択に迫られるね。 1.外部からの要求を受け付ける代理ノード(もちろんポートが開いている)を定義して、内側のノードは外側からの通信を受け付けるために、代理ノードはUDPホール・パンチングでコネクションを確保する。内側のノードにパケットを投げたい時には、代理ノードにパケットを投げる。代理ノードはパケットを転送する。 代理ノードの候補としてはキーサーバーが考えられる。 ファイルキーを登録する全てのキーサーバに代理登録をしておく。 ただし、ルータがUDPホール・パンチングに対応していなかったら、(1)の方法をとっても、外側からUDPのパケットを届けるのは不可能。 例えばレオネットのルータがUDPホール・パンチングに対応しているかはかなり怪しい。 2. (1)と同じ要領だが、通信をTCPにする。これなら確実に通信可能。 3.諦めて、ポートの内側はダウンロードオンリーする。 他にも方法は考え付くけど、上の案よりひどいので省略。 個人的な意見を言わせてもらえば、 1は面倒だし、ルータが対応していないと破綻するので嫌。 2は面倒な上に、普段はUDPなのに、特別ケースでTCPの通信も考えなくちゃいけないので嫌。 3は内側のノードがシステムに一切貢献しないから嫌。 よって、ポート開けられないユーザは見捨てたい。 対応するとしても、ずっと後がいいです。 それとも、もっと簡単な実現方法考え付いてる? 又は、上記の案のどれかと似たような仕組みを考え付いていて、それを受け入れている? 阿部誠 <abe...@gm...> wrote: 阿部です。 > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 それって西村君とかレオネットユーザーを見捨てると言うこと? それはないと思うので、 少なくても一般ノード(キャッシュサーバ)はポート空けなしで参加可能と言うことにしましょう。 システム管理サーバ、キーサーバはポート空け必須と言うことにしましょう。 問題は、大多数がポート空けなしになる可能性だけど ファイル交換時はノード空けなしだと接続対象が大幅に減るので問題ないと思います。 06/10/04 に 松永 健太郎 さんは書きました: > 松永です。 > > >プライベートIPでの参加ノードはどう取り扱いますか? > > アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 > で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 > 他に良さげな方法ある? > たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) > > >UDP通信ってポートを空けずに双方向通信ってできるの? > > UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 > 使えないなら、両方空けている必要があるね。 > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html > > > 関係ないけど、下のページ少し参考になるよ? > SkypeとかGnutellaのプロトコルについて少し解説してるし。 > http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html > > 阿部誠 wrote: > 阿部です。 > > プライベートIPでの参加ノードはどう取り扱いますか? > UDP通信ってポートを空けずに双方向通信ってできるの? > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > ________________________________ > [10th Anniversary] special auction campaign now! > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ P2p-sim-develop mailing list P2p...@li... https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop --------------------------------- [10th Anniversary] special auction campaign now! |
From: <abe...@gm...> - 2006-10-04 15:37:31
|
阿部です。 > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 それって西村君とかレオネットユーザーを見捨てると言うこと? それはないと思うので、 少なくても一般ノード(キャッシュサーバ)はポート空けなしで参加可能と言うことにしましょう。 システム管理サーバ、キーサーバはポート空け必須と言うことにしましょう。 問題は、大多数がポート空けなしになる可能性だけど ファイル交換時はノード空けなしだと接続対象が大幅に減るので問題ないと思います。 06/10/04 に 松永 健太郎<ken...@ya...> さんは書きました: > 松永です。 > > >プライベートIPでの参加ノードはどう取り扱いますか? > > アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 > で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 > 他に良さげな方法ある? > たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) > > >UDP通信ってポートを空けずに双方向通信ってできるの? > > UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 > 使えないなら、両方空けている必要があるね。 > > 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 > > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html > http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html > > > 関係ないけど、下のページ少し参考になるよ? > SkypeとかGnutellaのプロトコルについて少し解説してるし。 > http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html > > 阿部誠 <abe...@gm...> wrote: > 阿部です。 > > プライベートIPでの参加ノードはどう取り扱いますか? > UDP通信ってポートを空けずに双方向通信ってできるの? > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > > > ________________________________ > [10th Anniversary] special auction campaign now! > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > P2p-sim-develop mailing list > P2p...@li... > https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop > > > |
From:
<ken...@ya...> - 2006-10-04 09:49:33
|
松永です。 >プライベートIPでの参加ノードはどう取り扱いますか? アプリケーションのプロトコルで、自分のグローバルIPをネットワーク越しのノードに問い合わせる制御を入れましょう。 で、通信相手に自分のIPを伝える時には、問い合わせたIPを使う。 他に良さげな方法ある? たしか『Winnyの技術』でここらへんの内容に触れてるよ。(無くしたんだっけ?) >UDP通信ってポートを空けずに双方向通信ってできるの? UDPホール・パンチング(下記URL参照)が使えるなら、TCPと同じで片方のポートが開いてればOKです。 使えないなら、両方空けている必要があるね。 今回のファイル共有システムでは、システム参加者全員がUDPポートを空ける方向で行きましょう。 http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_03.html http://www.atmarkit.co.jp/fwin2k/experiments/skype02/skype02_04.html 関係ないけど、下のページ少し参考になるよ? SkypeとかGnutellaのプロトコルについて少し解説してるし。 http://www.atmarkit.co.jp/fwin2k/experiments/indexpage/index.html 阿部誠 <abe...@gm...> wrote: 阿部です。 プライベートIPでの参加ノードはどう取り扱いますか? UDP通信ってポートを空けずに双方向通信ってできるの? ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ P2p-sim-develop mailing list P2p...@li... https://lists.sourceforge.net/lists/listinfo/p2p-sim-develop --------------------------------- [10th Anniversary] special auction campaign now! |