P2Pでサーバに依存しない掲示板を作るの巻at TECH
P2Pでサーバに依存しない掲示板を作るの巻 - 暇つぶし2ch50:
01/08/30 01:48 uLXMKjs2
>>49
プログラムが、実際の使用に耐えうるものかどうかは、ある程度のユー
ザーにテスターとして協力してもらわねばならず。しりとりなら誰でも
参加可能。

>全部のPeerに均等に同じものを配布せずにすませる仕組みだと思うんだけど・・違う?

P2Pの定義によるかもだけど、あなたの意見には同意。
しかし、板単位、スレ単位でネットワークを組むわけではないから。

もう一つは、配布漏れが発生した際に、どのようにユーザーはそれを
知り、リカバーするのか。 「氏ね>>111」 しかし、俺のログには、
>>111のカキコないぞ。では、>>111を検索しよう」 うーむ。

51:41
01/08/30 02:00 UdwDTLPc
レスどうもっす。

>>44

>(スレッドのローカルへの保存)
>(パケットのルーティングのルール)
>(ノード間通信のスレッド共有のプロトコル) の3つに分けて考えたほうが
> 整理できると思います。

そうっスね。ひとまず、クライアント間での通信メッセージは
どういう書式で記述するのがいいんだろう・・・?XML?
だと、無駄にでかいか。Gnutellaはバイナリなんだっけ・・・?

> もう一つ、メジャーな板はよいけれど、参加者の少ないマイナーな板は、
> 特に参加者が少ない時間帯では、共有に失敗する可能性が考えられま
> す。 >>3で書いたように、そこで、ランダムな板のスレッドをいくつか、強
> 制的に、参加者に共有することを義務づける。あるいはスレッドを立てる
> こととバーターで、を考えています。

新しめのカキコ(レスじゃ紛らわしかったですね、すみません)については、
41の案では、マイナーな板でも公平に、書き込みと同時にわさわさと広がって
大量のコピーが作られる予定なので、大丈夫そうな感じです。
古めのカキコは知らん。

> 匿名性については、自分が接続しているノードのIPアドレスは分かって
> しまいますね。中のカキコの作者はわかりませんが。
> あとGnutellaのプロトコルでは、検索クエリーへの答えのパケットに
> IPアドレスが含まれているので、そのパケットが通過したノードでは、
> 「xは、A板のスレッドを持っている、yはB板のスレッドCを持っている」
> という情報が漏れてしまいますね。

えーと、これはその応答に使う経路で直接、
カキコを返すような感じでやれば匿名性は守れると思います。
接続ノードにIPがばれちゃうのは・・・まぁ、しょうがないかと。

>>47

勘違いだったらゴメン。それだと、その板を同時に読んでいる
いくつかのクライアントのIPを取得できちまわないか?

一体、匿名性は、
・2ch.p2pに接続しているがバレる
・板に接続しているのがバレる
・スレッドに接続しているのがバレる
のうち、どのレベルまで確保すればいいのだろうか?
「スレッドに接続しているのがバレる」まで許されるのなら、
割とパフォーマンス良いシステムが出来そうだ。
とりあえず、41の案では、匿名性最優先で考えたつもり。

52:49
01/08/30 02:19 9VE7JjWs
氏ね >>111
の111は、ブラウザ上でURLとして埋めこまれる
→それを受けるサーバが処理する

となれば方策は2つ
1. そのサーバがスレッドデータの保有者となるような構造にしておく
 →必ず返答可能
2. そのサーバは、スレッドデータの表示者となるような構造にしておく
 →検索は、表示者が行う
  行うとすれば、、、
  手順1 スレッドはどこか探り当てる
  手順2 スレッドを保持しているサーバに対してrequestを送り、
     返答内容に差がなければ表示する(返答可能者全員一致採用法則)

53:
01/08/30 02:23 uLXMKjs2
gnutellaはガチガチのバイナリだよ。XMLでいいんじゃないの?
前も書いたけど、似たようなことをSOAPでやってる人、XML-RPCが
いるらしいよ。

54:49
01/08/30 02:24 9VE7JjWs
もし、配布という概念を用いるのであれば、
歴史のあるNNTPや、Proxyサーバを使った方が工数も下がるし
プロトコルの不得手としているところもわかるのでいいと思う。

ただ、一般社会のパンピーが、UD-Agentを利用するように
Peerを保持するようなノリに仕向けるためには、
そんな重いものを持たせるのも無理があるかと思う。

仕様決定は、現状可能な技術があるからこれで、
というアプローチが経済的であるけれど、
まずは人間本然の論理として、
大丈夫そうかどうかを論じることも亦重要なのではないでしょうか。
把握しやすい論理は実装矛盾を生みにくいのも亦事実であります。

55:
01/08/30 03:18 uLXMKjs2
>歴史のあるNNTPや、Proxyサーバを使った方が工数も下がるし

サーバが必要では?概念だけ利用するの?ごめん。頭が動かな
いのでもう寝る。

56:49
01/08/30 04:08 9VE7JjWs
>>55
サーバプロセスをPeerに実装する
というのがNNTPやProxyサーバを使った場合の答

でもP2Pは、カエサルのものはカエサルに、が正道だと思うなぁ・・・

57:デフォルトの名無しさん
01/08/30 13:40 uLXMKjs2
てすてす。かける?

58:30
01/08/30 14:41 YEMO5.RY
チェーン方式(発言番号ロック制御)について
URLリンク(piza2.2ch.net)
URLリンク(piza2.2ch.net)
URLリンク(piza2.2ch.net)

要は、最新の発言があったサーバンドが、
スレッドのオリジナルを保持しているっていう当たり前の話。
書きこみをする時というか、その依頼があった時は、そこに書き込みをしにいく。
但し、先着1名様限りで、あぶれた場合は、新しくオリジナルになった所を教えてもらって、
もう一度再チャレンジ。成功したら自分がオリジナルの所有者になるというわけ。

そして新しい書き込みが送られてきたら、自分の前の番号のサーバンドにリレーする。
そうすれば、発言のあったサーバンドがミラーとして利用出来る。
行方不明だったり、拒否だった場合はバイパスしてその前に送る。
もちろん、余裕があればその他からのチェーン要求を受け付けてもいい。
まあ、何度も書き込みをしてるとその数だけ何回も送られて来る事になるから
古い方は許否してチェーンを外れておくか、照合用に参照情報だけ送ってもらう。

でこれだと結局オリジナルのサーバに依存だから、
オリジナルが行方不明になったり、トラブった時にも
対応出来る仕組みを考えてたのが上の参照リンクの奴。

基本的には、チェーンの参加者は、再起動時には必ず
最新状況を確認せよって話かな?

59:
01/08/30 14:46 XO07jRAQ
正直、複数の人間が思い付きを書くだけでは、まとまらず話しが拡散
しますね。 僕はしばらくコモってまとめることにします。

(でも時々age)

60:デフォルトの名無しさん
01/08/30 15:29 ZbIqADkA
>>58

でもさ、それだと、カキコをしたやつのIPバレバレじゃない?
同時に最新のカキコをした奴(=オリジナル保持者)から見れば、
それスレにアクセスしてくるやつのIPもバレバレな気がするんだが。

これを回避できれば、リアルタイム性、同期性もあって、
素晴らしいと思うんだけど・・・。

61:デフォルトの名無しさん
01/08/31 00:44 t1XPYVCw
書きこみ番号なんてすっとんでもいーじゃん 現に今がそうなんだし。
みんなもっと素元的に落としこんで考えろ Learn more,study hard!!

62:
01/08/31 03:30 cWzLd3g2
朝起きるのが早すぎるよ。

巨人インテルマンセー。
URLリンク(www.watch.impress.co.jp)
URLリンク(www.intel.com)

63:58
01/08/31 03:52 xAV9dT/M
>>60
もし、この書き込みがそうだと仮定すると、
たしかに、62の書き込みがあったサーバンドのipが分からないと
書き込めない事になるし、分かれば書き込んだ方のipも分かってしまう

どうすればいいかというと、2chの管理人を増産するのが一番簡単。
要はIP取らなければいいわけで、そういう信頼出来る?
サーバンドにしかアクセスしなければいい。
で、書き込みしにいく時は、それらの代理サーバンドに全権依頼する。
番号の管理は代理サーバンドが行なう事になる。
つまり、書き込む人と、サーバンドの独立性を確保すればいい。
まあ、要するに普通にユーザーモードで書き込めればいいって話だね。

>>61
レス順序が一定でないと、例えばこの書き込みの方が、61より
速く出回るって事が起こりえる。

ipなんてない昔からそういう転送掲示板はたくさんある訳。
それならnntp(ihave/sendme等)で十分。というかもっと単純化するべきか?
要は設定を自動化して、皆がだれでもサーバー立てられればいいって話。
既存のnntpサーバが、一般の接続を弾くのは、そのように設定してるからってだけだと思う。
つまり車輪の再発明は、ゴムタイヤだから意味があるので、
そうでなければ、滑りを良くして、レールを発明するって方法もある。
p2pなんて、結局ip/dns/サーチエンジンの再発明みたいな話だし。

64:デフォルトの名無しさん
01/08/31 04:05 g5Kjhjlw
今のGnutellaでファイルの共有は出来る。問題なのは同期を取ることだと思う。
でもこれを実際にp2pでやるのは無理というかその性質に合致しないことのよう
に思える。2chのようなものは中央サーバがどうしてもいるんじゃないだろうか。
だからそういったサーバ単位で不可分散を考えた方がいいと思う。プリミティブ
な意見で申し訳ないが。。

65:
01/08/31 04:28 cWzLd3g2
お、ネガティブな意見続出。まぁ、普通そうだろうね。

書き込みの順序については既に前のスレッドでも議論したね。もうお腹いっぱい。
配布の遅延や漏れについては、当然生じるわけですが、これをどのように最小限に
押さえるのかというところが面白いところだと思うYO。

前のスレッドで、SOAP使うと言う人がいましたが、ここはもう見てないですかー?

66:
01/08/31 05:03 GoIOYhtI
>>63
こういうのはどうかな?

(1) Gnutella Net 上でニュースグループ名(たとえば2ch.techとか)を
  含むファイルを持っているか検索をする。
(2) 見つかったら、そのファイルをGETする。この時点でGETされた側は、
  GETした側からNNTPで記事を配送できるようにする。
(3) ファイルの中身を見て特定の単語(たとえば「このファイルは2ch掲示板で
  使います。」みたいな単語)が含まれていたら、そのピアとNNTPでやりとり
  を開始する。

こういう感じで自動的に「レス」の配送を行うことってできないかなあ?

んで、このままだと今の2chと互換性がないから、取ってきたレスをまとめて
スレにして、ベアシェアみたいに限定されたウェブサーバ機能(この場合は
MP3ファイルリストの表示じゃなくて、掲示板CGI機能)も持たせてやれば
どうかな?

67:
01/08/31 05:16 GoIOYhtI
>>65
レスが途中で抜けても、後からそのレスを検索によって取得できれば問題ないんじゃないかな?
たぶん、今みたいに >>999 とか番号で指定することはできなくなるから、レスIDを
使うことになると思うけど、そのユニークなIDを検索にかけて取得するようにすれば。。

って>>66-67は思いっきりNNTPを使ってさらにレスごとに管理するという前提で話してますが。。

68:
01/08/31 05:20 GoIOYhtI
要するに、誰かが >>xxx みたいに参照してないレスは、あってもなくてもいい、
はいいすぎだけど、なくても気づかない、ってことなんで、だれかが参照した時点で
取得すればいいんじゃないかなと思ったんです。

69:
01/08/31 05:42 cWzLd3g2
>>67-68
それって、>>50, >>52 と同じ事と考えていいよね?

70:63
01/08/31 05:48 xAV9dT/M
>>64
そんなこともないと思う。

p2pってのは、一番必要な人達が持っていれば
他の人はそこからもらってくればいいから
皆が保存しておく必要がないって所にメリットが有るように思う。

ipが無い時代には、在り処が分かってても、隣までこなければ無理だったけど、
今は場所さえ分かれば、そこへアクセスして取ってくる事ができる。

