インターネット/イントラネットの動的コンテンツ
久野

靖∗

1997.7.17

1

はじめに• [B.] ホームページで画像や音声のたっぷり入った情報が見られるもの。

筑波大学公開講座「ネットワーク社会を支える技術」に• [C.] 世界最大のパソコン通信。

ようこそ。本日 4 日目は、私こと久野が「インターネット/• [D.] ネットワークのネットワーク。

イントラネットの動的コンテンツ」という題でお話をさせて頂きます。

□ インターネットとは?

最初に私自身のバックグラウンドについて述べさせて頂→ 「各地のネットワークを相互接続することで、世界全体をカバーすることとなっきます。私自身の専門は「プログラミング言語」「基本ソフ

た、巨大なネットワークの集合体」

トウェア」「ユーザインタフェース」などでして、ネットワー
Network

クの専門家というわけではありません。ただ、インターネッ
ト/イントラネットは非常に広い範囲の技術の集合体であ

Network

り、その中には私の専門である基本ソフトウェアと重なり合う部分も多くありますし、Java 言語などはプログラミン
グ言語そのものなわけです。また、WWW の利用が広まったころにそれに関係する書籍の翻訳をさせて頂いたことなInternet == "Network of Network"

Network

どもあり、このようなお話をさせて頂く機会を得ることとなりました。

□ ちなみに「イソターネット」という用語もある

ただし、上述のように本日のテーマの範囲はとても広い□ インターネットのはじまりは…

ため、2 時間という時間内ですべての話題について詳しく説明していくのはまったく不可能です。しかし皆様としては• 1960’s → ARPANET。米国で軍が予算を出して研究。

このテーマに関係のある用語はひととおりカバーして欲しいだろうと思いますので、基本的に広く浅く概要を説明し• 1970’s → その利便性が計算機科学者に知られ拡大。

ていき、いくつかの重要な/多くの人が興味を持たれるであろう箇所についてだけ重点的にやや詳しく取り上げる、という形を取りたいと思います。しかしそれ以外の箇所でも、興味があれば随時質問をして頂いて結構です。私に分かる• 1980’s → 米国:
プロジェクト。

国がサポート。日本:

WIDE• 1990’s → 急激に成長し、情報社会のインフラと範囲でお答えして行きたいと思います (私がすべての話題になる。

ついて熟知しているわけでないことはご了承ください)。

• 2000’s → ???

では、よろしくお願いします。

□ インターネットの何がすごいのか?

2

ネットワークと WWW• A. いくら使ってもタダ???
• B. 距離や時間の概念を消滅させる。

□ QUIZ: インターネットとは何だと思いますか?

• C. いつでも、どこでも、誰とでも → モーバイ

• [A.] サイバースペースでネットサーフィンができるところ。

ル技術• D. 汎用の/万能のメディア → 計算機技術の効果□ WWW 以前のインターネット∗ 筑波大学大学院経営システム科学専攻1• 最初のネットワークサービス → 電子メール ==郵便• Web ペ ー ジ は HTML(HyperText Markup
Language) で記述されている• 電子ニュース → テキスト記事のブロードキャス
ト• HTML では、文章に「ここは表題」「ここは箇条書」
といった印 (マークアップ) を付加することで構• telnet → 遠隔ログイン

造を規定• ftp → ソフトウェアの配布 → フリーソフト文<HTML><HEAD><TITLE>Sample Page</TITLE></HEAD><BODY><H1>サンプルページだよーん</H1><UL><LI>なんか<LI>かんか<LI><A HREF="page9.html">戻る</A></UL></BODY></HTML>化• gopher → メニューベースの情報システム• wais → キーワード検索ベースの情報システム• …で、多くのものはあったが、すべて「バラバラ」で各種のコマンドを操らなければ使いこなせなかった。
□ WWW の生まれたきっかけは…

