MBoneネットワークの使い方 (受信編)

TAINS 利用研究会 曽根 秀昭
TAINS 利用研究会 齋藤 武夫
TAINS 利用研究会 岡本 東

1 MBoneネットワークの役割

 インターネットを介して音声や画像を放送するための使われている技術としてIP マルチキャストがあります。IPマルチキャストを使って世界規模でいろいろな放送の 実験を行うためにインターネット上に作られた仮想ネットワークがMBoneです。
 音声や画像を送受信するものとしてはCU-SeeMeやStraemWorksなどが よく知られていますが,これらは利用したい人が自分で指定されたサーバ等に 接続する必要があり,放送とは異なります。
 SuperTAINS は既にMBoneの一部となっていますので,SuperTAINS に IPマルチキャストに対応した機器(例えばOSがSolaris2のワークステーション)を 接続していればすぐにでもMBoneでの放送を受信することができます。
 この記事では,このMBoneでの放送の受信の具体的な方法等について説明します。 送信の方はインターネット全体の約束事があって,これを守らずに行ってしまうと 全世界に迷惑をかけてしまう可能性があります。従って,MBone の仕組みを理解して, 約束事に基づいた設定を済ませるまで,絶対に送信を行ってはいけません。
 学内向けの放送の送信の方法などは,また別の機会に解説をしたいと考えています。

2 MBoneの仕組み

 インターネットのプロトコルで放送を行うためのものは大きく分けて2種類あります。 ひとつはブロードキャスト,もうひとつがマルチキャストです。
 ブロードキャストは標準的なネットワークプロトコルでもよく使われており, SuperTAINS では RIP によるルーティング情報や ntp による時刻情報などを 流すのにも使っています。ブロードキャストの特徴は,同じセグメント (同一サブネット,同一 FDDI ループ等) に接続しているすべての機器に対して 同一の情報を送るということです。
 一方,マルチキャストは,同一の情報を聞きたい機器だけに送ります。ただし, こちらもブロードキャストと同様に,同じセグメントに接続している機器に対してしか 送ることができません。
 IPマルチキャストでは,ルータを越えて他のネットワークに送るために, ある情報を聞きたいと思っている機器がどこにあるかをルータが管理することに なっています。ところが,まだマルチキャスト対応でないルータも多く,途中経路に ひとつでもそういったルータがあるとIPマルチキャストを使った通信ができなく なってしまいます。
 そこで,IPマルチキャストを行いたいがお互いにマルチキャストでは通信できない ネットワーク同士で,その間だけ普通のユニキャスト(1対1の通信)を用いて 中継するといった手法がよく用いられています。これをトンネリングといいます。
 このトンネリングを用いてネットワーク同士をつないでいき,世界的な規模でIP マルチキャストが使えるネットワークの集まりが形成されています。これが MBone (Multicast Backbone) です。
 TAINS でも外部とトンネリングを行い,MBone に参加しています。特に SuperTAINS では,基幹のFDDIルータはIPマルチキャストに対応しているため, 容易にIPマルチキャストを利用することができます。特に放送を受信するだけならば, IPマルチキャストを受け取る設定と,受信した内容を再生する(音や画像を出す) アプリケーションの用意をするだけです。
 送信の方はいろいろな約束事に基づいて設定をした後でないと,全世界に迷惑を かける可能性があります。よって,MBone の仕組みを理解した上で,どのような設定が どこに影響するかを理解するまでは絶対に送信してはいけません。

3 マルチキャストを受信する設定

3.1 既にマルチキャストが利用できるOSの場合

 Sun Solaris 2.*,BSDI BSD/386 1.1 以降と BSD/OS,DEC OSF/1,SGI IRIX 4 以降などのOSでは最初からIPマルチキャストが利用できるようになっています。
 そのOS用のマルチキャスト用アプリケーションを入手すればそのまま使うことが できます。
 またWindows95でもそのままでIPマルチキャストの利用が可能です。

3.2 その他のOSでの利用

 Sun SunOS 4.1.1 以降,DEC Ultrix 4.*,SONY NEWS-OS 4.*,HP HP-UX 9.01,IBM AIX 3.2.5などではパッチをあてることによってIPマルチキャストを利用することが できます。
 パッチは ftp://dainenji.topic.ad.jp/multicast/kernel/ から入手できます。
 これを行うにはカーネルの再構築等が必要ですし,メーカーがサポートしていない オブジェクトをカーネルの中に取り入れることになります。利用の前にパッチに 付属のドキュメントを良く読み,十分注意して行ってください。

3.3 サブネット内での利用

 SuperTAINS に直結の場合は,そのままで外とIPマルチキャストによる通信が できますが,間にルータが入ったサブネット内では下記のいずれかの方法で サブネット内でもIPマルチキャストが使えるようにしなければなりません。

3.3.1 ルータ専用機を使っている場合
 ルータ専用機ではIPマルチキャストを標準でサポートしているものがあります。 サポートしているかどうかや,サポートしている場合の設定方法等は,機種や 載っているソフトウェアによって異なりますので,お使いのルータの説明書を ご覧ください。