>>66
で、>>30でも言ったけど、問題は、規模がでかくなると、
索引でさえ膨大になって、その場所を見つけるのが難しくなる。
まあ、ageで書き込むだけである程度それができるのが2chのシステムである訳で。
ただ、書き込みが多すぎて流れてしまうと、スレの中でも見つけにくくなるのと同じ。
要は処理が追いつかなければ全体を見る事が出来なくなって
見つけられない訳だよね。
でも、例えばp2pの掲示板の話題がこのプログラム板にある
っていうことを知ってればここには辿り着けるって話。

結局、何処かでツリー構造に頼るしかないかもしれない。
でも、それでは頂点がパンクするので、依存するのは避けたいわけだよね
それには山の頂上を平らにするっていうのが普通のサーバー分散の発想。

ただ、山を転がせがばいいという考え方もあるんだよね。
要は、ここを知らなかった場合は、誰かがなんらかの形で
教えてくれたから皆ここを見てる訳だと思うし?

71:70
01/08/31 05:50 xAV9dT/M
>>68
逆にいうと皆が参照してくれれば問題ないんだよね。

結局、システム的には、
その場で即座に作れて自動リングする。
勝手に消えない匿名ホームページ群と、

そのリングの負荷分散型ランキングシステム
があればいいだけかもしれないなあ?
まさにこれが問題なんだけど。

72:66-68
01/08/31 11:06 DGb/yr.6
>>71
ニュース読んでると、みんなが興味のある記事には
たくさんの返信がされるじゃない。
ということは、もともとの記事が配信されなくても
それに返信した記事のうちのどれかひとつが届けば
もともとの記事が存在したことがわかるし、
興味なければ返信もないから見つけられない人が
少し増えることになるだけと思う。

その記事に返信された数がそのままランキングに
なってないかなぁ?そういう話じゃない?>ランキングシステム