• リンクも「ここがリンクで、選択されたらこの URL
へジャンプ」と指定• CERN(欧州粒子物理研究所) の Tim Berners-Lee• Web ブラウザ (WWW を見るためのプログラム) はHTML ファイルを整形してそれなりに表示 → どが考案• ハイパーテキスト → 文書の中に、他の文書へのう見えるかはユーザの環境によって変化

リンクが埋め込まれている → リンクを選択する• リンクを選択すると、Web ブラウザは対応する URLと、そのリンクにつながっている文書にジャンプの資源 (Web ページに限らない) を取り寄せて来する

る → それが HTML ファイルならそれを表示
Web PageLink□ イントラネットの出現
Link• WWW の急速な広まり → その使いやすさ、非専門

Web Page

家への浸透性の認識 → 企業情報システムにも適用したい• しかし、インターネットは「公道」 → 部外秘な情報は流せない• 伝送容量も限られている → それに適合した利用

Sound/Video/Image Data

しかできない→ 要するに「仕事に合わせる」こ
とはできない• WWW は、ネットワーク中に「くもの巣 (Web)」の• 半面、以前から企業は社内ネットワークを保持 (オようにまたがったハイパーテキスト

ンラインシステム、社内電話、…) → これらを• 個々のページはネットワークの各所にある WWW サー

TCP/IP で (インターネットと同一の技術によっバによって提供されている。
• ネット ワ ー ク 上 の 資 源 は す べ て URL(Uniform
Resource Locators) によって指し示すことができるて) 運営 → 「イントラ」ネット• イントラネット間の接続…社内専用線のこともあプロトコル 所在↓↓
news:<5315$fw27@gssm.otsuka.tsukuba.ac.jp>
mailto:kuno@gssm.otsuka.tsukuba.ac.jp
http://www.w3.org:80/hypertext/index.html
↑
↑
↑
サーバ
ポート ディレクトリ+ファイル

るが、これは高価 → インターネットによる中継:「エクストラネット」 (inter :クをまたがる」、intra :「ネットワー「内部の」extra :「外部の」)□ イントラネットの用途は…

• 「社内むけのインターネット」。実際には「社内• この「どれでもあり」な URL が WWW のキーアイデ

むけ WWW」がメイン?

アの 1 つ2• <TT>image/gif</TT> --- GIF イメージ

• データの保護、帯域の保証、必要なソフトの導入→ 「仕事に使える WWW」

3

• <TT>application/postscript</TT> --PostScript コード• <TT>text/x-server-parsed-html</TT> --サーバ解析 HTML(SSI)

インターネットのコンテンツ□ コンテンツとは?

→ 「中身」のこと。封筒の中身で□ このように「<TT>種別/副種別</TT>」という形をしても、鞄の中身でもいい。しかしここでは、インターネッ

いる。
「<TT>x-</TT>」で始まるのは「まだ正式規格じゃ

ト上の情報流通技術 (典型的には WWW) の上でやりとりないよ」

される「情報」のこと□ 静的コンテンツとは?

□ 連続メディア → インターネット電話、インターネッ→ 一度送られると、もはや変ト TV、インターネットラジオのように、「ずーっと続い

化しないもの。典型的には、Web ページそのものているような」メディア → そんなデータ、どうやっ□ QUIZ: 次のもののうち、静的「でない」コンテンツはて配送するんだと思います?

どれか□ マルチキャスト → 1 対多通信。テレビのようにチャ• A. 写真などの画像

ネル番号があって、それぞれの節目のところで「この• B. ムービー (動画) ファイル、サウンド (音声)

チャネルはこっちの方へも流してくれ」などと頼める

(cf.

ファイル

通常の通信==unicast)• C. アニメーション GIF(ページの中で絵が動く)• D. リアルオーディオ、インターネット電話• E. アクセスカウンタ□ マルチメディアとは?

→ 計算機の内部では、いちば