3.3.2 ワークステーションによるルータを使っている場合
 まず,ワークステーションのOSでIPマルチキャストが利用できることが前提です。
 そのうえで,IPマルチキャストを中継するために必要な mrouted という プログラムを動かす必要があります。
 mrouted のバイナリやソースは ftp://dainenji.topic.ad.jp/multicast/mrouted/ にあります。
 mrouted は必ず最新(現在は3.8)のものを使ってください。mrouted が OS に付属している場合もありますが,バージョンを確認し,古い場合には新しいものと 入れ替えてください。古い mrouted を使うと全世界に迷惑をかける可能性が ありますので十分注意してください。
 最初からIPマルチキャストが使えるOSの場合でも,カーネルのマルチキャスト部分が 古いものがあります。受信するだけならば古いものでも問題ありませんが,IP マルチキャストを中継するルータでは新しいものを使わなければなりません。 (古いものの上で新しい mrouted は動きません。) 新しいものに入れ替える場合は, パッチを ftp://dainenji.topic.ad.jp/multicast/kernel/ から入手してください。 注意点については,IPマルチキャストが使えないOSにパッチをあてる場合と同様です。
 mrouted の設定は /etc/mrouted.conf に書きます。書き方は,
    phyint あるインタフェースのアドレス
    phyint 別のインタフェースのアドレス
のようになります。
 仮に,このルータの SuperTAINS 基幹側のアドレスが 130.34.48.34,サブネット 内側のアドレスが 130.34.206.40 だとすると,
    phyint 130.34.48.34
    phyint 130.34.206.40
のように書いて mrouted を起動すれば,サブネットの中と外でマルチキャストの 通信が行えるようになります。
 /etc/rc.local などで起動するように書いておくといいでしょう。

3.3.3 ルータ以外で中継する場合
 何らかの理由でルータでマルチキャストの中継を行うことができない場合, トンネリングを使ってサブネット内と外でIPマルチキャストの通信を行うことが できます。
 トンネリングを行うには相手が必要ですので,どこを相手として選べばいいか等 については mbone-tohoku@tohoku.ac.jp メーリングリストに入って情報交換するのが いいでしょう。これについては最後の節をご覧ください。
 トンネリングを行うためには,それを行うためのワークステーションを用意し, 前項(ワークステーションでルータをしている場合)と同様に mrouted を用意して ください。
 /etc/mrouted.conf には,
    tunnel 自分のアドレス 相手のアドレス
のように書きます。相手側も同様な設定が必要です。

4 アプリケーションソフト

 ここまででIPマルチキャストによる通信について説明してきましたので, その通りに設定すれば MBone で流れている放送を受信できます。
 その上で受信した映像や音を再生するアプリケーションを動かすことによって, はじめて放送内容を楽しむことができます。
 映像を再生するアプリケーションは vic, nv,音を再生するアプリケーションは rat, vat,放送されている番組一覧を表示するアプリケーションは sdr, sd などがあります。それ以外では,みんなで使えるホワイトボードである wb なども よく使われています。
 放送している側の送信フォーマットによって再生できるアプリケーションが異なる 場合もありますが,ここではよく使われる sdr, vic, rat を中心に説明します。

4.1 UNIXの場合

4.1.1 アプリケーションの入手
 UNIX上で動作する sdr, vic, rat は ftp://dainenji.topic.ad.jp/multicast/ から入手できます。

4.1.2 アプリケーションのインストール
 多くはバイナリとマニュアルが tar でまとめて圧縮された形 (*.tar.gz) か, バイナリがそのまま圧縮された形 (*.gz) になっています。
 バイナリを取り出して,PATH の通ったディレクトリに置くだけでインストールは 完了です。
  例:
    $ gzip -d sdr.netbsd-i386.V2.2a23.gz
    $ cp sdr.netbsd-i386.V2.2a23 /usr/local/bin/sdr
    $ chmod 555 /usr/local/bin/sdr
 また,アプリケーションによってはソースが配布されていますので,それを コンパイルして使うこともできますが,標準でないいくつかのライブラリが 必要になる場合があります。詳しくはソースに付属のドキュメントをご覧ください。

4.1.3 sdrの利用法
 Xウィンドウシステムを使っていることが前提です。kterm などのターミナル上の シェルから sdr コマンドを実行するだけで OK です。ウィンドウマネージャーの メニューなどに登録しておいてもいいでしょう。
 起動すると図1のようなウィンドウが現れます。


図 1: sdr

 初めて使うときだけ設定が必要です。
 一番上の中央にある``Prefs''というボタンをクリックしてください。すると 新しいウィンドウが開きます。ここで上部の右端にある``You''というボタンを クリックすると図2のようなウィンドウが開きます。


図 2: sdrのプリファレンス

 名前(Name)とメールアドレス(Email)と電話番号(Phone)を入力し,右下の ``Save & Apply Prefs''というボタンをクリックしてください。 この情報は $HOME/.sdr/prefs というファイルにセーブされます。
 これで準備は完了です。
 あとは sdr のウィンドウの Public Sessions と書かれた下にある中央部分の リストの中から見たいと思うものを選んで,マウスの左ボタンをクリックしてください。 図3のような新しいウィンドウが開いて詳細が表示されます。