73:
01/08/31 13:00 cWzLd3g2
>>72
多少の遅延が生じるかもしれませんが、ネットワークに参加しているノードが
カキコを持っていれば、いつかは(w、同期が取れると考えています。

問題はその遅延時間を出来るだけ短くすることと、遅延に気づいたユーザーがその
カキコをできるだけ自然に、かつネットワークに負荷がかからないようにして取り
寄せることができるような仕組みかなと思うのです。

74:71
01/08/31 13:40 xAV9dT/M
>72
レスがつくのは、興味があるかというより、確かにそれは前提条件ではあるけど、
まずはレスの付けやすい記事かどうか、というのが大きいんじゃないかな?

レスを付けなければ見られにくくなるとすると、
届いてない記事に誰がレスを付けるのかって話だよね。
見れる人が少なければ少ない程、レスがつかない可能性が高いのでは?
さらに、タイムラグがあればある程、レスはしにくくなりますしね。
それに、誰もレスのネタがないからってだれも興味のない記事とは限らないでしょう。
ホームページなんかでも、カウンタだけはやたらまわってるのに、
付属の掲示板はまっさらなんてところはザラにあるわけで、

まあ、2ch内に確実に存在したとしても、量が多すぎて見つけられない人も
多いのかもしれないから、それと一緒の事かもしれないけどね。

とりあえず、>>58みたいなのを誰か作る気ないかな?
と、実際のプログラムが書けない私は、sageで書いて人に依存してみる。(w

75:
01/08/31 19:05 cWzLd3g2
わすれないようにメモ

おれのサーバント、どうやら書き込みの受信が遅れてるみたいだぞ(遅延発生を
認識)
->同じスレッド仲間とのコネクションの端っこにいることが推測される。

接続数増加ボタン連打。
->仲間とのコネクションを沢山張ることにで遅延を回避しようとする。

76:
01/08/31 22:37 2wgXA52U
サイト作ったYO!
URLリンク(www.geocities.co.jp)

77:41
01/09/01 01:05 V0kaltcw

う…漏れも作っちまった。
>>41 で出した案の改良板。まずは概略。
URLリンク(www.geocities.co.jp)

…つーわけで、ご意見ご感想お待ちしております。

URLリンク(www.geocities.co.jp) より
> 板によって異なるポリシー(IPアドレスの表示/匿名、投稿制限等)を設定可能。

むむ、興味あるぞ。

78:
01/09/01 01:14 t2cxml/2
僕のアイデアと同じ所もあり、違うところもある。
なんとか一緒にやれませんかね。

>Gnutellaと違うのはファイル(スレッド、書き込み)の
>やりとりを直接行わないで、他のクライアントを通す。
>IPを晒す必要がないので、匿名性を確保出来る。

カキコの中身は全部パケットに入れて流すんですか?
それは少し非現実的では? パケットでブロードキャスト
するのは検索クエリとそれに対する応答にして、後は
ソケット通信がいいんじゃないかと。

79:aki
01/09/01 01:22 Zhfmqejs
なんか150Mbps越えたそうな。
URLリンク(www.maido3click.com)

というわけでTikiからリンクはっと来ました...

80:Perler ◆GSi39OA6
01/09/01 01:33 mWrhy1jc
>>79
スレ違いは置いといて、単位が「hits」なんですが。。。デマのような気が。

81:aki
01/09/01 01:39 Zhfmqejs
ガガーン。駄目じゃん<単位

スレ違いぽいのは余談の方が長いせいですね。
逝ってきます。。

82:デフォルトの名無しさん
01/09/01 01:39 ancbgN2U
待機任務がヒマなので結構テキトーに考えてみた
URLリンク(www.geocities.co.jp)

図説の現行2chサーバはあくまでも例です。
単に、どこかに固定的に置かれているプレゼンテーションを行う層として考えてるだけ。
(URL固定でないとフツーの人が見れないから)

83:あぼーん
あぼーん
あぼーん

84:
01/09/01 01:41 t2cxml/2
このすれ、急に混雑してきたね…

85:あぼーん
あぼーん
あぼーん

86:
01/09/01 05:23 t2cxml/2
URLリンク(www.geocities.co.jp)
>書き込み並びにスレの取得などは、他のクライアントからの伝聞を
>装うのでばれない。

「装う」という仕様では、装っていることがバレバレなのだから、結局IP
アドレスがばれてしまうと思います。

そこで、ランダムなノードをプロクシとして使うことを考えてみました。
URLリンク(www.geocities.co.jp)

ランダムなノードは、本当に投稿してくれるのか?
本当に俺のIPを忘れてくれるのか?ログとってねーよなゴルァ!

そのリスクを最小限に押さえるため、行きずりの、全然無関係な板の人に頼む。
だめか。

結局、P2Pは互いを信頼することで成り立っているから、これはどうしようも
ない問題だと思うな。何か良い方法があればいいけど。

87:デフォルトの名無しさん
01/09/01 13:30 yanE/TlI
>>78

つまり、カキコの中身をバケツリレー的に伝聞するという事ですよね?
で、自分がコネクションを張っているクライアントに対してソケットで交信よんよん。
だから、ブロードキャストをする必要は無いと思う。

ブロードキャストは最初にコネクションを張る時だけで。

88:デフォルトの名無しさん
01/09/01 13:35 yanE/TlI
>>86

いや、バケツリレー的にメッセージを送るプロトコルなら。

「どっかのだれかから、あんたにメッセージだよ」
「どっかのだれかが、スレ取得したいから送れ」

を、本人を含めて伝聞で行うという意味じゃないかな?
つまり、ネットワーク総プロクシ化。

的外れだったら、スマソ

89:デフォルトの名無しさん
01/09/01 13:44 oknLaLHw
おもしろそうな事やってますね、おいらも混ぜてちょ。
(といいつつ、あまり動けないけど)
練ってけど、TCP/IPでいく限りはIPアドレスが漏れるのは避けられないから、
トークンバスの仮想ネットワーク作っちまったらどうかな。
レスはこの仮想ネットワーク上にブロードキャストしちまえば誰が書いたかわからない。
A ==> B ==> C ==> D ==> E
^=======================+
のような輪を作る。Aが発言しBに渡す、BはC以降の誰かが発言したという事しかわからない。


以下、思いついてるネタを散文的に書きなぐり
・データの持ち方は現行の2chにとらわれる必要なし。httpdとして動き、それらしく見せるローカルなデーモン作ればいい。
・スレはレス(いわゆるメッセージ)を指すディレクトリでありレス本体は含まない。スレを閲覧するときに持ってないレスをgnuttelaのように掻き集める。

90:デフォルトの名無しさん
01/09/01 14:10 yanE/TlI
>>89

ここで
>書き込み並びにスレの取得などは、他のクライアントからの伝聞を
>装うのでばれない。
というのは、

Aが「どっかのだれかからのメッセージ」と偽れば、Aが発言したとはBも分からない。
と解釈すればいいのでしょうかね?

グヌテラのようにかき集めるのは匿名性の問題があるから、これもバケツ
リレー的に行えばいいと思うです。

91:
01/09/01 14:21 9DvFkqOE
書き込みの中身をパケットで流したら、ネットワークが大きくなった時に
簡単に破綻すると思います。

92:デフォルトの名無しさん
01/09/01 14:33 1.Ou8YGY

バケツリレーするには、少なくても隣の人が誰かを知らなければならない
 という問題はあるけど

ネットワークが大きくなってもバケツの数も増えるので同じでは?

93:
01/09/01 14:36 9DvFkqOE
確かに書き込みをパケットに入れてバケツリレーをすると、匿名性は
保てますが、ネットワークが簡単に破綻してしまうので、止めたほうが
良いと思います。

URLリンク(www.jnutella.org)
絶対に実装してはならない機能はチャットである。狂気の惨状にしては
ならない:チャットのパケットを送ってはならない。

94:
01/09/01 14:38 9DvFkqOE
>ネットワークが大きくなってもバケツの数も増えるので同じでは?

それは、(ごめん)非常に浅はかな考えだと思います。

95:92
01/09/01 14:47 KAOoJuUo
この場合、流すのは書込みメッセージだけですよね?
一周回って送ったメッセージが帰ってきたら完了

A ==> B ==> C ==> D ==> E
↑               |
+----------+

サーバーがある場合に比べて通信負荷が倍になるだけでは?
確かに、このリングを作るのにコストはかかりそうだけど・・・

96:デフォルトの名無しさん
01/09/01 14:51 AfE3XVcw
IPが漏れるという問題は、IPV6になったら解決されるのだろうか。
IPV6の世界って家電だろうが何だろうがグローバルにIPを振るというものだから、
そのへん考慮されていそうだが。
あまりに厨房なこといってたらスマソ。

97:デフォルトの名無しさん
01/09/01 14:53 yanE/TlI
バケツリレーは無理かぁ・・・

じゃぁ、読んだ書き込みはコピーって言うのはどうかな?
コピーかどうかが分からない以上、だれが書いたか不明ですから。
コピーを複数所有していれば確実ですね。

リクエストのほうの匿名性は・・・ 仕方ないかな・・・

98:デフォルトの名無しさん
01/09/01 16:13 oknLaLHw
>>97
>バケツリレーは無理かぁ・・・
そのスレの参加者(閲覧者)の間でメッセージをリレーするとすれば、ネットワークを流れる総データ量は
クライアント数×メッセージ量なので、局所化させない応答性を確保する、が肝じゃないのかな。

>>93
それバイアスかかってないか?
グヌテラのプロトコルはチャットを考えて設計されてないから、実装してはいけない
というならば理解できるが。

99:41
01/09/01 19:14 V0kaltcw
盛り上がってきたね、嬉しい。

>> 88

そうそう、そういう事っす。ありがとう。
ここいら辺は Freenet のパクリ。以下のページを参考にした。
URLリンク(www.sfc.wide.ad.jp)

>> 96

どうなんだろう??でもこんな記事が。
URLリンク(www.zdnet.co.jp)
IPレベルで匿名性を確保できるとすげー楽っすねぇ。


…んで、
新規投稿(書き込みだとスレの内容の意味のカキコと紛らわしいね、
これもごめん)をバケツリレーしたら、ネットワーク壊れるんじゃねーの?
というご意見多数ですが、

何で壊れる?というのが俺の意見。
遅延発生すんだろ!というのなら分かるけど…。

俺の案だと、「板ネットワーク」なるものを作っている。
これによって必要な所に必要なだけの新規投稿を送れるようになる(はず)。

しかし、ただの経路になったクライアントもネットワークに
組み込まれるわけだけど、もし、流通量が多くて
もうやってられませんわ!という事になれば、
その板ネットワークから抜け出せるようになっている。
URLリンク(www.geocities.co.jp)

無駄な新規投稿を経由さすのが嫌なら、抜け出しまくれば、減る。
抜けたら抜けたでネットワークは効率化するわけだし。
…でも、皆が皆、そういうことしちゃうと、
板参加者が推定しやすくなっちゃうから困っちゃうんだけど…。

もしかして、そういうことじゃない?

>> 86

>  ∧,,∧    / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
>  ミ,,゚Д゚彡 < アンタに、そう伝えてくれって、知らない奴に頼まれた…
>  ,;゙  ミ     \_____________
> ミ.  ミ
>/゛゛゛゛

カッコイイ

良かったら考えている基本的な土台を見てみたいッス。
俺の案だと板は全部同じ扱いしかできないし。

100:41
01/09/01 19:17 V0kaltcw
う…参照リンク失敗。すまん。 >>88 >>96 >>86 ナリ。

101:デフォルトの名無しさん
01/09/01 19:47 ig30BD5c
書き込みのバケツリレーなんてしたら1対1で直接ファイルをやりとりできるとい
うP2Pの性質が意味をなさないのでは?

同時多発的にあるスレに対する書き込みが発生してそれぞれ異なった版のスレが
あちこちに作られ、同期を取れない間にまたそれらのスレに書き込みが繰り返さ
れ、さらに版が拡散するんじゃないか?このことはどうやって回避するのだろう?

102:デフォルトの名無しさん
01/09/01 20:13 LzBeC2l.
------------------------------------------------------------------------
==2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数:62465人 発行日:2001/09/01

どもども、こんにちは、ひろゆきです。

先日のネタが予想以上に大騒ぎになってしまいまして、、、関係者の方々にはご迷惑をおかけしました。。申し訳ございませんです。URLリンク(dailynews.yahoo.co.jp)


8/31に2ch閉鎖という噂が流れていたので、それを逆手になにか面白いことをしようと思い、forSaleの画像をつくってもらって2chをオークションにかけたわけです。yahooオークションかビッダーズのどちらにしようかと迷ったんですが、
ビッダーズだと無料で出品できるので、ビッダーズでいいやぁとビッダーズを選んだわけです。URLリンク(www.bidders.co.jp)

実は、オークションに出品するのが初めてだったもんで、よく知らなかったんですが、ネタの出品は禁止されてるんですね。。。

ビッダーズさんには突然の負荷とネタ出品というご迷惑をかけてしまったようで、、、申し訳なかったです。ちなみに、URLリンク(www.writing-space.com)の企画ネタだろう?という話もあったようですが、単においらが思いつきでやっただけです。。。


さてさて、、、2ch縮小のお話ですが、、

サーバ屋さん(URLリンク(welcome.maido3.jp))が好意でサーバを提供してくれて、削除人さん、復帰屋さん、保管屋さんやユーザーさんの善意のおかげで無秩序に増加をし続けた2chでしたが、
規模が大きくなりすぎたため、好意だけで続けるにはコストが高すぎる状況になってしまいました。

そこで、ぽこぽこと掲示板を閉鎖したり、UNIX板の人たちの協力でスクリプトを更新したりと、2chを維持するコストを縮小しよう計画をしてました。

ある程度まで維持コストは下がりましたが、それでも、「誰かがお金を払う」ことで2chが成り立っていたという事実は変わりません。

そうすると、3種類の対策があります。
・広告スポンサーをつける <広告モデルが崩壊してるので厳しい。
・ユーザーが使用量を払う <面白くなくなる。
・法人化して金稼ぐ    <めんどくさい。未知数。
もちろん、2chを潰してしまって、日々の生活に戻るという選択肢もありますが、、、

ということで、今後、2chを残すためにどうすればいいいのかという話し合いをしてました。

現実的な路線としては、法人化してサーバ代を払えるような組織をつくるというところになりそうです。そうすると、今までの2chの行動原則の1つである「面白いことをしよう!」というのは崩れちゃうことになるでしょう。

「面白いかどうか?」という基準ではなく、「儲かるかどうか?」という基準で考えなければ、法人としてやっていけません。

だから、法人化するとしたら、儲かりもしないネタをやって、バカ騒ぎすることは出来なくなってしまうかもしれません。

たった2年間ではありましたが、自由で無責任でアホでどうしようもないけど、無駄に面白い場所というのはもう無くなってしまうかもしれません。そして、現在閉鎖した掲示板が復帰する予定についてもまだわかりません。

閉鎖した掲示板の住人だった人や、自由で馬鹿だった掲示板が好きだった人は、2chを去ってしまい、ほかのところでまた楽しくやっていくことだろうとは思います。

そして、今回のオークションネタは、ネタのわかる人たちへの最後の花向けと、ネタのわからない人たちを笑う最後の悪趣味な冗談だったわけです。

今後、2chがどうなっていくかはわかりませんが、世間を騒がせても笑ったものが勝ちという、生真面目な人をうけつけないアホな掲示板があったことは覚えててもらえるとうれしいです。

んじゃ!

──────────── 2ch-net─

P2Pでサーバに依存しない掲示板を作るみなさん、あなた方がポスト2chの本命の様です。 陰ながら応援します。頑張ってください。

103:デフォルトの名無しさん
01/09/01 21:49 baJQonXA
がんばってくださいage

104:デフォルトの名無しさん
01/09/01 21:49 ytvqUsmk
使命っすね。がんばらねば。

105:
01/09/01 21:54 9DvFkqOE
俺はがんばらない。別にお前のためにつくってるわけでもないし、使命だ
とおもって作ってるわけじゃない。作りたいから作るだけ。

106:デフォルトの名無しさん
01/09/01 22:09 oknLaLHw
>>101
>書き込みのバケツリレーなんてしたら1対1で直接ファイルをやりとりできるとい
>うP2Pの性質が意味をなさないのでは?
掲示版という性質上、全ての参加者が同一の情報を(少なくとも注目しているスレについては)
共有する必要があるので、新規カキコはリレーでおっけじゃないか?
閲覧のたびにスレのカキコデータを全部もらってくるのは、他の参加者の負荷が上がるので、
読んだものは自分で保持。

107:デフォルトの名無しさん
01/09/01 22:27 LzBeC2l.
>105
ごもっともです。
「エンジョイしてるかい?」に訂正。

108:デフォルトの名無しさん
01/09/01 22:31 RO5r5Hlo
ダサいの覚悟で言わせてくれ。
お前ら最高にかっこE Yo!
++LOVE

109:デフォルトの名無しさん
01/09/01 22:35 V3BM1p2g
>>106

>読んだものは自分で保持

ログの保存は。

1.自分で読んだもの
2.経由したもの

を、ユーザーの設定によって保存するってのはどうでしょうか?
また、容量制限も必要かもしれませんね。

110:
01/09/02 01:39 K265WADA
もれなくパケットを配布できる理想的なP2Pネットワークってどうよ?
URLリンク(www.geocities.co.jp)

っつーか、まだ出来てないんだけどね。明日は遊びに行くので、もう寝ます。

111:デフォルトの名無しさん
01/09/02 03:09 DPzwl.jk
新規にPeerがネットワークに入る動作ってどうやって考えるの?
やっぱ人間社会と同じく、こんな感じになるの?

【a.ハナからアヤしいヤツを蹴る場合】
新規Peer
 「ねーねー、キミってたしかxxサークルだったよね 入りたいんだけど」
新規Peerの知り合いの既存Peer
 「んー(お前の入るカラーじゃないんだけど・・・)ちょっと今無理かも」
新規Peer
 「そーなんだ。。。」

新規Peerの設定項目として、
「新規Peerの知り合いの既存Peer:知っているPeerの情報
 (設定項目名 MyDearFriends=URL:ProtocolVersion)」を設定しといて、
起動されたらその情報にしたがって初期ネゴシエーションを取る。

証明書みたいなのをやりとり(ベリサイン?)

MyDearFriendsが断ったらセッション終了

112:111
01/09/02 03:31 DPzwl.jk
【b.うまく加入できる場合】
新規Peer
 「ねーねー、キミってたしかxxサークルだったよね 入りたいんだけど」
新規Peerの知り合いの既存Peer
 「んー(まぁいいかな・・・)じゃあ、口キキしてやんよ。
  皆に言うときにいちいちめんどくさいから学生証のコピーくんない?」
新規Peer
 「あー、いいよ」
 
<<次の日>>
新規Peer
 「ねーねー、どうだった?」
新規Peerの知り合いの既存Peer ※過半数割れしたらここからが拒否になる
 「ああ、オマエ結構ウケよかったから、紹介してやんよ。
  この紙がサークルのみんなのプロフィールと連絡先な じゃこれで成立だ。」
新規Peer
 「?部室とか連れてってくれるんじゃないの?」
新規Peerの知り合いの既存Peer
 「ウチそういうのないの。
  その紙のプロフィールで面白そうだなと思ったヤツと連絡とりな。
  細かいことはそいつと決めてくれ 活動オンデマンドってヤツだな」
新規Peer
 「ふーん、なんかフリーメーソンみたいだね?」

新規Peerの設定項目として、
「新規Peerの知り合いの既存Peer:知っているPeerの情報
 (設定項目名 MyDearFriends=URL:ProtocolVersion)」を設定しといて、
起動されたらその情報にしたがって初期ネゴシエーションを取る。

証明書みたいなのをやりとり(ベリサイン?)

MyDearFriendsは動的変更可能な
     「このPeerは信用ならんから拒否するリスト(DenyList)」を持っていて、
 そのリスト上、そのPeerを信頼できると判断した場合、
今MyDearFriendsが認識しているPeer全てに証明書とPeer情報(URL)を送る。

今MyDearFriendsが認識しているPeer全てから、その新規Peerの受け入れ是非の回答がくる
(各々、MyDearFriendsがしたような判断を行う)

過半数が「いいよ」という場合、
MyDearFriendsは全Peerの情報
(PeerのURL(ミラー化を意識して、複数URL書けるようにする)+板名+スレ題+
 最新更新日付+PeerのURLの新規スレッド保持可能数)
の入ったパケットを
ルーティングするように動作する。

新規Peerはそのルーティング情報に、自分の情報を乗せて、ルーティングを行う。
(この場合、新規Peerが枝末端なので、MyDearFriendsにルーティングすることになる)
(乗せる情報は、自URL+板名はNULL+スレ題もNULL+最新更新日付もNULL+新規スレッド保持可能数)

113:デフォルトの名無しさん
01/09/02 04:26 CXtdfW8.
URLリンク(mentai.2ch.net)
なんか腹立つ

114:デフォルト
01/09/02 04:32 /l8QEjzU
URLリンク(www.openp2p.com)
URLリンク(www.exocortex.org)
見れば?

115:デフォルトの名無しさん
01/09/02 04:33 hNvXVfJg
とっくに意見が出てることだろうが、
どこに問い合わせても同じ結果を期待するような場合、P2Pは不向き。
P2Pでは情報が完全に失われてしまうケースも考えられる。
(↑こりゃCSだって有り得なくないけども)

116:デフォルトの名無しさん
01/09/02 04:45 hNvXVfJg
むしろプロキシのような、キャッシングを行うことを考えた方が
いいんじゃないかな。

DNSの例もあるけど、DNSよりは情報が大きいし。

現存のwww.2ch.netではアクセスの窓口機能だけのために、
アクセスしてきたIPを記録する。->IPTABLEとする
後からアクセスしてきた者はLAST_MODIFYを参考に、前にアクセスしてきた
IPにキャッシュの問い合わせを行う・・・

とか何とか。
そのようなキャッシュサービスを閲覧者に提供させるなら
プロクシの利用を推奨した方がマシかも知れない気がするけど。

117:デフォルトの名無しさん
01/09/02 05:06 DPzwl.jk
ふーむ・・・
そういえば生物はそういうのどうやってるんだろうか?
細胞ってすんごい数あるじゃないですか。

118:
01/09/02 07:46 uycLsX4E
>>116
URLリンク(piza2.2ch.net)
こちらへどうぞ。

119:デフォルトの名無しさん
01/09/02 17:18 52H90urY

ブロードキャストで聞けばいいんじゃないのかな。

新規Peer ブロードキャストで聞く。

既存Peer パケット聞いたら自分の既存コネクション数と勘案して返信をする。

新規Peer 返信が早かったやつから、いくつかにコネクションを張る。

でネットワークへの参加じゃだめかな?

120:
01/09/02 17:30 uycLsX4E
インターネット全体にブロードキャストするつもりですか。

121:デフォルトの名無しさん
01/09/02 18:07 52H90urY
>>120

自分のサブネットじゃだめかな?

122:デフォルトの名無しさん
01/09/02 18:08 52H90urY
自己レス

>>121

まて・・・ それじゃ、サブネットから出れないじゃないか・・・

グヌテラとかどうやってんの?

123:
01/09/02 18:16 uycLsX4E
URLリンク(www.jnutella.org)
PONGパケットを聞いてればいいよ

124:
01/09/02 19:27 AfXiH6sI
まず、Gnutellaとフリーネットをきちんと理解したほうが良い人が
おおぜいいますね。

125:デフォルト
01/09/02 21:22 /l8QEjzU
>>122
host catcherの話か?
んなもん、初期状態ではどこかのボラ君がWebサイトに
置いておいたリスト取ってきて食わせて、そのリストの
サイト群にコネクトトライして、接続に成功したらがし
がし現在接続しているノードの情報が入ってくるから、
それを覚えておいて、次回からはそのリストを使うとか
いうのが素状態だが、最近、もっと洗練した方法でスタ
ートするサーバントが出たな。

126:デフォルトの名無しさん
01/09/02 23:32 5zxU1VI2
そいや、freenet 上に Wiki とか掲示板(Message Board)らしき
ものが出てきてますね。ためしてまないけど。

127:名無し
01/09/02 23:58 5ndlHDsk
P2Pの事はこの辺で調べてきてね。

URLリンク(www.jnutella.org)

128:
01/09/03 00:12 hbfMC5V.
>>127
マルチポストうざい。

129:
01/09/03 06:40 hbfMC5V.
小さなプログラムを作って、パケットがどの程度届くかテストしています。

理論はよくわからないのですが、Gnutellaの標準設定である(?)TTL=7,
接続数4というのは、非常にうまく動きます。これ以下にすると、パケット
はどんどん届かなくなるようです。

この設定でノードを5000個用意し、P2Pネットワークを作ります。
あるノードからpingを打ってみると、平均すると1.5人に届きません。何度
実験してみても、これ以下のノード数ならば、ほぼ100%の確率で届きま
す。 面白いね~。

URLリンク(www.geocities.co.jp)

130:_
01/09/03 11:04 Cbh2f2Vw
面白そうなので、私も参加。

個人的に試行錯誤しながら作っている p2p チャットがあるんだけど、もし良かったら参
考にしてちょ。

このシステムは Gnutella のプロトコルと IRC のチャンネルの概念を応用している。
ネットワークレイヤー的には Gnutella ネットワークの上に、チャンネルネットワークが
ある感じ。Gnutella プロトコルの役割は自分が参加したいチャンネルを探すのに使う。
例えば「会話中に"マンガ"が含まれるチャンネル」とか「チャンネルの説明に"pc"が含ま
れるチャンネル」などのようにして検索を行う。

参加したいチャンネル(例えば A チャンネル)が見つかったら、Gnutella ネットワーク
を維持したまま、それとは独立した A チャンネルネットワークに接続する。Gnutella ネ
ットワークに比べて A チャンネルネットワークは参加ノード数が遙かに小さいので(見
渡し可能な範囲を期待)、そこでは会話をリレーしてもそれほど問題はない。で、実際に
は参加時に A チャンネルの参加ノードの情報を引き出して、ネットワークが分断された
ときにはそれを用いてきちんと直す仕組みなっている。

2ch p2p の匿名性の参考にはならないかもしれないけど、多層構造という観点から、なん
らかの参考になれば、これ幸い。

131:
01/09/03 16:06 qqnGSLcE
じゃくすたによるチャットの実装。
URLリンク(www.clip2.com)

Clip2ってウリに出てるのね。2ちゃんねるみたい…

132:41
01/09/03 18:31 D/ojRdQI
今ごろ気づいたんだけど、
URLリンク(www.geocities.co.jp)


>次の匿名性は守られない。
>カキコの作者のIPアドレスは、プロクシノードに伝わるが、すぐに忘れる。

は、いくつかノードを挟めば解決するね。つまり、
隣りの奴に頼むんじゃなくて、隣りの隣りぐらいに頼む。
これも伝聞形式で行えば、誰が犯人かはわからんね。
個人用完全匿名プロクシの誕生なり。

んで、応用。
あるノードと通信したいなぁ…と思ったら、まずこの仕組みで
プロクシを作って、プロクシ経由で接続出来るのはもちろん、
誰かに通信して貰いたいなぁ…と思ったら、やっぱりプロクシを作って、
プロクシノードのIPと経路ID(頼みのメッセージを送った経路)を
晒してもらえばOK!
晒されたIPはほとんどの場合、無罪(ただのパシリなんです…)。

つまり、この仕組みで、今IPで直接繋いでいるようなところに
匿名性を追加できる(いくつかのノードを通す無駄はあるけど)。

これに >>130 みたいな仕組みを組み合わせてやれば、
結構良さそうな感じなんだけど、どうよ?

133:41
01/09/03 18:32 D/ojRdQI
あ、>>130 の「独立した A チャンネルネットワークに接続する」は無理だけど。
経路の情報が必要だから。基本ネットワーク上に、もいっこネットワークって感じ。

134:
01/09/03 20:09 qqnGSLcE
>>132
多段にするには、その段数をTTLとしたカキコ発行依頼のパケットを
渡すことになるだろう。 もし、段数を2としたら、TTL=2のパケットが渡
された時点で、渡した奴が作者であると判明してしまう。じゃぁ発行時
のTTLを1-4のランダムにしてみよう。でもTTL=4のパケットが来たら、
それを持ってきた奴が犯人(w。だめだな。

じゃぁ、「渡されてきたカキコ発行依頼は、確率50%の確率で隣の
ノードにリレー依頼。確率50%で、自らネットワークにカキコ」。おっ、
これはうまくいきそうじゃないか?

匿名性を重視するあまりあまりリレーしたら、書き込みが正しく実行さ
れない可能性も増えるし、 ノードに伝わるまでにも時間がかかる。それ
にネットワークがパケットだらけになり、実用性ゼロになるのが恐い。

カキコの依頼にしても、ノード間通信にしても、 プロクシを利用するか
どうか、それを多段にするかどうかは効率とのトレードオフなので、掲示
板毎のポリシーで設定可能にするべきだな。

135:74
01/09/03 20:21 ewvSMjxY
それにしてもなんか、下手に分散考えても、単にめんどくさいだけのような気もしてきた。
結局、自動的にミラーを利用出来たり、オリジナルサーバに事故があっても、
自動的に適当な場所へ避難して、ログを補完しながら話を続けられる仕組みを
提供できればいいだけかもしれない。
ログの補完についてはこれまで考えてきたようにP2Pの十八番だよね。

ということで、スレッド本体はどうにでもというか、書き込みは制御するなり、
フリーポストのニュースなり、いろんな方式で実装出来るようにしたい。
既存の資源を流用できるようにするのもいいと思う。WWWがgopher利用したように。
例えば、(2chを含む)既存の掲示板がそのまま使えるようにするとか、
CMTフォーマット辺りに対応するのが楽かも。

問題は、板(カテゴリ)をどうやって実現するかだろうなあ。
というか誰が分類決めるんだって感じ。
とりあえず、スレッド(掲示板)ブックマークの階層を板とみなして、
それを共有できる仕組みが欲しいかも?
めんどくさい人はどっかのボーダルの階層を
そのままミラーしてきて使うということで。
つまり、スレ立てをブックマークで代用するって感じ。

136:
01/09/03 20:27 qqnGSLcE
>板(カテゴリ)をどうやって実現するかだろうなあ。

誰でも勝手に板を作れる。僕は実際に運営する気はないから、板の名
前を2ch_newsとか、2ch_techとかどんどん増やしていけばいいんじゃ
ないの? 人は、人が沢山いるところに居たがるから、自然に集合する。

137:デフォルトの名無しさん
01/09/03 20:37 ewvSMjxY
>>136
いや、勝手に板を作るのはかまわないんだけど、
それをどうやって知るのかって話。
誰も知らなければ誰も来ないだろうし。

スレッドが乱立してるのは板を見ればすぐ分かるけど
板が乱立してるのは何処で知る訳?

138:
01/09/04 14:00 elQM4lgY
>>135 の発言がよく理解できない。

139:
01/09/04 15:18 elQM4lgY
URLリンク(www.geocities.co.jp)
の実験5のところ見てください。多分、既に研究されていることだと思うのですが、僕は
わからないし、調べても見つからなかったので、自分で試してみました。

TTL=7にして、書き込みをブロードキャスト(Gnutellaのpingみたいに)する
と、ノードが増えるとパケットの量が爆発してネットワークが破綻することが
推測されます。ですから、書き込みはTTL=2か3(あるいは>>134)のように
50%の確率でリレー)させて、そこから先は、>>78で書いたように検索による
同期が現実的ではないかと考えました。

140:名無し
01/09/04 23:43 kGOfYCnQ
>>139
Gnutellaのネットワークって、閉路があるんですか?

141:
01/09/05 00:41 4dci715k
エージェント技術を利用した匿名通信に関する研究
URLリンク(grampus.jaist.ac.jp:8080)

もっと詳しく知りたいね。おやすみなさい。

142:135
01/09/05 02:13 xYlzWZ2A
>>139
要は、4の7乗が幾つかって話じゃないかな?不幸の手紙の法則だなあ。(w
タイムラグを考えると、接続数(配信先)を増やすべきかも。
でも、帯域制限したら却って掛かるのかも?
ttl=3、接続=20でやるとどうなるかな?
つうか、ランダムだと一緒かな?

基本的には>>130のように、検索用のネットと配信用のネットは
別にというか、多重化したほうがいい様な気がするなあ

で、問題なのはやっぱり>>137の話。
スレッドの存在がわからないと仕方がない。
が、たとえば2chの現行のすべてのスレッドをキャッシュしようとすると
1だけでも、かなりの容量になるんだよなあ。
せいぜい共通で持つのは、板リストが限度かな?
板の存在が分かれば、その板のスレ情報ネットに参加してるサーバンドを
検索用ネットから探してスレッドリストを取り寄せるとかね。
ぶら下がりたいスレが見つかったら、情報ネットでリクエストすると
受け入れ可能なところが応答するって感じで。

えっと、>>135で分からないのはどの辺でしょうか?

143:
01/09/05 02:37 4dci715k
寝たはず。
>>132さんのサジェスチョンによって書いた>>134 ですが、ウェブに載せ
ました。
URLリンク(www.geocities.co.jp)
その後だらだら文献を読んでいたら、
Crowds URLリンク(www.research.att.com)
が同じ事をウェブのブラウジングの匿名性確保でやっているみたいでした。

>多重化したほうがいい様な気がするなあ

根拠は? 結局、「気がするなぁ」では、議論は進まないと思うよ。

えーと、私の考えでは、板毎、スレッド毎に参加者を部分的に把握します
ので、ご指摘の問題は発生しないように思います。

>>135は、正直、読めるけど、意味を理解できない。

144:142 ◆3ES7Ejyo
01/09/05 10:29 xYlzWZ2A
起きました。(w

部分的に把握することに異論はありません、それこそ多重化そのものです。

えっと、問題にしてるのは、何が知りたいのか分からないと、応答のしようがないって事です。
#理解出来ないと言われても、具体的な箇所が分からないと、それこそ話が進まないので。
そもそも何も分からなければ問い合わせもできません、>>137の繰り返しですが。
結局外部の仕組みに依存する事になります。
つまり、それでは単に、P2Pで匿名インスタントメッセンジャーを作ろう
って話でしかない訳です。

そこで、メタな層で、全体を把握するものがあれば、掲示板として使えるようになる。
どうせなら、既存のリソースにも対応して欲しい。というのが>>135の話です。

多重化すれば、届いた情報を手がかりにして、芋蔓式に情報源に近づく事が出来ます。
上の層は、概略情報だけなので、広範囲でも転送量を抑える事が出来ます。
というのが>>142の概略ですね。

145:
01/09/05 13:47 U0JJGxMY
手捨てす

146: かける?
01/09/05 13:48 U0JJGxMY
かける?かな?>>144は、まず既存のP2Pを学習しる!
それから、IDつけるのは、なにか?貢献でもしたつもりか。

147: 
01/09/05 14:09 YuXfYYEI
IDではなくトリップな

148:別スレ別板門外漢
01/09/06 15:25 7XfDzD9g
一人やたら威張り散らしているのがいるけど、人を攻撃してそんなに気持ちいいか?
カルシュウム足りてる?

149:デフォルトの名無しさん
01/09/06 15:36 vbslDp7I
誰が誰を攻撃してるのかサパーリわからん。
ここは公開レビュー場みたいなもんだから、PG的常識からすれば
指摘や文句は「攻撃」とは受けとらんよ。
門外漢がCantyGuyして騒ぐな。

150:デフォルトの名無しさん
01/09/06 16:46 Ei9OE/Mg
部外者ですが質問いいでしょうか?
常時接続じゃないとP2Pには参加できないのでしょうか?

151:
01/09/06 17:40 pb2JgITk
常時接続じゃなくても参加できるのがP2Pネットワークのいいところだと思うがどうか。

152:デフォルトの名無しさん
01/09/06 17:54 GplbhMAg
そう。ここは2ちゃんねる。カキコの中身だけがすべて。おまえが一番
ウザイ。>>148

Gnutellaクローンは、自分のノードの接続速度の情報(モデムの種類とか)
を他に知らせることで、ネットワークを最適化(遅い奴ははしっこ)に置く
よ。トポロジの中心に速いノードがいたほうが、全体の効率は良くなるわ
けで。これはハイブリッドP2Pの板でも話されていたし、Gnutellaの技術
ページにも、解説があった、URLは張れぬ。

常時接続かどうかの情報を送るかどうかは、覚えてないな。常時接続が
中心にいたほうが、いいかな?

153:デフォルトの名無しさん
01/09/06 17:58 x54XUUQc
>>152
 常時かどうかっていうだけでなく、いつごろ接続を切りそうかの
見込み有効期限を送信するようになってると、常時じゃなくても
比較的安心して使えないかな。
 ダイヤルアップで不安定なら1分とかそういう表明によって外から
警戒させるとか。

154:
01/09/06 18:05 GplbhMAg
あごめん、ネットワークの最適化の基準は、モデムの接続速度じゃなく
て、実際の通信速度から割り出されたQoSを基準とするのだったかも。
勉強したの結構前だから忘れた。

これだと、騙れないからね。 >>153の「ちょこっとユーザ」はなかなか面白
いと思うけれども、絶対に速い中心に接続したくて、ウソつく奴が出てくる
と思うなり。

155:
01/09/06 18:25 pb2JgITk
>>154
ウソをつくと処理が追いつかなくてパケットの海におぼれてしまうよ。

156:144
01/09/06 19:27 FyAEcYDI
とりあえず書いてる間に説明されてしまいましたが、ついでなので
私も理解している範囲で説明してみます。間違ってたら指摘宜しく。

>>150
ここではサーバーに依存しないことが、P2Pにする目的の1つであると思うので、
常時接続でなくても問題ないようにするべきだと思います。
誰かががオフラインだと問題になるようなものであれば、そのシステムは
ソレに依存していると言う事じゃないでしょうか?

P2Pとはピア・ツー・ピアの略で、言ってみればどこでもドアみたいなものだと思います。
だから、その(ネット上の)世界に居ないものには会いに行けません。
しかし、誰か影武者(コピー)が居れば、それに会いに行くことはできます。

つまり、自分の持っている情報を、だれかにキャッシュしてもらえば、
どちらかがオフラインでも、他の人はその情報にアクセス出来ます。

しかし、その情報の在り処が分からなければ、アクセスのしようがないです。
その解決には、名称等により、他に問い合わせをするという方法があります。
その為にはネットワークが必要です。ただ、参加が多くなるにつれて
問い合わせの量も多くなり、うまくネットワークを構成しないと、
渋滞が起こってマヒしてしまう訳です。
また、誰かにキャッシュされるのを待っていては、いつまでたっても参照されなくて
ふと誰かが気づいた時には、どこにもなくなっていた。ってことがあります。
これが頻繁に起きてしまうなら、掲示板としては問題がありますね。

それで、最初の話に戻りますが、常時接続でなくても問題がないようにするには、
誰かに、もしもの時の事を頼めるようにすればいいんじゃないでしょうか?
つまり、自分が居ない時に、代わりをやってもらえる影武者の様な仕組み
を作ればいいんだと思います。
もしくは、はじめから何人かが集まって、小規模な同期式ネットワークを作り
それを常設の仮想サーバンドとして扱うという方法もありますね。
そうすれば、自分の情報は、即座に仲間に共有されますから、
仲間が全滅しない限り、消える事はないと思います。

157:
01/09/07 17:16
長くて読めないよ…

158:41
01/09/07 17:21
プロクシの仕組みが出来たんで、スレッド別に
ネットワーク組みたいなぁと考えてます。

>>139
新規投稿は少なくともこのスレッド別のネットワークには
ブロードキャストした方がいいと思います。
ネットワーク全体、また板別のネットワークに流すのは
確かに無駄でした。

んで、待ってれば貰えるんだから待ってろ!という仕組みにしないと
最新のカキコを求める人々が検索メッセージを大量に発行するかと
想像します。(『リロード! リロード! リロード!…』)

159:デフォルトの名無しさん
01/09/07 17:26
>>158
いろいろと書いているみたいだけれど、Gnutellaなりフリーネットなりの
仕組みをまず勉強してみたら?自分が的外れなことを言っていることが
分かると思うよ。

160:41
01/09/07 23:48
>>159
う?全部ファイル交換型P2Pの仕組みの中でやりたいのか?

GnutellaやFreenetというか、どちらかというと、
匿名性を保ったままCHATシステムを作る方向で
書いたのだが…。

ファイル交換型P2Pはスレッドのストックには便利だが、
リアルタイムで情報を交換し合うようなのには向かん。
この2つを組み合わせることが肝要なり。

つまり、書き込み&スレッドを読んでいる人への配信は
CHATシステムの中で行われ、書き込みのないスレッドの
読み込み&保存はファイル交換型P2Pの仕組みで行われる。
的外れ?

161:156
01/09/08 00:12
>>158
同感です。とりあえずいい加減にまとめると、
「今欲しい」っていう人には、そのスレのネットワークに参加する事で
検索リクエストではなく、新着メッセージそのものなり、概略が送られてくるほうが
効率的で、メッセージロストの可能性も低くなる。
但し、途中でトラブルがあった場合にそれを検知する仕組みが必要。
統一番号、又は、しり取り方式で、合わなかったときにその番号や時間の範囲の
メッセージを参加者の誰かにリクエストする、過去ログも同様。

スレ単位とはいえ、見てる人が多くなってネットワークの規模が大きくなると、
果たしてうまく機能するかって懸念がある。結局、無駄を省くことが必要。
それにはある程度ネットワークを構造的なものにしないと難しいか?。
これは既存のP2Pでも考えられている所か?。

まあ先程から皆さん主にそれを煮詰める話をしているのに、
私だけ板より上の話をしていて、先走り過ぎていたかも?
でも、そのスレや板(のネットワーク)の存在を知らないと、誰も参加できない訳で
ここら辺の仕組みを、無駄な問い合わせは極力避ける形で、うまく実装しないと、
電子会議にはなんとかなりますが、掲示板としては使いにくいと思うんですよね。
まあ有力な方法があれば、とっくに解決してるとは思いますが。

>>159
139氏のように、調べてもわからなかったって人は、他にも大勢いると思うので、
あなたの持っている知識を是非ここで共有させてはくれませんか?

もし既出で埋もれているならば、その発言番号を提示してもらえばわかりやすいと思います。

162:
01/09/08 00:31
The Grid P2P Topology Protocol
URLリンク(www.exocortex.org)

のプログラムを作ったから見てみてよ。
URLリンク(www.geocities.co.jp)

えーと、思いて学ばざれば、すなわち危うし。

163:AHO ◆lAHOGEL6
01/09/08 13:24
>>161 あとはプログラマさん同士でやるみたいだから
ちょっと黙っててチョ。おめーさんのせいで議論が見えづらくなるわ
スレが荒れるわ、してるのをいい加減気づいとけ。

164:
01/09/09 23:18
>>162 のプログラムを改良しました。

Gridプロトコルそのものも改良し、勝手にワープするノードを付け加える
ことで、遠くのノードにすばやくパケットを伝達させるようにしました。 パ
ケットがうにうに動くところが見れて楽しいので、動かしてみれば面白い
よ。

この方法はランダムなノードと接続を作るよりも、ずっとブロードキ
ャストの際の効率が良いので、破綻しにくい。

これからどのくらい効率がよいのか、比較しようと思ったけどもう今日は
終わりにする。

165:デフォルトの名無しさん
01/09/10 00:15
疑問。
キャップ★やトリップ◆みたいな本人だという証明はP2Pでも出来る?

166:デフォルトの名無しさん
01/09/10 00:47
PGPやGPGで署名すればオッケー。
署名は本文内でもヘッダー内でも可。
この方法はRFCのInternetMessageならなんでも使えるはず。

167:
01/09/11 23:44
非常時につながらないcnn.com
非常時につながらない2ch.net

もういっぱいいっぱいだね…

168:デフォルトの名無しさん
01/09/12 08:36
>>162
それってスキップリストと同じ考え方だね。全接続ノードが2^nのときに
nビットまでのランダムなスキップ接続つくれば早いってことか。
1次元じゃないから単純に比較できないけど。

169:
01/09/15 19:28
テロ事件を見ながら考えていたのだが、

Gridにすれば、書き込みをブロードキャストしてもいいんじゃないかな。
なぜなら冗長性がすごく低いから。 逆に低すぎて、パケットが届かない
可能性もあるから、 同時に2つの同じグリッドにバックアップとして参加
する形で冗長性を持たせる。

170:
01/09/21 18:40
やっと3連休だYO! age

171:デフォルトの名無しさん
01/09/23 22:26
保存あげ

172:
01/09/24 22:12
Gridとぽろじは、ワープノードの間隔をうまく設定できれば(ノード数が増えたら、間隔を伸ばす)
、効率がとてもよくなる。あと、自分達で東西南北のノードを構成するためのプロトコルが必要
になるので、そのぶんだけ実装が少し複雑になる。

実際に流れるパケットの量を測ってみたけれど、やっぱり冗長性が全然ないのでパケットをブロ
ードキャスト出来ることにします。ただ、途中のノードが落ちたり、流すべきパケットを流さなかっ
た場合に、きちんと流れないという現象が起きるので、>>169のように同時に二つの空間をもつこ
とを考えておこう。

これで、パケットのルーティング部分はクリアになります。自分でも忘れそうなので仕様書かきま
すね。はい。 じゃーまた来週。

173:デフォルトの名無しさん
01/09/25 19:49
トポロジにはどんな種類があるんすか?

スター型、ハブ型、グリッド型ぐらいしか知らんのだけど・・・

冗長性、効率、速度とかからいくつかの候補が有った方が良いかも・・・

174:
01/09/30 10:06
2ちゃんねるの運営者や、その次世代を狙う連中は、金に目がくらんでいますね。

Gridの仕様書、昨日はここまで書きました。途中でダウン。
今日は遊びに行ってきまーす。

URLリンク(www.geocities.co.jp)

175:
01/10/05 23:40
はい。3連休です。

>>173
トポロジにはおおきくわけて、バス型、リング型、スター型があって…、あとは教科書を読んでね。

P2Pに何が良いのか、P2P型掲示板に何が良いのかは、僕もよくわからないが、Grid型は直感的に
イケると思ってるYO!

176:デフォルトの名無しさん
01/10/11 11:28
・・一カ月経った。

同報ネットワークのシミュレーション研究は面白そうだけれど、
どうせなら実際に落書きして試したいな。

プログラマさんたちの仕事は進んだのかな?
連休明けたし報告楽しみです。

とりあえずこの一カ月でパールを少し覚えたので
真珠のネックレスを思案中、気分はwikiって感じかな?。
#まあ単に思いついただけでまとまってもいないけど(w

177:ネジ
01/10/11 21:32
既出かもしれませんが…
URLリンク(127.0.0.1:8081)
(要Freenet)

Freenetを利用した掲示板システムのベータが配布されてます。
これ参考になるでしょうか?

178:
01/10/12 19:07
おす。

実際に試したい。漏れも漏れも。でもまだ掲示板までたどり着かないよ。
ハイブリッドP2Pはもう動いているみたいだよ。

Gridプロトコルは出来たんだけど、考えているうちにどんどん難しくなっちゃって、実装するのが
めんどくさいような気がするんだよね。特に、自己組織化するところ。効率のよさばかり。
ちょっと一度ばらしてもうすこし馬鹿仕様に考え直す。

179:かごめかごめ
01/10/13 13:03
>>178
そんなに難しいかな?
基本的に自分の近所四軒は把握しているだよね?
で、南が空き地で、今まで北からきた回覧板はそこを通り抜けて届けていた。
今度新しい人が引っ越してきて、挨拶したとする。
そこで、空き地と彼の南を教えて、これからは代わりに届けてもらうようにする。
それから、自分の東西を紹介。
新しい人はその2人に南は誰?と聞く。
紹介されたのが彼の東西になるので連絡をとる。

そういう話でないの?

180:
01/10/13 13:53
URLリンク(www.geocities.co.jp)
ページの最後のほうの赤いところ。多分君の言っていることはここだよね。

疑問: Dの東が空白、Fの西が空白が同じ位置であることを認識するには、A,B,CまたはG,H,I
のノードが存在する必要がある。もっと遠回りすれば可能?

勝手にノードをつなげて行くと、同じ位置に二つ以上のノードが存在してしまうことになる。
(1)それを許容しない。探索パケットがどんなに遠回りしても、グリッドをきちんと並べる。

(2)一つの位置に複数のノードが存在することを許容する。
「位置」といっても、別に物理的な位置があるわけではなく、パケットが流れればそれで十分
なわけで。上のページで言えば、E1とE2を作って、他のノードはそれぞれと同じ方向で接続
する。

(3) ジム行ってくる。

181:かごめかごめ
01/10/13 14:53
空き地だった場合にどうやって向こうを知るかと言うことなんだけど、
発信源を原点とした座標アドレスを持つのが手っとり早いんじゃないかな?
TTLと一緒にアドレスを計算すれば、もし空き地の向こうからきたパケットがあれば
すぐに分かると思う。分かったら空き地を飛び越して流してやればいいんじゃない?

というか座標が無いとすると、ワープノードていうのはどうやって一定間隔に配置するの?

182:
01/10/16 01:12
>>181
座標を自己組織化に利用するかどうかはおいておいたとしても、座標をもつことによるデメリットを
指摘できないですね。少し考えてみます。

>ワープノードていうのはどうやって一定間隔に配置するの?
ワープノード探索パケット(一つの方向に直進する)を東西南北4方向に投げて、TTL=0なパケットを
受け取ったノードが、パケットを発行したノードとお互いにワープノードの関係になる。

183:デフォルトの名無しさん
01/10/16 10:27
ここのスレが荒んでるのは机上の空論が横行してるからじゃないかと思ふ。

184:熱さ忘れてすっかり寒くなったなあ
01/10/26 13:02
荒んでるというより寂れてるな。

問題は実装して検証する人が居ないこと
php板あたりから援軍募集したほうがいいのだろうか?
何かつまってる事があって出来ない&様子見なら
言えばいいのにと思う。
まあ単にみんな喉元過ぎて忘れただけだと思うが
それとも避難すれば済むから別にいいってことなのか?

机上の理論はないよりあったほうがいいんじゃないか?
最近はそれすら少ない。
採用するかしないかは実装者が決めればいい。
それに不満ならソース公開してもらってパッチあてればいいと思う
どっちがいいかは評価次第じゃないかな?
なんか、物がでないと、学生のレポートか、誰かの飯の種を
みんなで無償で手伝ってただけみたいな感じがして良い気分はしない。
感謝されるわけでもないし。
あと、違う事を言えば黙っててと言われるのでは
誰も発言しなくなるのではないだろうか?
間違ってると思う箇所があるのなら訂正しながら構わず話を進めればいいのに

185:
01/10/26 13:30
ちゃんと作ってるよ。もし興味があるなら、気を長くして待っててくれ。っていうか、
君も作れば?

別に感謝されたいわけでもなんでもなくて、ただ自分が作りたいから作ってる
だけなんだけど、それじゃ駄目なのかな。

186:2chはノリが一番
01/10/26 14:19
>>185
いや、そろそろ首が疲れてきたんで、そういう頼もしい声を聞きたかっただけ。
全然発言ないのでみんな止めてしまったのかと思った。
他はどうなんだろうか?

感謝っていうのは案を出す方に対してね。
興味があって、実現に協力したいと思うから、なんかしら案を出すわけで、
別に困ってる本人から感謝とか尊敬されたい訳ではないって事。
もっとも既知の取るに足らない案ばかりかもしれないけどね。

とにかくたまにはスレに誰か出て来ないと盛り上がらないと思うのよ。
当たり前の話だけど。

まあ、そんな時間があったら作ってるって人が多いとは思うんだけど。
ちょっと寂れすぎかなって気がした。

187:ネタ提供?
01/11/07 14:14
Ring型っぽいプロトコルが URLリンク(pdos.lcs.mit.edu) にあるのを発見。
まだ読んでないけど。既出だったらすまぬ。

188:1を読まずにカキコ
01/11/15 19:26
保守カキコ

189:デフォルトの名無しさん
01/11/16 17:50
age

考えるに、こいつの一番の問題点は、効率のいい伝送方式より
何より、ログが改竄されてないという保証が出来るかどうか、
という事じゃないかなぁ。2ch はこういうトコだし。

例えば、ネットワークにクライアントが2台しか参加していない
として、片方のログをくれ、という要求にもう片方が改竄ログを
渡した時、それを改竄されたものだと見破れるか?

190:
01/11/16 18:05
ageてくれてありがとう。週末だけですが、こつこつ作っています。

>>189
別のルートから同じ書き込みを取り寄せて比較する。

191:
01/11/16 18:06
ごめん。これは2台だけでは成立しないかもね。

192:デフォルトの名無しさん
01/11/16 20:09
hashでも生成して複数照合して、ひとつでも違いがあったら
2chから取り直して違いがなくなるようにする手順でも入れるとか…

ってややこしくなりそうだし、わざとでたらめなもの流して
結果的にDDoS起こすこともできそうだなあ。

193:192
01/11/16 20:10
ってスマソ。ひさしぶりに見たので勘違い
2chのキャッシュの話じゃなかったか

194:デフォルトの名無しさん
01/11/17 05:48
>ログ改竄
発言者が、公開鍵と発言内容の束を送信するようにすればいいんでない?
毎回、公開鍵を送信するのは効率が悪いけど・・・・

195:デフォルトの名無しさん
01/11/17 06:25
Rubyで書いてください。
Rubyのもの以外は認めません。

196:デフォルトの名無しさん
01/11/21 17:47
定期age

197:デフォルトの名無しさん
01/11/21 18:24
只今秘密兵器開発中。
我推量約一ヵ月乃至一ヶ月半後報告可能。

198:masato
01/11/24 10:31
一ヶ月半か!ま 待ちましょう
一ヶ月半ですね?いいですとも!
俺は待つぞ!

199:デフォルトの名無しさん
01/12/02 02:20
なんかNNTPの話が一気に進展してるね。

200:
01/12/13 04:35
もしかするとみんな忘れてしまったのかもしれないのですが、
密かに作っています。GUIは2ちゃんねるを模倣しているので、
2ちゃんねるの研究をしています。2ちゃんねるってよく出来ていますね。

>>197 競争ですね。

201:デフォルトの名無しさん
01/12/13 06:18
>197 >200 に激しく期待ヽ(`Д´)ノ

202:デフォルトの名無しさん
01/12/13 09:08
>>200
オープンソースでなくていいけど
仕様はぜひ公開してほしい。。

203:デフォルトの名無しさん
01/12/17 16:48
進捗状況報告期待age

204:デフォルトの名無しさん
01/12/17 17:27
管理不能である以上P2Pにするのは無意味だと思うが。
P2Pが何かわかってるのか? ネタ?

205:デフォルトの名無しさん
01/12/17 20:23
どうでもいいけどクライアントが経路を学習
したしする必要は無いのか?

206:デフォルトの名無しさん
01/12/21 01:17
管理不能・・・だからいいんじゃん・・・ヒヒヒ

207: 
01/12/22 20:06
それで、本当に動くんでしょうか。

Vojta計画
スレリンク(esite板)

208: 
01/12/22 22:56
やっとこさウェブサイトを用意して初めのバージョンをアップロードできたのです。
似たようなシステムを作っている人はおそらくいると思います。

共通の問題としては、
(1)入り口になるウェブサイトの問題とか、
(2)どこにどんな板があるのかを検索(?)する問題とか、
(3)相互接続とか、

そういう問題があるのだと思います。

209:デフォルトの名無しさん
01/12/22 23:10
>>207
とりあえずJERをダウンロードして、インストールしようとしたら
なぜか、インストールできなかったので、でかいJDKのダウンロードに
チャレンジ中です。

210: 
01/12/22 23:19
>>209
あぁローカルでうまく動いたら接続実験しましょうよ。
LANでしか試してないんですよ。

2ちゃんねるはいつかそのうちなくなるか、形を変えてしまうと思うんですよね。
そのときのために今から代替掲示板を作っておかねばならないと思います。

211:デフォルトの名無しさん
01/12/23 00:57
とりあえずVojtaのインストール完了。
でも、データベースのイニシャライズをやってもステータスがエラーと
表示されている。
うまく動いているか、わからない。
--------------------------
Status
status:ERROR
Menu
Initialize database
Compact database

212:204
01/12/23 01:57
>>206
誰もが好きなように改竄可能な、万人が管理人の掲示板なんて誰も欲しがらない
だろうという意味なんだけど。最も単純なP2P掲示板のイメージって、WinMXとか
のようなサービスでテクストファイルだけ共有して投稿者名/投稿題名あるいは
キーワードをadvertiseするという形だと思うがこれであってるか? あるいは独自
のルーティング機構を備えた簡易HTTPサーバみたいな物か。

いやしくも掲示板を名乗るなら、投稿にレスを付け、さらにレスを付ける、という連鎖が必要
だろ。でなきゃ単なる個々人のてんでばらばらな意見表明の集積にすぎないからね。そのた
めには連鎖的なデジタル署名もくっつけてやらなきゃならない。インターネット上にHTML
ファイルを皆が勝手に置いて、検索エンジンで検索して運が良かったらそのHTMLファイル
を誰か見るわけだが、それと同じことを専用クライアントでやっても意味ねぇし。そんな
ツールを進んで起動しっぱなしにして帯域消費させる馬鹿が(動画その他の交換という用途
を除いて)そうそういるとも思えないしね。
で、さらに書くと、迷惑メールと同様の商業的なデータの入力を遮断する手段が無いって
のが一番の問題だな。ブラックリストを共有するのも有りだが、そのブラックリスト自体
の正当性を担保する手段が無い。単に掲示板をブラウズしたいだけの人間が、自分でセ
キュリティ管理もやんなきゃなんなくなるってのは割に合わない。

以上に答えられる奴はこのスレにいるか?

213:名無し
01/12/23 02:39
>>212
このスレは2ch危機のときに立ったスレだからねぇ。
帯域問題に対する2ちゃねらの解がP2Pだったんでは?

214:
01/12/23 04:57
おはようございます。そうでした。データベースにはODBCを利用しているので、
ODBC関連のセットアップが行われていないとダメかもです。特別なドライバを
用意する必要はないです。

215:
01/12/23 05:00
>>215
長くて読めないです…過去ログ読みました?

216:デフォルトの名無しさん
01/12/23 05:10
>>215
いきなり自問自答をぶつけられても…。

217:
01/12/23 05:15
あぁ。ねぼけてたんですかね。

>>211
vojta0901aフォルダのインストールする場所によって、必要なファイルを見つけられずに
データベースの初期化ができないケースがあるみたいです。原因はよくわかりま
せんが、フォルダの位置を適当に動かしてテストしてみてください。

218: 
01/12/23 05:23
>>211
どうも、vojtaのインストールしたパスに日本語の文字が含まれているとダメみたいです。
データベースの初期化が出来ません。
C:\test\vojta0901a は動作しますが、
C:\テスト\vojta0901a はうまく動かないです。

219:デフォルトの名無しさん
01/12/23 06:14
早く作れヴォケ

220:デフォルトの名無しさん
01/12/23 11:05
今回の「ガサ入れ未遂事件」で、再度このプロジェクトに注目が集まりそうなヨカーン
応援してます。

221:デフォルトの名無しさん
01/12/23 14:33
>>212
改ざんされたくない人はクリア署名(あるいはX-PGP-Sig
みたいなものをつける)すればいいよね。
UBE,UCEについてはUSENETと同様に一定時間内に
同じパターンの内容があればフィードしないように
すればいい。そういうのはソフトウェア側で工夫して
利用者が複雑に考えないようにすればいいじゃん。
つーか過去ログ読め。

222: 
01/12/23 14:45
なんか古いIEだとうまくいかないみたいなので直しました。

URLリンク(vojtaproject.tripod.co.jp)

223: 
01/12/23 14:56
過去ログレスペクト

2chのような掲示板システムってP2Pで
URLリンク(piza2.2ch.net)

2chのような掲示板システムってP2Pで part.2
URLリンク(piza2.2ch.net)

224:デフォルトの名無しさん
01/12/23 15:36
NATには対応しているんですか?ぽーと開けなきゃ駄目?

225:212じゃないけど
01/12/23 16:42
>>221
それで騙りは防げるだろうけど、スレ本体の改竄は防げないような気が…。
そこんトコどうよ?

226:デフォルトの名無しさん
01/12/23 17:27
>>225
・発言の改変
対策:発言者は、公開鍵暗号系で暗号化(認証付加)する。
    板なりスレなりの形を成すのはローカルのみで、送受信は全て
    発言単位で扱う。
問題:公開鍵のサイズ。トラフィックの増加

・発言の意図的なフィード拒否
対策:発言者がA,B,C,Dに接続しているなら、AとBに発言を送り。
    CやDにデータを要求してみる。
    AとBが正しくフィードしているなら、CやDは発言者の発言を
    見つけられるはず。
問題:発言者がAとBに発言を送ってから、CやDが発言を見つけるまで
    のタイムラグが不明。

・無意味&宣伝&罵倒&その他糞発言の大量フィード
対策:思いつかん(:´Д`)

227:デフォルトの名無しさん
01/12/23 22:49
・発言の改変
カキコを書き換えても、書き換える前のコピーが他のホストに見つかれば、
どれが書き換えられて書き換えられていないのかは、すぐにわかりますよね。

228:デフォルトの名無しさん
01/12/23 23:37
>>227
それだと、同一発言を2ヶ所以上から手に入れて、絶えず比較
しなきゃならないから、単純にトラフィックが2倍になる。

229:デフォルトの名無しさん
01/12/23 23:42
>>227
その他のホストもグルだったら? >>226 の方法にしても実際に
その時間には発言されていない書き込みを後から意図的に
挿入される危険は回避出来ない。

平等な立場のノードだけでネットワークが構成されるとしたら
改竄の危険は完全には防げない、ってのが自分の結論なんだけど
間違ってる?ご意見希望。

230:デフォルトの名無しさん
01/12/24 00:05
>>229
公開鍵暗号系の認証なら他者のナリスマシはないと思う。
復号化(読み)は可能でも暗号化(書き)はできないんだから。

231:デフォルトの名無しさん
01/12/24 01:13
JXTAあげ

232:デフォルトの名無しさん
01/12/24 01:49
>>229
改ざん検出が目的なら、
カキコと一緒にその電子署名を
つけておくだけでいいと思う。
署名の検証はクライアントが行うのね。

信頼できる認証局を一つ立ち上げて
認証書を発行すれば、それでいいんじゃない?

233:デフォルトの名無しさん
01/12/24 03:16
ガイシュツだが、参考スレ
スレリンク(download板)

234:デフォルトの名無しさん
01/12/24 14:49
ちょっとバグなおしました。良かったら試してみて感想聞かせてください。
URLリンク(vojtaproject.tripod.co.jp)

235:デフォルトの名無しさん
01/12/24 15:37
>>234
詳しい動作原理きぼん

236:デフォルトの名無しさん
01/12/24 21:35
だれかIPくれ

237:デフォルトの名無しさん
01/12/24 21:39
>>236
URLリンク(www.nic.ad.jp)

238:236
01/12/24 21:42
イブにそんなベタなネタで返さんでも・・・。

239:デフォルトの名無しさん
01/12/25 01:07
誰かいる?
>>234さんのツールのお試し用に
IP晒し場作ってみました。(かなり適当だけど…)
URLリンク(hoge.s7.xrea.com:8080)
しばらく俺の晒しときますわ。

240:デフォルトの名無しさん
01/12/25 01:09
>>238
そういえば IP v6って今どうなってるんだろう。
p2pのネットワークに利用できないものだろうか?

241:デフォルトの名無しさん
01/12/25 04:06
うお…誰も繋げてくんなかったよ。もう寝る。

>>230 >>232
騙り防止は了解。
でも、改竄されてない保証が出来るのは個々の書き込みまでが
精一杯だよ。レス全体で見たら、どっかに後から書き込みを
追加されたかも知れないし、
取り逃がしてる書き込みがあるかも知れない。
平等な立場のノードだけでネットワークが構成されるとしたら(強調)
この可能性はどんな手を使っても 0 にはならないっしょ?
もし違うんなら教えてくれ。

一番現実的なのは反則なんだろうけど、書き込み保証用の
サーバーを立てることだよなぁ。その時間帯に確かに
書き込んだ、ということを署名してブロードキャストする。
スレごとに最終レス番号を覚えさせておけば
書き込みに正確なレス番号を付加できるから
取り逃し防止にもなる。

242:デフォルトの名無しさん
01/12/25 04:28

ついでに覚書も兼ねてもうひとつ書いておきます。
「平等な立場のノードだけでネットワークが構成されるとしたら」
を強調した理由。

管理側だけでネットワークを組むのはどうだろうか。
一般クライアントは発信側にならない。
管理側は限られた多数のボランティアを募集する。
イメージ的には今の削除人さんたちのような感じ。
もちろん、負担にならないように
常時動かさなくてもいい仕組みを作る。

このネットワークの中では性善説を適用できる。
改竄される可能性は 0 ではないけど、そんな事を
するような奴を選ばないよう留意する(出来るか…?)。
書き込みのあぼーんも出来る。
管理プログラムの変更も割と簡単かも知れない。

でもこれだと管理の責任が生まれそうなので諸刃の剣。
>>1を読み直したらやっぱりスレ違いっぽい。

長文スマソ

243:デフォルトの名無しさん
01/12/25 05:33
さらにバグ修正しました。Linuxで文字化けするバグも直しました。バージョンは
0904aです。 URLリンク(vojtaproject.tripod.co.jp)

>>239さん、すみませんでした。試そうと思ったんだけど、環境が用意できなか
ったです。

今の僕のホストは、211.19.93.1の80番ポートです。とりあえず、つけたまま寝ま
すので、もし人がいたらアクセスVojtaからアクセスしてみてください。スレッドを
たてたり、コメントがつけられたら、動いていることになります。

>>241-242
ごめんなさい。もう眠くて頭が働かないです。あした読みます。

クリスマスイブに徹夜しちゃいました。ちょっと感動しました。

244:デフォルトの名無しさん
01/12/25 08:00
>>241
>もし違うんなら教えてくれ。

夜書く。

245:かごのなかのとりは
01/12/25 08:26
>>241
要は、アリバイ証明の逆ができればいいんじゃない?

ブロードキャストしている?以上、書き込みがあった事を証明できるのは
特定のサーバーに限られないと思う。
ただ、転送された時刻以前に書かれたという証明は難しいね。
まあラグはそんなに考える必要ないか?(というかあまりあってはマズイ)

>>242
>>58あたりの方法はどう思う?

246:236
01/12/25 13:24
>>423
うまくつながらん。
うちはFlet's-ISDN,LAN経由,NAT,80はIISが占有。

Host(211.19.93.1:80) was feeded to servant.とでる。

しかしコンソールに

failed to create serversocket:80

なる文字があるからIISとめなきゃダメかな。
環境についてもうちょっと説明しちくり。

247:デフォルトの名無しさん
01/12/25 13:37
Vojtaはデフォルトで80番ポートを使うので他でウェブサーバが使っていたり
するとダメかもです。その場合は、conf/VojtaServantPreference.xmlを開い
て、ServerPortの80を適当なポート番号に置き換えてください。

248:デフォルトの名無しさん
01/12/25 13:47
カキコありがとうです。今別の誰かがつなげようとしているようですが、
192.168.0.2とかのIPがでちゃって、応答できないみたいです。

249:236
01/12/25 13:48
お、つながった・・・みたいだが変化なし。
セッションは維持してるみたいだが、確認はどうすんの?

250:デフォルトの名無しさん
01/12/25 13:51
>>248
それ、たぶん私です。
ダイヤルアップルータ経由なんで、ローカルのIPが出ていっちゃっているのか。
どうしたら良いでしょう?

251:デフォルトの名無しさん
01/12/25 13:52
掲示板の一番上のConnectorのところをクリックしてください。
接続先が表示されます。協力感謝感謝です。

他の参加者の人に迷惑なので、どこか別に掲示板を用意します。

252:236
01/12/25 13:54
ていうか192.168.1.2ならオレっぽいなぁ。いまセッションも切れたみたい。
セッション切れる前に暴走したみたいになって、CPUを100%もっていった。

正直LANとNATに対応しないと使い物にならん、もしくは使えん。

253:デフォルトの名無しさん
01/12/25 13:57
カキコしたのは俺です。236さんとは別人です。混乱させてごめん。

254:248
01/12/25 13:58
192.168.0.2は、やはり私かも。ローカルのIP確認したっす。
コネクションは張れるのに、残念だなぁ。

255:250
01/12/25 13:59
上の>>253は私です。間違えました。すんません

256:デフォルトの名無しさん
01/12/25 14:01
そうですね。対応しないと現実的には使えないですね。
気を長くしてお待ちくださいです。

257:250
01/12/25 14:15
>>256
私はスキル無いっすけど、テストには協力しますんで、
がんがれ

258:デフォルトの名無しさん
01/12/26 02:01
>>244
夜だぞ!?まだか!

>>245
チェーン方式…、俺は直感としてはダメだと思うんだけど
誰かやってくれるんなら、アイデアの段階じゃなくて
チェーンに悪質なクライアントが混じった場合の振る舞いとか
チェーンのノードが全部ネットワークからいなくなった時はどうすんのさ?
などに答えを出して、完成させた仕組みの形で見てみたい。
突っ込む用意は出来てるから。

259:デフォルトの名無しさん
01/12/26 15:04
URLリンク(www-106.ibm.com)

既出でしたか?でもこの図はどっかで見たことあるんだよなぁ。

260:デフォルトの名無しさん
01/12/26 16:27
>>258
他人に実装を求めた上に、突っ込む用意ができてんなら、どんな問題が
考えられるか、それに対する対処が何故難しいかくらい提示しろよ。
喧嘩売ってんのかテメェは?何がやりてぇーんだ?

261:236
01/12/26 17:41
>>260
売ってても買っちゃダメでしょ。(w

262:デフォルトの名無しさん
01/12/26 20:12
>>260
一概にチェーン方式って言ったって、やり方はひとつじゃない。
俺だっていくつか候補は考えてみたけど、どれも結局穴が出た。
だから、無理だと思ってる俺が穴のある仕組みを提案するより、
本当にこれで完璧と思っている奴がいるんなら、
ソイツの考えた仕組みを見て、
それが本当に完璧か議論した方が生産的でしょ?
仕組みの穴を見つける手助けはするって言ってんだよ。

上の方にも書いたけど、俺は真の意味での pure P2P で
完璧な掲示板システムが出来るって事に懐疑的です。
ちゃんとやるんなら>>241>>242の方法、少なくとも
「信頼の置ける」ノードなしには出来ないと思ってる。

せっかく喧嘩を買ってくれるのならこれが間違いだ、
っていう証明をしてくれよ。

263:236
01/12/26 21:38
>>262
オレも完全P2Pで掲示板ができるとは思っていない一人だが、
けんか売っちゃダメだろ。Vojtaがうまく行けば机上の空論だし。

ところで漏れもソフト作ってるんだが、そこまでいうのなら
システムを書くのでぜひ検討してほしい。
一人でやってるとどうもね。

・サーバ間のみP2P
・レスの共有はしない
・スレッドはサーバが所有
・あるスレッドへの要求はすべて単一サーバに集中
・他人のサーバにスレッドは立てられない

・サーバ間で常時コネクションを張る
・サーバネットワークでは更新のあるスレッドについて全域に配達する

長所
・いろいろ
欠点
・管理責任が発生しそう
・リソースがサーバに依存

責任問題については、漏れは発言者本人にはあって当然と思っている。
それもあって匿名問題についてはあまり気にしていない。
ただ、サーバ管理者に管理責任が発生するのは避けたいので、
動的にスレッドを移譲する仕組みがあればいいかなと思っている。

264:236
01/12/26 21:43
漏れの環境ではNAT込みで動いているが、
.NET Framework Runtime が必要なんで、
それでもいいという人がいたら言ってくれ。

ちなみに98,NT,2K,XP用で20MBほど、ベータ板。

265:デフォルトの名無しさん
01/12/26 23:24
関係ねーけどトークンリングって懐かしい……

266:い
01/12/26 23:31
>>262
いや、並べてみて、その穴の部分を取り上げて解消するアイデアを見つける方が得策。

ところで、信頼性というのは維持したまま分散できないものなのだろうか?
結局、悪意のクローンを排除可能なプロトコルって事になるのかな?

プログラムを署名付きで配布して、無署名で改造したらばれてプロトコル上門前払いできる
とかいうようなのって無理?

267:デフォルトの名無しさん
01/12/27 00:32
メールサーバも変なの多いよねー。でもなんとか動いてる。動いてない?

268:デフォルトの名無しさん
01/12/27 01:19
>>263
検討しようと思ったけど、「サーバー」が何を意味するのかわからないよ。
「サーバー」=「利用者のクライアント」だったら、その案だと欠陥あり。
「サーバー」=「信頼の置ける少数の管理側サーバー」だったら、
現実的だけど、面白くない。ってのが正直な感想です。

pureP2Pでコレ!って案は結局ないのーか?(煽ってみる)

269:デフォルトの名無しさん
01/12/27 01:26
>>263
>他人のサーバにスレッドは立てられない
って事はやっぱり「利用者」の方か。以下、
そう決め付けた上での欠点。相変らず長文ごめん。

■ 其の1 ■

>動的にスレッドを移譲する仕組みがあればいいかなと思っている。

ここ重要。実際どういう仕組みを用意するつもりさ?
スレ立てた奴が繋いでないと書き込めない掲示板なんて
掲示板の用を成さないから、ここの仕組みは必要だけど、
もし悪質なノードに委譲されてしまったら、
それこそ改竄でもあぼーんでもやりたい放題。
きっと、誰かがどっかのスレをあぼーんしたいと思ったら、
ひたすらノード用意しまくって、委譲されるの待つ。
いたづら犯だったら委譲されたスレを片っ端から壊すかもしれないし。

■ 其の2 ■

委譲が任意だとすると、スレ立てた奴に公開を止める権利がある。
スレ立ててレス貰って、都合が悪くなったら公開中止。
これはレス泥棒。少しでも時間を割いて書いてくれた人に失礼。
あんまり好ましいとは思わない。

■ 其の3 ■

悪質なノード君がスレ立てしたとしたら…?
色んないたづらされそうでなんか嫌。

以上。
良い点もいっぱいあると思うけど、
とりあえず悪い点だけ。
勘違いしてたらごめんなさい。

270:236
01/12/27 10:30
>>268
不明なとこがあったら聞いてください。

サーバは実際には二種類あって、
ひとつは基幹ネットワークを構成するやつ。(Aサーバとする)
もうひとつは単なるスレッド供給者。(Bサーバとする)

BサーバはAサーバに依頼して、自分の持つスレッドを告知してもらう。
ただし、Aサーバ管理者に依頼しない限り、Aサーバネットに参加はできない。

クライアントはいずれかのAサーバにアクセスしてスレッド一覧をもらう。
スレッド一覧はBサーバのアドレスつきで送られるので、レスの取得は
実際に運営しているBサーバから直接もらう。

★移譲

これに関しては、次のような感じが良いかも、と思っている。

・サーバは"移譲サーバ"のアドレスをあらかじめ決めておく
・時が来たら、移譲サーバにスレッドを移譲
・管理をしたいときは移譲サーバに返還要求する

・移譲サーバは移譲依頼が来たら任意の別のサーバに移譲する
・移譲サーバは変換依頼がきたら実際の移譲先に通知後、
 スレッドの書き込みをチェック※して返還。

・クライアントは移譲サーバに実際の移譲先を聞いてアクセス。

※は、移譲中の部分に関しては仕方がない。
移譲する前の部分が改竄されていないかのみ。

>いたづら犯だったら委譲されたスレを片っ端から壊すかもしれないし。

最悪でもスレッドの一時的なダウンですみます。
オリジナルがサーバに残っているので。

>悪質なノード君がスレ立てしたとしたら…?

Aサーバのネットワークに介入されなければ何とかなります。

>スレ立ててレス貰って、都合が悪くなったら公開中止。

これについてはまだ考えているんですが、要はサーバクラッシュから
復旧させる手段が必要かな、と。復旧時にレス関係者が集まる場所を
決めておいて、そこでみんなのログを合成するというのが今の案です。

271:デフォルトの名無しさん
01/12/28 00:53
>>270
了解。俺りゃ1さんのノードがスレ管理をするんだと思ったよ…。
あくまで、管理側と利用側に分けた上での、
管理側ネットワークの仕組みっちゅーことですね。

それだったら上手くいくと思います。

というか、何度も書いてるようにそっち路線で行くしかない、と思っています。

でも、そっちの路線で考えるにあたって、それで本当に
このスレの目的は達成されるのだろうか、という疑問があるんですよ。
pureP2Pで出来るんならそっちの方がいいに決まっている。

というわけで、>>241での発言の繰り返しになっちゃいますけど、
俺の結論はpureP2Pで完璧な掲示板システムを作る事は出来ない。
どこかで妥協が必要になる。

これを確認したい。
「反論」を待つ。

#反論がなけりゃしょーがねーや、そのうち>>241>>242の方法を
#取った掲示板か、もしくはログが必要ないCHATでも作ってみるわ。

272:つ
01/12/28 11:14
>>271
pureP2Pとはどういうものを指すのだろうか?
平衡型ならいいのかな?

想定する掲示板システムの仕様は2ch型でいいの?
それともマルチスレッド?

273:236
01/12/28 20:50
>>272
PureP2Pでは、P2Pに加え、
・ユーザ・クライアントを認証しない
とかかな。通信相手の選り好みをしないということ。

マルチスレッド、2ch型は意味不明。

274:デフォルトの名無しさん
01/12/29 00:25
pure P2Pの定義ですが

 「すべてのノードは平等な機能と役割を持ち、対等に通信する。」

でどうでしょうか?
もしくは、この定義が窮屈すぎるなら

 「pure P2Pであれば、誰にもネットワークを止めることが出来ない。」

という感じかな。
逆が成り立つとは限らないけれど。

275:いつ
01/12/29 03:41
>>274
> 「すべてのノードは平等な機能と役割を持ち、対等に通信する。」

これであれば、要は、正規応答モードじゃなくて、非同期平衡モードってことだと思う。


昔、無線を使ってそういうのやろうとしてた人達がいたみたいだけど
細かなプロトコルを統一しないと問題がでてくる。

で、問題の類似プロトコル(ワーム等)にネットワークが汚染されないようにするには>>266のように
プロトコルにブラックボックスを組み込んでおく必要がありそう。
そうすれば、性善説を取ることができるので最初から予期された(通信の確実性とか)以外の問題はおこらない筈。

ただそれでは 「pure P2Pであれば、誰にもネットワークを止めることが出来ない。」
というのは成立しない気がする。一種の認証だしね。
つまりこれではpure P2Pとは言えないという事なのかな?

結局プロトコルという規則や物理的制限に縛られている限り、それは完璧には無理なんじゃないだろうか?

で、>>1の目的にはそれは必要?

276:デフォルトの名無しさん
01/12/29 13:47
>>275
プロトコルをブラックボックス化するのは、厳密には不可能だと思う。
送受信されるデータは認証と暗号化の組み合わせで守る事ができるとしても
暗号化と復号化の手順を両方持ってるプログラム本体は守りようがない。
一旦解析されたら、性善説を取ってる受信者を相手に好き勝手できてしまう。

不特定多数と通信する以上、送られてくるデータもまた不特定多数である事
を前提にするべきで、送信者の自己申告は当てにできない。
絶えず受信者の側で判定する方が、より安全なのでは?

277:236
01/12/29 23:16
>>275,276

>そうすれば、性善説を取ることができるので
>最初から予期された以外の問題はおこらない筈。

2chで荒らしが横行しているのはなぜだ?
WWWサーバは完結しているのだから、性善説というかそういうことすら
気にしなくて良いはずだが?
それともひろゆきは対応できるのにしていないだけなのか?

クライアントが完全に信頼できても、
ユーザが信頼できなきゃ問題は起こるんだよ。

>プロトコルをブラックボックス化するのは、厳密には不可能だと思う。

というか、少なくとも漏れはそういう段階ではない。
すべてのクライアントが自前とものと仮定した上で、
厨房が暴れないようにする段階。

278:デフォルトの名無しさん
01/12/30 06:59
URLリンク(www.atmarkit.co.jp)

279:デフォルトの名無しさん
02/01/02 22:22
2ch鯖(基本鯖)を併用する。

投稿は2ch鯖と自分のログ、そして相手に送信される

2ch鯖に投稿されたものは削除も改変もできない(現在の2chのシステムを維持できる)

しかし、自分の書き込みと相手のログは改変の恐れがある

そこで各ユーザは2ch鯖にその投稿が本物かどうかを問い合わせることができる
ただし、返答は0(偽)か1(正)のみ。(これによりひろゆきの訴訟リスクをゼロにできる)

また、2ch鯖へ投稿した個人は分からないため、匿名性もある程度維持できる。

さらに24時間稼働できる準基本鯖(ボランティア)があるともっと良い。

どう?

280:デフォルトの名無しさん
02/01/02 22:54
>>279
それはもう一方のスレのP2Pcacheとかいう奴だね。
開発止まってるみたいだけど。

281:デフォルトの名無しさん
02/01/03 13:45
あけおめ。今年の目標はVojtaの完成です。
ファイヤーウォールへの対応はこれからがんがります。

282:デフォルトの名無しさん
02/01/03 22:49
がんがってください

283:デフォルトの名無しさん
02/01/03 23:06
>282
その言葉は、ここでは禁句。
「オメーの為に作ってるんじゃねー、作りたいから作ってるんだ」って反応が返ってくるのがオチ。

284:デフォルトの名無しさん
02/01/03 23:10
正しくは、「オメーら、カッコいいぜ!」

285:デフォルトの名無しさん
02/01/03 23:49
サーバに依存しないP2P掲示板では、参加するために他のノードのアドレスが必要
になります。 「IPくれ~」というのを、P2P掲示板以外でやらなければならないわけです。
Vojtaでは板毎にネットワークを作るので、板毎にアドレス情報の交換をやるのは結構
大変と思われます。

中央サーバを用意してここで、ホスト情報の提供を行うことは可能ですが、ここの維持に
はコスト(サーバ、管理者等)がかかります。このサーバがクラックされたり、Dos攻撃を受
けたりしまうととネットワーク全体が死亡します。

286:デフォルトの名無しさん
02/01/04 00:01
ですから、「便利に使うためのツール」として、ホスト情報交換のためのサーバ
プログラムがあってもよいかもしれません。いつ消滅してもよいように、マニュア
ルで操作できる必要はあるかと思います。

他にも、ウェブからの読み書きのゲートウェイを提供するサーバプログラムが
あってもよいかもしれません。サーバ提供者には広告を挿入する特権を与え
れば、板によっては管理者のなり手がいるのではないでしょうか。ウェブから
読み書きできれば、モバイルからも参加できるし、過去ログをサーチエンジン
で検索可能にもなるでしょう。

しかし、それは純粋ではないのでは?>>1に反する?うーむ。理想と現実。

287:デフォルトの名無しさん
02/01/04 00:31
いや、大元のネットワークがpureであれば、>>1には反しないと思うけど。
オプションで便利になっていくのは良い事だと思う。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch