インターネットのトラフィックを水の流れで視覚化「IIJの川」(Maker Faire Tokyo 2020)
2020年10月02日 金曜日
CONTENTS
IIJ広報部の堂前です。
現在の所属こそ広報部ですが、元々はプログラムを書いたりサーバ・ネットワークを弄ったりするエンジニアでした。さらに遡ると、8bit CPUの時代からBASICでやくたいもないプログラムを書いており、そういう電子系の物作りが趣味でした。
こういう物作り趣味の人たちが集まっているイベント、Maker Faireはもちろん以前から気になっていて、今までにも何度か参加しています。今回は「IIJ Maker部」として、自由研究で作った作品を出展することになりました。
目に見えないインターネットを体感する
今回私が制作した「IIJの川」は、目に見えない、インターネットを流れるデータ(トラフィック)を物理的な量である「水の流れ」で表現する作品です。展示用のスマホでアプリを動かすと、インターネットからデータが流れてきます。それにあわせて水が流れる、そんなデモをお見せします。
私が所属する会社IIJは、インターネットから流れてくるデータを皆さんのパソコンやスマホに流す、また、反対に皆さんのパソコンやスマホから送信されたデータをインターネットに流すことを主なお仕事にしています。(こういうお仕事を「ISP」「インターネットサービスプロバイダ」と言います)
私がISPの中の人になった二十数年前と比べると、現在は驚くほどインターネットが普及しました。一方で、インターネットが普及し当たり前になればなるほど、「データが流れている」ということが実感されなくなったのでは、と感じています。たしかに、インターネットを流れるデータは直接目で見ることはできませんから、実感を持つのは難しいと思います。
そこで、インターネットを流れるデータをなんとかわかりやすく見せられないかと考えたのが、今回の作品です。
IIJのネットワークを流れるデータは、まるで川の流れのようじゃないですか?と考えて「IIJの川」と名付けました。
データの「タイミング」と「量」
といっても、ただ単純に「データが流れたから水が流れます」では面白くありません。そこで今回は、データの流れる「タイミング」と「量」に着目して、それを水の流れに反映させることにしました。
ネタばらしになってしまいますが、実はアプリを使っているときにデータが常に流れているわけではありません。アプリによって、データが流れるタイミングが異なっているんです。
次のグラフは、アプリごとのデータが流れるタイミングを示したものです。横軸が経過時間、縦軸がそのときに流れたデータ量を表しています。Webの閲覧では、データが流れるのが一瞬だけというのがわかりやすいですが、動画の再生は数秒おきにしかデータが流れていないというのは意外ではないでしょうか?さらに、同じ動画が流れているアプリでも、TV会議アプリになると、常時データが流れ続けています。(なぜ、そのような違いが出るかは、会場で質問してください)
もう一つの「量」は、先ほどのグラフの縦軸で表されています。たくさんのデータが流れれば、たくさんの水を流す、そういう表現ができるように、水の流れを制御する「ソレノイドバルブ」を4つ搭載し、バルブが開く時間を調節することで水の量を変化させています。
会場でのデモンストレーションでは、実際にアプリを動かしてみて、そのときに流れるデータ量を計測して水を制御します。
作品の構造
今回の作品の中身は、大きく三つの要素に分かれています。
トラフィック計測部
スマートフォンに流れるデータ(トラフィック)を計測します。ここでは、Raspberry PiをWi-Fiルータとして動かしながら、トラフィックを計測しています。
ソレノイドバルブ制御部
計測されたトラフィックに合わせて、ソレノイドバルブをどのぐらいの時間開けるか、という制御を行います。Raspberry Piからシリアル経由で指示を受けたArduinoが制御を行います。
水タンク・ソレノイドバルブ
水タンクからホースでつながれたソレノイドバルブに水が流れます。ソレノイドバルブは電磁石の一種で、電気が流れているときにバルブを開けて水を流すようになっています。
会場でお待ちしています
今回のMaker Faire Tokyo 2020は、感染症対策のため入場時間が指定されるなど、昨年までと参加方法が変更になっています。主催者からの案内をご覧の上、会場までお越しください。