Winnyトラフィック遮断の思想的な意味

大手プロバイダーの中で実際のネットワークの運用をしている方は、私が予想しているよりずっとストイックだと、これを読んで感じました。

彼らはWinnyやワームのトラフィックをネットワークのレベルで遮断すること、つまり、IPパケットに対する早急な価値判断に対して非常に消極的です。と言っても、「おお、私の可愛いIPパケットたちよ。おまえたちを全て等しく私は愛する。たとえ、世間の人々がおまえたちの誰かを忌み嫌おうとも、私は永遠におまえたちのそばにいる。データグラムに何が含まれていようと、おまえたちがRFC791に準拠している限り、私はおまえたち全員の味方であり続ける」みたいに情緒的にそういう方針を取っているわけではありません。

そうではなくて、長年にわたって蓄積された経験から来る知恵が、特定のIPパケットをはじくことの副作用の大きさを直感しているのだと思います。


そして、そこにはプラグマティックな理由と思想的な理由があると私は思います。

プラグマティックな理由とは、インターネットの中を流れるIPパケットの量というのは信じられないくらい大量であること。だから、「Winnyを遮断する」と言っても、そのパケットがWinnyトラフィックであるかそうでないかの判断に使える時間は、非常にわずかです。たとえば、1Kバイトのパケットが1M/秒のトラフィックで流れたら、秒間1000件のパケットを処理する必要があります。0.001秒の間にそれを判断しなくてはいけなくて、いくら高速なルータを使っていても、そういう限られた時間でできることは多くありません。もし、1%の確率で間違えたとすると、秒間10件のパケットが間違った処理をされてしまいます。1分で600件、1時間で36000件のパケットが被害を受けます。36000件のIPパケットを一人のユーザが送信することも充分あり得ますが、これが36000人のユーザであるかもしれない。まして、Gバイト/秒単位のトラフィックを処理しているネットワークの中枢部分で間違いをしたら、どんなトラブルが起こるか想像もつきません。

たぶん、このあたりの量的な感覚を調整できないと、日々の運用、トラブル処理はできないのではないかと思います。だから上位ルータの管理は、他の大半のコンピュータシステムより、慎重に保守的に行なう必要があります。理論的には、Winnyトラフィックに特徴的なパターンがあってこういう機器にこういう設定をすれば正しく検出できるとわかっていても、それを実行するのは感覚的に躊躇する、それが正しい管理者の態度なのでしょう。

そして、そこには思想的な理由もあります。

TCP の基本仕様を定めた RFC 793 [RFC] には,次のような一節がある。

TCP の実装は,頑健性の一般原則に従うものとする: 己のなすことには慎重たれ,他人のなすことには寛容たれ。

この一節は,編者のジョン・ポステル (Jon Postel) [Wikipedia] の名を取って,「ポステルの頑健性原則」 (Postel's Robustness Principle) と呼ばれる。

この原則は,公開されたプロトコルやフォーマットを使用するうえで必要とされる心がけのひとつとして考えられている。

このような思想がプロトコルの仕様書やソフトウエアの設計の中には、たくさんあります。それこそが、インターネットを成り立たせているのではないか。長くネットに関わっている人には、そういう直感も継承されているのではないか、そう私には思えます。

ネットワークというのは究極的には人と人をつなぐことであって、人の多様性を意識すると自然とそういう解にたどりつく。つまり、「何が良いことか」「何が正しいことか」みたいな価値判断は、人によって違う。ネットワークがそういう価値判断を含むということは、人の多様性や個別の価値判断の上に、上位の価値判断を置いてしまうことだ。

ネットワークのアーキテクチャを設計する人は「俺がみんなより正しい」「多様性は俺の価値観の中だけで許されるべき」と言っているに等しい。そしてダムネットワークとは、「多様性とその出会いこそが究極的な善である」という価値判断を技術的に表現したものである。それもひとつの価値判断の押しつけであるけど、価値判断の押しつけが無いとネットワークが成り立たない以上、それを極小化しようというのが、ダムネットワークという技術で表現されている思想なのだ。

「出会い」にはさまざまの事故が起こり得るけど、それはエンドトゥーエンドで、つまり、個別に出あった個人同士が解決していって、決してそこから唯一不変の正解を導き出さないでね、とダムネットワークは言っている。なぜなら、今はそれが最高の解に思えても、ある日誰かが、もっといい方法を考えつくかもしれない。その時にその新しい方法を使えないと困るでしょう、ということだ。

そのような「多様で可変である人と人との出会い」というものがうれしくない、という人がダムネットワークを弾圧しようとしているのだと思う。

TCP/IPは何故こんなに長く生き残っているのでしょうか。IPプロトコルの仕様書が書かれたのは1981年、インターネットの歴史年表によると当時インターネット(の前身)につながっていたのはなんとたった200台です。ティム・バーナード・リーがWebを作ったのは1989年で、そのはるか後です。IPプロトコルを設計した人は、「ホームページ」というものを見たことが無かったのです。「ホームページ」を一回も見たことの無いおっさんが、ネットについて何か言って、それが当たっていることがあり得るでしょうか。

1年以上稼働し続けるコンピュータシステムはほとんど無いし、3年以上使われ続けるプログラムもそう多くはありません。1981年に制定されたこのプロトコルには、ひとつの普遍的な原則があって、それによって長年生きのびてきた。ネットにつながる人全てが、そのことの意味を理解すべきだと思います。

毎日、IPパケットと格闘しているネットワーク技術者の人たちは、自分でも意識しないうちに、この思想に洗脳されていて、その為に、どうしてもIPパケットの排除に消極的になってしまうのです。あるいは、この思想に抵触しない範囲で制限をかけようとするので、技術的な検討が予想以上に複雑になり長引くのかもしれません。

現在のインターネットは技術者やプログラマだけのものではありません。だから、この思想を無条件に継続すべきだとは私も考えていません。ただ、これを捨てる時は、できる限り多くのユーザが、それを捨てて何を失なうのかについて理解し、合意してから、捨てるべきだと思います。

Winnyトラフィックを遮断すべきかどうか、それ自身は技術的な問題です。特に、無印吉澤さんがおっしゃるようなWinnyベースのワームの出現の可能性を考えると、それに備え、いざという時にはすぐに発動できるよう準備しておくことは、インフラ提供者としての義務とも言えるかもしれません。しかし、それを一時的、例外的な処置と見なすのか、永続的な処置と見なしこれを前例としてインターネットが変質していくことまで許すのかどうかは、政治的な問題です。