図 3: セッションの詳細

 この放送を受信したいのであれば左下の``Join'',やめるのであれば``Dismiss'' をクリックしてください。``Join''を選ぶと自動的に受信するための アプリケーションが起動します。(必要なアプリケーションがない場合には エラーになりますので,インストールしてください。)
 また,sdr のウィンドウで左ボタンではなく中ボタンを押せば,直接 アプリケーションを起動することができます。
 上に並んでいるボタンのうち,``New''と書かれているものは放送プログラムを 自分で作るためのものですが,このボタンは絶対に押さないでください。

4.1.4 他のアプリケーションの利用法
 sdr で映像を流している番組を選んだ場合,vic か nv が起動します。 音を流している番組を選んだ場合,rat か vat が起動します。ここでは vic と rat を 例にあげます。
 アプリケーションによっては,初めて起動したときに,名前とメールアドレスを 尋ねてくる場合があります。そのときは sdr の設定と同じように入力してくだ さい。この情報は $HOME/.RTPdefaults というファイルに保存されます。


図 4: vic


図 5: rat

 vic のウィンドウは図4のように,縮小された映像と送信者等の情報が対になって 表示されます。映像の部分をクリックしてやると本来の大きさの映像を見ることが できます。
 rat のウィンドウは図5のように,受信者一覧(左)と音量コントロール(右)に 別れています。受信者の名前をクリックすると,その受信者の情報が表示されます。 右側の音量コントロールの部分のうち,左側がスピーカーやヘッドホンの音量調整です。 好みの音量に調節してください。
 一番右側はマイクの音量調整ですが,一番上の``mute''というところが選ばれて いるので,音が外に出ていくことはありません。この部分には絶対に触らないで ください。

4.2 Windows95の場合

4.2.1 アプリケーションの入手
 Windows95 上で動作する sdr, vic, rat は以下のサイトから入手できます。
(1) ftp://cs.ucl.ac.uk/mice/sdrtest/sdrwin.exe
(2) http://www.cs.ucl.ac.uk/staff/I.Kouvelas/vic/vic.zip
(3) ftp://cs.ucl.ac.uk/mice/rat/current/rat-win32.zip

4.2.2 アプリケーションのインストール
 ここでは,PC/AT互換機の C: ドライブに標準的に導入された Windows95 の環境を 前提として,アプリケーションのインストール手順を説明していきます。
 まず,C:\sdr というディレクトリを作成し,sdrwin.exe をそこに入れます。 次に,同様に C:\vic, C:\rat というディレクトリを作成し, それぞれvic.zip,rat-win32.zip を解凍したファイルを入れておきます。
 その上で,C:\Windows\System\Sysedit.exe を起動し,C:AUTOEXEC.BAT ウインドウのPATH が記述してある行の終りに ;C:\vic;C:\rat を追加します。 ファイルメニューからシステムエディタの終了を選択すると, 変更の保存のダイアログが表示されますので,はい(Y) を選択してファイルを 保存します。
 そしてコンピュータを再起動させることで,アプリケーションのインストールは 完了ということになります。

4.2.3 sdrwin の設定
 sdrwin において,セッション情報を参照するためのブラウザの設定と,自分自身の 個人情報の登録を行わなければなりません。以下にその手順を示します。
(1) sdrwin を起動
(2) Pref メニューを選択し,sdr preferences ウインドウを表示
(3) Web Config を選択
(4) Start Web Browser ボタンをチェックし,Web Browser の部分に普段 利用しているブラウザを絶対パスで記述
 (例)C:\Program files\Netscape\Communicator\Program\Netscape
(5) Name/Email/Phone を選択
(6) Name: に所属も含めたフルネームを記述
 (例)Hoehoe Ujyaujya (GSIS, Tohoku University, JAPAN)
(7) Email: に自分のメールアドレスを記述
(8) Phone: に連絡先の電話番号を記述
(9) Apply & Save Prefs ボタンをクリックし,設定を保存
 以上で sdrwin の設定は完了です。sdrwin の使い方は UNIX 版の sdr とほぼ同じ ですので,そちらを参照してください。

5 情報交換

 MBone運用のための管理者連絡網として,世界全体の mbone メーリングリスト, 日本国内の mbone-jp メーリングリスト,東北地域の mbone-tohoku メーリングリスト などがあります。
 MBone を利用してみようと考えている方には,まず mbone-tohoku メーリングリストに 入ることをお勧めしています。詳しくは,mbone-tohoku-request@tohoku.ac.jp までお問い合わせください。
 詳しいことが知りたい方は, ftp://dainenji.topic.ad.jp/multicast/jp-mbone/ にある, mbone-jp-intro.txtmbone-jp-guideline.txt などから読んでいくといいでしょう。ただし,これらのドキュメントは若干古く, 現状に合っていない部分も多少ありますので,最新情報を得るためにも, メーリングリストに入るのがお勧めです。


www-admin@tohoku.ac.jp
pub-com@tohoku.ac.jp