💭

【Network】ARPANETは軍事利用目的で作られたという神話を信じる人たちに伝えたい開発者の想い

に公開

インターネットを作った人たちの建前と本音を考える

TL;DR

インターネットの祖先にあたる Arpanet 開発の技術者たちにとっての最大のモチベーションは「高価な計算機資源の共有」だったのだ。地理的に離れた場所にいる研究者たちが、同じコンピュータにアクセスし、プログラムやデータを共有できるようにしたかったのだ(リソース・シェアリング)。

ARPANET が ARPA という軍事技術を研究する機関から生まれた

これは正しいのだ。

けれど、だから軍事利用を目的に ARPANET が開発されたというのは間違っているのだ

そもそも ARPANET とは何か?

インターネットの祖先

ARPANET was the first public packet-switched computer network. It was first used in 1969 and finally decommissioned in 1989.
https://www.techtarget.com/searchnetworking/definition/ARPANET

ARPANETは、インターネットの直接の原型となったコンピュータネットワークのことなのだ。そしてその名前の通り、ARPAという組織が企画し、資金を提供したプロジェクトの一つだったのだ。

この組織 ARPA という機関を簡単にまとめると

ARPA とは

  • 時代は1958年の冷戦時代
  • 国防総省(DoD)の機関
  • 誕生のきっかけはソ連の人工衛星打ち上げ(スプートニク・ショック
  • 当時のDwight D. Eisenhower大統領アメリカの科学技術研究を促進するために設立した組織
  • ARPA自身が研究所を持つのではなく、外部の大学や企業に研究資金を提供するというスタイルをとっていた

ARPAの研究方針とARPANETの位置づけ

ARPANET は、この ARPA のプロジェクトの一つだった。けれど、軍事利用が目的だったわけではない、ここがポイントなのだ。

そもそも ARPA が目をつけたのは、既存の組織ではなかなか手が出せない、次のような「隙間」にあるプロジェクトだったという点は注目すべきなのだ。

  • 成功するか分からないが、成功すれば絶大な効果をもたらすリスクが高すぎる研究
  • すぐには軍事的にどう役立つか分からない(未知数な)基礎研究
  • 陸・海・空軍といったどの軍の担当とも言えない分野をまたぐ研究

そして、ARPANET は、まさにこうした ARPA の精神を体現するプロジェクトだったのだ。

ARPANETプロジェクトに関わった人たちの話

ARPANET プロジェクトに関わった人たちの話を聞いていても軍事目的のために開発したといった話は聞かないのだ。むしろそういう噂話(神話ともいわれているのだ)を否定していることが多いように感じる。

元ARPAディレクターの Charles Herzfeld も、こう語っているのだ。

According to Charles Herzfeld, ARPA Director (1965–1967):
The ARPANET was not started to create a Command and Control System that would survive a nuclear attack, as many now claim. To build such a system was, clearly, a major military need, but it was not ARPA's mission to do this; in fact, we would have been severely criticized had we tried. Rather, the ARPANET came out of our frustration that there were only a limited number of large, powerful research computers in the country, and that many research investigators, who should have access to them, were geographically separated from them.
https://en.wikipedia.org/wiki/ARPANET

インターネットの基盤技術であるTCP/IPプロトコルの50周年を記念して開催されたイベントの講演から知る開発者の想い

TCP/IP について調べていたときに見つけた素晴らしい動画があるのでここでシェアしたいのだ。この動画ではまさに政治側の思惑と開発者が持っていたビジョンが違うことが語られていると思ったのだ。

https://www.youtube.com/watch?v=NPfm2OmHOoM&t=2218s&ab_channel=GoogleCloudEvents

memory disc at that time it would cost like a million dollars today it's pennies but back then it was very expensive and every one of the universities wanted more storage and so if you bought a big you know big disc a megabyte disc for Harvard let's say then Carnegie melon would come in and ask for the same thing and couldn't afford it and so the network allowed us to share these large scale resources

当時のメモリディスクは、今で言えば100万ドルもするようなもので、今はほんのわずかな値段だけど、当時はものすごく高価だったんだ。そして、どの大学ももっと多くのストレージを欲しがっていた。だから、例えばHarvard大学に巨大な、メガバイト級のディスクを1台導入すると、今度はCarnegie Mellon大学がやって来て同じものを欲しがるんだけど、そんな予算はない。そこでネットワークがあれば、そういった大規模なリソースを共有することができたんだ。

Darfield was also building something called the iliac 4 one of the very first supercomputers before cray was on the scene and they' only be one of them so people wouldn't necessarily have to go to Illinois to get used of it so if you looked at it from a technical perspective the office that I later ran actually had all the motivation for building in that to be more efficient in what it did be more economical in what it did and to allow sharing of resources and and maybe even to get computer programs to figure out how to talk to other computer programs we're still a long way from having solved that problem but we've solved a lot of the other problems along the way

ARPAは、Iliac 4というものも作っていた。これは、Crayが登場する以前の、最初期のスーパーコンピュータの一つでね。でも、それは1台しか存在しなかった。だから、それを使うために人々がわざわざIllinois州まで行く必要がないようにしたかったんだ。だから、技術的な観点から見ると、ぼくが後に率いることになったオフィスには、ARPANETを構築するためのあらゆる動機が揃っていた。業務をより効率的にし、より経済的にし、リソースの共有を可能にするため。そして、ことによると、コンピュータプログラム同士が対話する方法を見つけ出すためでさえあった。この問題は、解決までにはまだ長い道のりがあるけれど、その過程で他の多くの問題は解決してきたんだ。

if you look at it from the perspective of the DARPA management they saw this as something that could potentially help the dod Big Time command and control related stuff and and the like so there were all kinds of reasons for it and so people canate those two different Notions was this really solving a DOD problem and the answer is conceptually for some maybe even the director of the agency that was the bottom line but for the technical people working on it this was just a really interesting technical challenge how would you build a network how would you make it work how do you get computer programs to interact with other ones and it just took over from there

DARPAの経営陣の視点から見ると、彼らはこれを、国防総省(DOD)を大いに助ける可能性のあるもの、つまり指揮統制関連のものとして見ていた。だから、ARPANETにはあらゆる種類の理由があったんだ。人々はこの二つの異なる概念を混同してしまう。「これは本当に国防総省の問題を解決するものだったのか?」と。その答えは、概念的には、一部の人々、恐らくはARPAの長官にとっては、それが最終目的だったのかもしれない。でも、それに取り組んでいた技術者たちにとっては、これはただ、ものすごく面白い技術的な挑戦だった。「どうやってネットワークを構築するのか?」「どうやってそれを機能させるのか?」「どうやってコンピュータプログラム同士を相互作用させるのか?」とね。そして、そこから全てが始まったんだ。

and so there are some people who look at it and say you know now the guys at Dara couldn't make up their mind you know was it this or was it that was it really about you know building a network to move bits around or was it applications that could run on them and you know those stories uh kind of persisted in terms of DARPA was confused when Dara was anything but confused they knew exactly what they were doing and they were doing all these it's like a quantum mechanical project it had multiple different things that all kind of matured at the same time

だから、中にはこう見る人もいる。「DARPAの連中は、どっちつかずだったんじゃないか。あれだったのか、それともこれだったのか。本当にビットをやり取りするネットワーク構築の話だったのか、それともその上で動くアプリケーションの話だったのか?」とね。DARPAが混乱していた、というような話はずっと語り継がれてきた。でも、DARPAは全く混乱なんてしていなかった。彼らは自分たちが何をしているのか正確に分かっていたし、これら全てをやっていたんだ。それはまるで量子力学のプロジェクトみたいなもので、複数の異なる事柄が、全て同時に成熟していったんだ。

まとめ

「インターネットは核戦争が起きても大丈夫なように、軍事目的で発明された」
こうした話を、ネット上でよく目にするのだ。

ぼくは以前から、この話だけが一人歩きして「インターネット = 核戦争への備え」というイメージだけが定着してしまうのは、本質と違うのではないか…と思っていたのだ。というのも、インターネットの初期に関わった人々の証言やインタビューに触れても、「軍事目的で必要に迫られて…」といった動機が語られるのを、ぼくは一度も聞いたことがなかったからなのだ。

むしろ彼らの軌跡を追うと、より壮大で、平和的で、未来を見据えたビジョンを持っていたと感じることばかりだったのだ。何より、当時の開発者たちの写真を見ると、誰もが驚くほどキラキラした目をしている、という印象が強かったのだ。

インターネットを創造した人々は、「核攻撃への耐性」といった政治家が好みそうなテーマではなく、もっと壮大で平和的、そして未来への期待に満ちたビジョンを抱いていたはずだ、という仮説のもと、今回は深掘りしてみたのだ。

もちろん、莫大な資金がなければ開発は不可能だっただろうから、そのために政治が関与していたのは仕方のない側面だと思うのだ。しかし、それは本質とは別の話なのだ。だからこそ「本音と建前」というタイトルにしてみたのだ。

「核攻撃を受けても途切れない通信網」という目標は、国防総省から巨額の予算を引き出すための、非常に分かりやすく説得力のある「建前」だったのではないか、とぼくは考えたのだ。

実際調べてみると ARPA はそもそも全米から集った優秀な科学者やエンジニアたちが割と自由に軍事目的とかにとらわれずに研究開発ができる基盤があったことがわかったのだ。そして ARPANET はまさに軍事目的とは逸れた文脈で作られた技術だったことがわかったのだ。そして ARPANET の目的はリソース・シェアリングにあったわけだけど彼らの研究開発のビジョンはもっと大きかったこともわかったのだ。それについてはまた話が長くなるので別記事に譲りたいと思うのだ。

余談

インターネットは、もともとネットワーク同士を繋げて作られた。だから結果的に、どこか一部が機能しなくても全体は生き残るっていう、障害に強い構造になったんだと思うのだ。

当時が冷戦時代だったから「核攻撃」っていう言葉が独り歩きしているけど、本質はそこじゃない。この**「何かに大きく依存する中央集権的な構造は避ける」**という考え方こそが、今も日々大きくなるインターネットを支えているのだ。

そして、この考え方は、今のソフトウェア開発の現場でもすごくよく見るのだ。

マイクロサービスもそうだし、Reactのコンポーネントも、部品を再利用しやすくしようと頑張っている。オニオンアーキテクチャのようなモデルも、依存関係を分かりやすくするための工夫だ。形や文脈は違っても、根本は似ている気がするのだ。

他にも、ネットワークのOSIモデルが通信機能をレイヤーに分けているのも、Javaのオブジェクト指向がインターフェースで中身を隠しているのも、似たような思想を感じる。どれもが拡張しやすく、連携しやすいように作られているのだ。

Unix哲学のような世界にも、こういう考え方はたくさん見つかるんだろうなと思うのだ。もちろん、これらの分散的な構造が常に正解なわけじゃなく、モノリシックな構造に利点があることも多い。

でも、「モダンな開発」と呼ばれるものの中に、インターネットが生まれるずっと前の思想との共通点を見つけられるのは、本当に面白いことなのだ。

それにしても、今回のテーマは深入りすると本が一冊書けちゃいそうだったのだ。物事をシンプルに説明する難しさを、ヒシヒシと感じたのだ。文章を書くときも、複雑なことを一つの記事に無理やり詰め込むんじゃなくて、テーマごとに小さな単位(モジュール)へ切り分ける。そして、それらを自由に再構成できるようにする..そんな書き方ができるようになりたいな、と最近思うのだ。

気になる文献

  • https://westminsterresearch.westminster.ac.uk/download/846a6b707fbe0a86b46771b881775ef76f9297806cd948a3604f291a11d673eb/7896749/Giovanni_NAVARRIA.pdf

    • thus, not surprisingly, there is no mention of building a network for military
      reasons in the original documents outlining the new network. In the initial plan
      for the Arpanet presented at the CM Symposium at Gatlinburg, October 1967,
      Roberts (1995) gave a series of reasons to establish the network, none of these
      reasons were concerned with military issues: sharing data load between
      computers; providing an electronic mail service; sharing data and programmes;
      and providing a remote service to log in and use computers located remotely.

  • 1993年に Alan Kay 自身によって書かれた論文

    • Alan Kay が技術で何ができるかではなく、何を作りたいかに重点を置いていたことがわかる資料

https://worrydream.com/EarlyHistoryOfSmalltalk/

  • Alan Kayとは

    パーソナルコンピュータの父と呼ばれるのは、アラン・ケイ(Alan Kay)です。彼は、オブジェクト指向プログラミングやGUI(Graphical User Interface)の概念を提唱し、Dynabook構想を通じて、個人が持ち運び可能なコンピュータの可能性を示しました

  • ARPAモデル

NOTE

  • 「票」を求める言葉がすべてではない..でセクション作ろうと思って書いてたけど長くなってしまったし結構エネルギー使うので今回は割愛

    • ケネディ(Dwight D. Eisenhower大統領の次の大統領)を選出した大統領選まで話が膨らんでしまった。「ミサイル・ギャップ」の話とか
  • ARPA、そして NASA は当時のDwight D. Eisenhower大統領アメリカの科学技術研究を促進するために設立した組織であるが、彼は大統領退任時にした演説で非常に示唆に富む警告をしていることは注目したい

  • 分かりやすい関連話で言うとアインシュタインじゃないだろうかと思ったが状況は調べてみたら複雑だったので割愛した

    • 彼は彼の研究がまさか原子爆弾という兵器利用に利用されるとは思っていなかったのではないかと。想像してみた。彼が技術開発するときに「どうやって素晴らしい兵器を作るか」だけを考えていたと思うか?と。
    • 調べてみたら状況は似ているにみえるものの、複雑だったので気軽に例に持ち出すことは今回やめることにした

Discussion