Unicastん多く使われる情報表現 (メディア) は「文書」。だからそれ以外はすべてマルチメディア。たとえば:• 画像、動画、音声• その他… におい、動き、などなど???
Multicast□ このため、WWW は「ハイパーテキスト」でなく「ハイパーメディア」だという説も□ この機能がないところを通るときは「トンネル」を掘っ□ 「マノレチメディア」という用語もある□ コンテンツの種別とは?

て通過する→ MBone (Multicast BackBone)→ 要するに上で述べたよう□ なぜマルチキャストが重要か?

な分類のどれか。だけでなく、ファイル形式なども問題→ 本当に大量の連続となる。「このプログラムでは GIF は読めるけど JPEG

メディアを多数のユーザが受け取るには、これしか方は読めない」など法がない。通常の 1 対 1 通信 (ユニキャスト) では、送□ MIME とは?

り切れない→ MIME は「Multipurpose Internet□ それで結局、動的コンテンツとは?

Mail Extension」。要するに電子メールで普通の文→ 広い意味では、書以外の何でも送れるようにするための規格。 WWW で「送り始めるときに内容が決まっていない」もの (だかはいろいろなデータを送るのに MIME の規格が援用さらラジオなども含む) → ここではもっと狭く、
「プロ

れてる

グラムできるようなコンテンツ」□ MIME タイプとは?

→ MIME で規定されている、コン

テンツ種別の表記法。たとえば:4• <TT>text/html</TT> --- HTML テキスト

動的コンテンツの基本: CGI と SSI□ CGI とは?

• <TT>text/plain</TT> --- ただのテキスト→ Common Gateway Interface の略。そのココロは、Web サーバから下請けプログラムを呼び3

□ CGI とフォーム → CGI を普通のリンクから呼び出す代
わりに<TT>FORM</TT>タグから呼び出すことができる→ フォームのデータが URL 符合化と呼ばれる形に変換されて CGI に渡される → CGI ではフォームのデータを受け取って処理 → そこから先は他の CGI と同じ。
たとえば 2 つの数を足す、というのをやってみる。

出す際の決まりごと。この呼び出されるプログラムのことを「CGI プログラム」と呼ぶ• Web サ ー バ と ブ ラ ウ ザ は HTTP(HyperText
Transfer Protocol) で通信• HTTP では、ブラウザとサーバがさまざまな情報を交換<FORM METHOD=POST ACTION="s4-test2.cgi"><INPUT TYPE=TEXT NAME=A>たす<INPUT TYPE=TEXT NAME=B>は?
<BR><INPUT TYPE=SUBMIT VALUE="計算!"></FORM>• CGI では、プログラムを呼び出す際にブラウザからの情報を利用可能にする。逆にプログラムからデータに加えて各種の情報が返せる
Web page
Browser

PATH=/usr/local/bin:$PATH← cgiparse を使うための設定
eval ‘cgiparse -form‘← cgiparse で引数を受け取る
echo ’Content-type: text/plain’echo ’’
R=‘expr $FORM_A + $FORM_B‘←足し算するecho "$FORM_A + $FORM_B = $R" ←結果の表示

ServerWeb page(HTML)

CGI

これを処理する CGI は次のとおり。

requestHTML file

requestBrowser

ExecuteServerCGI output

OutputCGI□ CGI の基本 → 単に URL で指している先が CGI プログ
ラムだと、そのプログラムが起動されてそれが返した
結果がブラウザに返される。たとえば次のようにすれ
ば好きなコマンドの出力を送り返せる
echo ’Content-type: text/plain’知echo ’’
date
uptime□ イメージマップ → CGI をイメージ (画像) のリン
ク か ら 呼 び 出 し → マ ウ ス で ク リック し た 位 置 が<TT>QUERY STRING</TT>で渡される → どの位置でクリックしたらどの URL へ行く、というデータ (マップ← MIME タイプを通ファイル) を参照 → その URL へジャンプせよ、という HTTP 応答を返す←ヘッダの終り□ SSI: CGI の兄弟分 → HTML ファイルの一部に特別なコマンドを埋め込み → 具体的なコマンドとして、任これを呼び出すには単にリンクでこれを格納したプロ
グラムを指定すればよい:

