新・闘わないプログラマ No.249

対等


私が「peer to peer」という言葉を初めて聞いたのは、もう何年くらい前のことになるのでしょう…少なくとも10年以上は前のことだと思うのですが、「APPN : Advanced Peer to Peer Network」と言う用語の中でした。
APPNというのは、IBMのメインフレームを中心とするネットワークアーキテクチャ、SNA(Systems Network Architecture)にある概念です。SNAと言えば、このTCP/IP全盛時代にいまさらSNAでもなかろう、とも思えるわけですが、そうは言っても過去からの経緯上、それからメインフレームでデータ処理を行う関係上、SNAは大企業を中心に今でも非常によく使われています。
コンピュータネットワークにおける通信は、基本的に2点間でのデータのやり取りを行うことが目的と言ってもいいと思いますが、SNAのネットワークに置いては、「メインフレーム←→端末」という通信が基本で、他に「メインフレーム←→メインフレーム」という通信も出来ますが、「端末←→端末」の通信は原則的に出来ない、という制限があります。要するに、通信を行う点(「ノード」と呼んだ方がいいかな?)には、メインフレームのようなどことでも通信の出来る「偉い」ノードと、端末のようにメインフレームとしか通信の出来ない「偉くない」ノードの2種類があることになります。
端末ノード同士が直接通信できない、と言うのは、SNAが発表された1970年代の時代背景を考えれば無理からぬものもあるわけで(まだPCなど存在していない時期、端末と言えば「ダム端末」という本当に「端末」でしかないようなものしか無かった)、それ自体は仕方ないとも言えるわけですが、そうは言っても、そういう制限をいつまでも引きずっているのもよろしくないだろう、ということで、いわゆる端末ノード同士が直接通信できるようにしましょうね、ということで出てきたのが対等通信であるAPPNです…IBMは当時「any to any」なんて標語(?)を使っていたような記憶があります。
など知ったかぶりして書いては見ましたが、記憶の奥底からSNAの知識を引っ張り出してきて書いてますので、とんでもない間違いをしているかも知れません。間違っていたらこっそり教えてください。

ここで、今度はTCP/IPでの通信について考えてみます。TCP/IPではノード(というか「ホスト」)には「偉い」「偉くない」と言った区別はありません。どのホストからでも、どのホストに対してでも通信を開始し、データのやりとりをすることが出来ます。
そういう意味ではTCP/IPネットワークは初めから「peer to peer network」(日本語に無理やり約せば「対等通信ネットワーク」?)である、と言えるわけです。この辺は、1970年代のSNAと、1980年代のTCP/IPの違い、とも言えるでしょうか。PC以前とPC以後という考え方もあります ←かなり強引。
実際、SNAのAPPNは、今でも(今だからこそ?)あまり(ほとんど?)使われていないようで、なぜかと言えば、そういうのが必要な部分にはTCP/IPを使えばいいやん、ということみたいです。

ところで、「peer to peer」という言葉、いったい、いつ誰が使い始めたのか、Googleなどでもいろいろと検索してみたのですが、「Napster」とか「Gnutella」とか「WinMX」とか、そんなんばっかり引っかかって、さっぱり分かりませんでした。
なにやら最近は、「peer to peer(P2P)」=「ファイル交換」=「犯罪」という、なんかそういう図式が出来ているような気もするのですけど、気のせいでしょうか?
TCP/IPネットワークはもともとpeer to peer networkなわけで、「いま話題のP2P」などとあちこちで言われるようになっても、そういう世間に疎い私は「何をいまさら…」と思っていたのですが、そもそも根本的に視点…というか、議論しているネットワーク階層が違う、ということですね。
SNAのAPPNや、TCP/IPがpeer to peerだ、と言った場合、それはOSIのネットワーク階層で言うと、3層目のネットワーク層や4層目のトランスポート層(もしかすると2層目と5層目も含むかも)のあたりの話だし、ファイル交換ソフトの話なら7層目(アプリケーション層)あたりになるのかな、と。
そういえば、例えばWindowsネットワークで、特にファイルサーバを置かずに、お互いにファイル共有するような形態もpeer to peerと呼んでましたね。これもアプリケーション層あたりの話。

さてさて、話は変わって、先日、知り合いから電話が掛かってきました。
「インターネットがうまく繋がらないので、こっちに来て見て欲しい」と。
電話の相手が若い女性なら万難を排してでも駆けつけ…って、このネタ、もう何度も使っているような気がするので、以下略。とにかく夕食一回分ということで手を打って、行ってきました。「今まで繋がっていたんだし、ネットワーク関連の設定をちょこちょこっと直せば、問題無いだろう」と軽く見ていました。
が、行ってみたら、「インターネットが繋がらない」とかそういうレベルの話ではなく、「Winny」とか言うpeer to peerのファイル共有ソフトがうまく使えない、という話でした。
「お前、コンピュータ詳しいんだろー、なんとかしてくれよー」と言われましても、私、そっち方面は全く分からないのでして…。せっかく来たんだから、と、いろいろ調べてみたら、インターネット接続に使っているルータに静的IPマスカレードの設定が必要で(IPマスカレードをしているルータがあって、peer to peerのアプリケーションを使う場合には必要になる)ということで、その種の設定をいろいろとしてきました ←もしかして私も何かの共犯者?
「Winny」っての、私も初めて知ったのですが、2ちゃんねるが発祥だそうですね。で、欲しいファイルのキーワードかなんか登録して放っておくと、そのうちキーワードに合致したファイルがダウンロードされる、というような仕組みみたい…って、おい、お前。そこで「高校生 写真 素人」とかいうキーワードを登録するんじゃない! え? なに、ファイルがダウンロードされたって? いや、別にそんな見たいわけじゃないんだけど…げ、いいのか? こんな写真を公開しちゃって。だって、これってどうみても高校生くらいの(以下略)

[前へ] [次へ]

[Home] [戻る]


mailto:lepton@amy.hi-ho.ne.jp