意のプログラムを起動したり、CGI を呼び出せる → その結果をその位置に埋め込む<A HREF="s4-test0.cgi">テスト起動</A>□ DB アクセス → お仕事で CGI を使う場合の典型的な用途 → DB 機能は CGI に一緒に組んでもよいし、DB□ CGI
へ の パ ラ メ タ 渡 し → URL
の 一
部 が
CGI
に 渡 さ れ る 。具 体 的 に は<TT>QUERY STRING</TT>(「<TT>?</TT>」よ り 先の部分) と<TT>PATH INFO</TT>(CGI プログラム名と「<TT>?</TT>」にはさまれた部分がそう

サーバを別に動かして CGI からこのサーバに接続して
もよい
HTTPD
CGI

echo ’Content-type: text/plain’ ← MIME タイプを通知echo ’’←ヘッダの終り
echo $QUERY_STRING←以下テキストデータ
echo $QUERY_STRING
echo $PATH_INFO
echo $PATH_INFO

2tier
DB
HTTPD

DBserver
CGI

3tier
DB

と い う よ う な シェル ス ク リ プ ト を<TT>s4-test1.cgi</TT>と い う ファイ ル に 入 れておいて次のようにすると、これらのパラメタつきでプログラムが呼び出せる:□ なぜ今さら CGI か?

→ CGI はサーバ上で好きなプロ

グラムを起動することができる → 既にあるプログラ
ムを WWW に組み込める□ CGI の弱点 → 世界中のどこからでも呼び出され得る<A HREF="s4-test1.cgi/hihihi?booboo">テ ス ト 起
動</A>→ セキュリティ対策をしっかりしないといけない4

□ その他の CGI の可能性 → サーバ上のデータを複数人• インストールしようにも、特定プラットフォーム
用しかない → WWW のクロスプラットフォーム性で共有するようなものなら何でも → たとえば我々はビジネスゲームのシステムを CGI で開発し授業に使っ

の喪失

ている

5

6

クライアント側の拡張: ヘルパーとクライアントプログラミング: Javaと Active-X

プラグイン□ ヘルパーもプラグインも、基本的にはできあいのデー
タを持って来て演奏/表示するだけ (Shockwave for□ 「ブラウザは、すべての種類のコンテンツを扱えるわ

Director などはある程度動作も記述できるが…)

けではない。」当たり前。
→ ヘルパー (補助) アプリケーショ□ CGI では任意のプログラムが動かせるが、サーバ内で

ン → MIME タイプごとに、もしそのようなファイルが動くため、やりとりに時間が掛かる → アニメーショ

やってきたらどのプログラムを起動して表示/演奏するンや対話的操作などには向いていない□ ではどうする?

かを指定しておく (もちろん、HTML などいくつかの基□ そこへ出現したのが Sun の Java とアプレット。その本的なデータはブラウザが自ら処理する)

基本的な考えかたは、ブラウザにインタプリタを組み込み、ダウンロードしてきたコードをブラウザの窓の

displayby itself

MIME
type

「中で」実行させるというもの。

browser
HTTPD

helperbrowsersave to
disk

HTTPD
Java
VM

□ 処理できるヘルパーアプリケーションがない時は?

Java
bytecode→Java
threads

ファイルとしてダウンロードして、ディスクに保存□ ヘルパーアプリケーションの例:□ Java の歴史:

各種のビューア(PostScript、dvi、PDF、QuickTime Video、AVI、各
種音声…

• Sun Microsystems 社はワークステーションメー□ ヘルパーアプリケーションの問題点 → あくまで別の• 研究開発の一環として、家電組み込み情報システム

カーの老舗

プログラム → ブラウザの機能と融合というわけには

用言語/システムというのをやっていた → Java

行きにくい (ある程度はできる。たとえばヘルパー上

言語とインタプリタ

で何かを選択するとブラウザが対応するページを表示• タイムワーナーの VOD 実験に応募して敗れる →するなど)

プロジェクトは撤収 → チームの一人が HotJava□ プラグイン → 「より密接な」ヘルパーアプリケーショ

ブラウザを開発 → 評判を呼び、Java ブームにン。ブラウザの窓のなかに「埋め込まれた」形で実行• HotJava はすべて Java で書かれていて、Java イ→ ブラウザとの連帯もよりスムーズ。代表的なプラグ

ンタプリタを内蔵しているので、画面の中で Java

イン:

プログラムを動かすのは造作もなかった (しかしShockWave for Director

アイデアはなかなかだった)□ 問題点 → ありとあらゆるファイルを見るために、ありとあらゆるヘルパーやプラグインを持って来てイン□ Java の技術的に興味ふかい点:

ストールしなければならない。

• プラットフォーム独立 → Java ソースコードは• いくらディスクがあっても足りない。肥大ソフト
文明

Java 仮想マシンコードへのコンパイルを行う →仮想マシンがあればどのような計算機でも動く• 持ってない人には見えないコンテンツだらけ• 実行性能の工夫 → その場コンパイラなどの高速化技術

5• オブジェクト指向 → Java 言語はオブジェクト指向言語。C++を綺麗にした、という感じ• ただし、Microsoft の Java は Microsoft 文明でこそうまく使えるように巧みに誘導? これに対• 豊富な API --- Java ブームになったおかげで、し、Sun は 100% Pure Java で対抗している

さまざまな用途のためのライブラリ API が用意さ

□ Active-X → Microsoft が Java Applet に対抗するれるようになった。

もの。複数の部品 (Active X Control) をブラウザに持ってきて動かすことができる□ インターネットがらみではセキュリティはとても重要• セキュリティサンドボックス → アプレットは基• Java がバイトコードをダウンロードしてきて動本的に危険 (どこの何とも分からないコードがダ

かすのに対し、Active-X ではマシンコードをいウンロードされてきて動く) → アプレットにできなりダウンロードしてきて動かす

きる操作を制限した。ファイルの読み書き、プロ• そのため、実行速度は速い

グラムの起動は一切禁止。ネットワーク接続はダ• しウンロード元のサーバとのみ可能
NOsecurity
sandbox

NO

Java
VM

か

し

、WIntel(Windows + Intel

Processors) のみを前提• マシンコードなので、何でもやり放題 → ディジ
タル署名によって信頼できる人が作っていること

HTTPDを保証といっているが… → 本当にそれで大丈夫

OK

なの?

• ディジタル署名 → 署名を通じて信頼できること

7が証明されたアプレットに対してはこの制限を緩められる (JDK 1.1 から)

ク ラ イ ア ン ト ス ク リ プ ティン グ:

JavaScript と VBScript□ Java でできること、できないこと…

□ Java は簡単、とか言われてもやはりあくまでもプログ
ラミング言語であり、プログラミングの素養のない人• ○ 普通のプログラミング言語だから、普通にプには書けないログラムでできることは何でもできる (別にアプレットに限るわけではない)□ そこで、もっと簡単に誰にでも書けるような、簡単な言語を→ スクリプト言語• ○ アプレットは WWW のページに埋め込まれた知的なユーザインタフェースとして使うことができる□ Web サーバの中で動くスクリプト言語… Netscape• ○ 豊富な API によってさまざまな仕事がこなせる

Navigator の JavaScript (もとは LiveScript だったが、Java ブームのときに Sun から名前を買った)• ○ プ ラット フォー ム 独 立 。Write once, runeverywhere• 構文的には Java に似ているが、クラスを作ったりしない。

• △ 実行速度は JIT がないと遅い• △ アプレットはセキュリティモデルによる制約• 実行は普通のインタプリタ方式がある• できること…その場でページの内容を生成する、
簡単なユーザインタフェースを作る、どこかへジャ□ Microsoft と Java の関係は…

ンプする、など• Microsoft はパーソナルコンピュータ界の「帝□ Microsoft は対抗して…

国」… OS も、アプリケーションも、言語処理系
も圧倒的なシェアで支配• Microsoft Internet Explorer
でJavaScript をサポート (名前は JScript)• ところが Java は Microsoft ではない → 最初は静観、敵対 → 非常なブームになったので取り込

も• おなじみ VisualBasic と同じ構文、というウリ

みを計る (ビル・ゲイツの才覚?)

で VBScript というのもサポート• たとえば Visual J++などの処理系、Microsoft
Internet Explorer での Java サポートなどなど
6

□ 要するにクライアントスクリプティングに向いたこととは?

9→ 本格的なプログラミング言語でなくてもでプッシュ技 術:

Marimba

きる程度のことで、ちょっとページの使い勝手を味付けするようなものを作成□ プッシュ技術とは?
□ プル技術とは?

8

PointCast、→ プル技術の反対→ プッシュ技術の反対…じゃなくて。

サーバ側プログラミング: サーブレ

→通常の WWW では、URL によって指し示されている情ット

ジナルそのものの情報が取れるし、事実上利用可能な報源に情報を取りに行く → だからこそ、最新の/オリ
情報の量に限界がない → 「取りに行く」を pull と□ クライアント側プログラミングが可能になった今、CGIのようなものは不要か?

表現→ そんなことはない。共有される情報はサーバに置くしかない。

serverpull□ しかし、CGI は起動すると、独立したプログラムとしserverbrowserて動作し、そのまま終ってしまう → 小刻みなやりと

access(select links)

りには不向き、状態を保持するのが面倒

serverpush□ このような問題に対して、Sun が提唱しているのがbrowserserver「サーブレット (Servlet)」…アプレットの反対 (?)

browser
distribution(automatic)• サーバの中に、動的にロードできる。必要ならネッ
トワーク経由でも□ ではプル方式の弱点は?

• サーブレットもセキュリティサンドボックスを使用• どこに取りに行くか知っていないと取りに行けな
い → 面白い情報を探すのは結構大変• 一度実行を始めると、サーバの中でずっと動いている• 情報が変化したかどうかは再度取ってみないと分• クライアント (とくにアプレット) と簡単に通信できるからない → ようやく取ってみたら同じだったりする• これらの特性を活かして、複数のクライアント間で情報を共有するようなシステムが容易に作成で• 取ろう、と思ってから取り終わるまでに (ネット
ワークが混雑してる時はとりわけ) 時間が掛かっ

きるていらいらするServerbrowserServlet□ ではプッシュ技術とは?

→ 「こういう話題を取りたい」と登録しておく → 登録元は、登録した人に向かっJavaVMて情報を送り込む == push□ Sun の Java Web Server 以外にも、WWW コンソーシア• 登録したカテゴリの新しい話題は自動的に送られムが開発し公開している Web サーバ Jigsaw もサーブて来る → 取りに行く手間もないし、どこに取りレットをサポートしている。また、Apache、Netscapeにいくかも心配しなくてよい

Server や Microsoft Server などもサポートしている (らしい)。

• 新しい情報があれば自動的に送られて来る• 読もうと思った時はそこにある → タイムラグが□ なお、Web サーバの機能をカスタマイズして拡張する

なくなるメカニズムはいろいろある → ただしその多くはサー□ 技術的にはどうなってるのか?

バをコンパイルして組み込んだり、管理者が設定 →→ プッシュといいながら実は…クライアント側で定期的に「何かない?

サーブレットのように実行時に自由に、というのはな

あったらちょうだい」とサーバに問い合わせている。ユー

さそう

ザが介在しないだけ → 用もないのに読みもしない情報を転送している?

→ このため、ネットワークへの負荷がどんどん増しているという説も7

来ている → 新 TCP/IP(IPv6) に以降すれば、もっと□ PointCast --- 電光ニュースのイメージ。いろんな情

自由にどこでもマルチキャストが利用?

報を送りつけてきて、なんとなく眺めることができる。

□ なお、インターネットラジオとかインターネット中継• いかにも情報が無駄そうだが、登録時にユーザプなどもすべてマルチキャストを利用している。これら

ロフィールを尋ねてきて、興味のありそうなチャはあんまり push などとは言わない (WWW とは別だてだ

ネルを設定してくれる。

から?)• 取り始めた後でもチャネルの取捨選択が自由。CNNとかスポーツとか天気とかさまざまなのがある。

• 自動配信されるのはトップ記事レベルだけで、より詳しく見たい場合は通常のブラウザと同じよう

102 次元から 3 次元へ: VRML97□ Web ページはどんなにすごく飾っても、あくまで 2 次にして取り寄せる (待たされる)。

元の世界→ 3 次元が欲しい!

• とはいえ、PointCast のせいでネットワーク帯域という人は初期のころからいたがあっという間に逼迫した、という説もあり。

□ 一 方 、「 バ ー チャル リ ア リ ティ(virtual reality、□ Castanet (Marimba 社) --- ユ ー ザ は Castanet

VR)」(実際には存在していない 3 次元空間の映像をTuner を操作して、チャネルを眺め、面白そうなチャネルに登録する。

計算機内部の計算で作り出し、ユーザがその中を航行できるようなもの) の技術が確立してきた• 登録したチャネルは定期的に内容の更新をチェック
し、変化があると変化した分だけを転送してきて、□ 蛇足ながら、「補完リアリティ(augmented reality、

ユーザの手もとには常に最新の内容が残る (こち

仮想世界なのに対し、AR は現実世界のモノに計算機

らは帯域の節約になりそう!)によるサポートを追加していく• チャネルの内容としては、Java アプリケーショ

AR)」というのもある → VR が現実世界から途絶した□ VRML1.0:

ン、Java アプレット、HTML ページ、Bongo プレ

VR や CAD などで使う空間モデル記述ファ

イルを改良して、3 次元空間とその中にあるモノをゼンテーションがある。

記述できる言語を設計 → VRML (Virtual Reality• 話だけ聞くとなんということはないが、実際に待たされずに大きなアプレット等が動くのを見るとModeling Language) と名づけた → VRML ブラウザに VRML ファイルをロードすると、ファイルに記述さなるほどと思う。

れた 3 次元空間の中をナビゲーションできるようにな• 途中で切れて止まってしまっても、その続きからやってくれるる → さらに、リンクとして指定されたモノに到達す• ネットワークに繋がっていなくてもいい → モーい) に飛ぶ

ると URL で指定されている別のモノ (別の空間でもよ

バイルコンピューティングのニーズにぴったり!

□ VRML1.0 は「すごい!

これからは 3 次元だ!」というわけでもてはやされた → しかし、記述された空間は

subscribe/
automatic update

変化のない死んだ世界であり、いるのも自分だけ →transmitterchannels□ 真のプッシュ:

その限界からわりとすぐ飽きられた

Tuner□ もともと VRML を作った人たちの意図 → 仮想空間 (サdownloaded
channels

イバースペース) を作った後で → モノに動きを与え、また複数のユーザが 1 つの空間を共有できるような仕マルチキャスト → これなら多数の掛け (サイバーワールド) が欲しい → そのための機ユーザが登録しても、1 回送るだけで全部に行き渡る能の提案 → 複数の提案が競った結果、Sony ほかが中

(現在は N 人のユーザのためにサーバから N 回送っているのでひどく無駄)□ 問題点:

心となって推した案が通る → VRML2.0 (国際規格に→ VRML97)

マルチキャストはすべてのサイトに通ってい□ VRML2.0 はイベント+スクリプティングモデル → VRML

るわけではない (MBone サイトのみ) → マルチキャス

言語としてさまざまなノードを定義し、そのノード間トに使えるチャネル数も限られている → これらはすの情報流通経路を「ルート (route)」として定義 →べて現在の TCP/IP(IPv4) の実装と設計上の限界から

8

では次に、イントラネットについてはどうでしょうか。イ

たとえば「このスイッチに触るとこのランプの灯りがントラネットはインターネットと同じ基盤技術に基づいてつく/このモノがこう動く」といった動作が可能□ しかし、より高度な動きや他のプログラムとの通信、 おり、したがって企業内での個人メディアのインフラとしファイルの読み書きなどは VRML の中では規定しない てインターネットと同様に使うことが、まず可能です (も→ 代わりに、VRML の中で定義できる「スクリプト」 ちろん、企業の設備ですからその上で何が許されるかはイノードにプログラムを対応させることで、普通のプロ ンターネットとはだいぶ違ってくるでしょうが)。たとえば
電子メールによって組織内の情報流通のあり方がだいぶ変

グラム言語を使って任意の処理が行えるようにした →わった、というのは多くの人が知っているところだと思いその言語としては、Java がまず使われている → つます。

まり、世界の記述や表現、ユーザの操作の受け取りは

VRML、動作の記述は Java、という分担になっている

しかし、イントラネットの場合、もう 1 つの側面として「組織メディア」があるように思います。たとえば、インター

VRML 2.0

ネット側からある企業のページを見た場合、そこには企業

DEF Cube_1 { ...

としての統一された「顔」があるわけです。一方、イント

DEF Cube_2 { ...

ラネット側から見た場合、その統一された「顔」やその他

DEF Ball { ...
DEF Triangle { ...

組織の活動全般がネットワークによってサポートされ、全

DEF CubeScript {...

体として組織の円滑な運営を可能にしていく、という面がDEF Ballcript {...

あり、これはインターネットにおける「個人メディア」とはだいぶ性格を異にしていると思うわけです。
たとえば、グループウェア (ロータスノーツや Microsoft

Javapublic class Ball... {...
}Outlook など) は既に多くの企業で取り入れられています
が、今後さらに進んだ企業では自社の情報流通や企業文化

public class Cube... {...
}に適合した、専用の/カスタマイズされた情報システムをイントラネット上で稼働させていくようになると考えます。こ11

最後に: ネットワークはどこへ?

れらが旧来の「企業情報システム」と違うのは、単に特定の仕事 (会計管理、人事管理、情報分析など) 用のシステム

ここまでで、インターネット/イントラネット上に現在存とは異なり、人間のおこなう企業活動をトータルでサポー在しているさまざまなコンテンツとその技術について見てトする有機的なシステムになるだろう、ということです。

きました。最後にまとめとして、これらが今後どのように

そして、そのような組織メディアの実現手段としては、こ発展し、社会にどのような影響を与えて行くかについて少

こまでにお話してきたような「動的コンテンツ」が最も必し考えて見たいと思います (放言ともいう)。

要とされる技術になるのではないかと思います。そして、個

まず、インターネットのこれまでにない最大の特徴は、す人でできる動的コンテンツ開発に比べて、組織として投入

べての利用者が自分の関わりたいものだけを選んで見聞きできる資源はずっと多いので、より高度なシステムが作らでき、それでいて世界中に情報を流通させることもできる

れる可能性も大きいでしょう。ただし、だからといって個「個人メディア」だと考えます。この点が、多数の視聴者向

人の手による動的コンテンツがつまらない、ということはけだが「一方向たれ流し」のマスメディアや、相互にやり全くありません。それは、ネットワークには「深さ」と「広とりできるが 1 対 1 のメディアである電話や信書と決定的さ」の両方が必要だと思うからです。

に違っています。

では、本日はどうもありがとうございました。

では、「動的コンテンツ」の方はどうでしょう。動的コン
テンツは内部にプログラムを含んでいますから、その作り方によっては自律的に動作し、利用者が自らマシンの前に座って応答しなくても、それに代わってコンテンツを取り出した人たちとやりとりして行くことができます。その意
味では、動的コンテンツは「1 次個人メディア」から「2 次個人メディア」への進歩を意味している、と言ってよいかも知れません。

9