これは、1995年に書いたものです。
かつて、インターネットはアメリカの NSFNET が中心にありました。アカデミッ クネットワークはほとんど NSFNET によって世界の相互接続性が保たれていま した。しかし NSFNET の AUP (Acceptable Use Policy) を承認しなければ通 れないため、コマーシャルインターネットの間は、二者の相互接続はもちろん のこと、CIX や、MAE-EAST などのいくつかの相互接続ポイントによって、 NSFNET を通らなくても相互接続を可能にするようになっていました。
NSFNET では世界中のネットワークの経路情報が保持、管理されていま した。ところが NSFNET は 1995 年春になくなりました。しかし、インターネットは 変わることなく世界中の接続性が維持されています。
インターネットでは、NSFNET にかぎらず大きなネットワークの固まりがある ポリシーをもってアクセス、通過 (トランジット) をコントロールしています。 これはインターネットのプロバイダ間の相互接続技術です。
今回は現在インターネットのプロバイダ間の経路制御はどうなっているかを大 まかに説明します。技術的な詳細よりも概念を優先して説明します。わが国で もインターネットプロバイダ間の相互接続は NSPIXP で行われています。ここ で行われている技術も今回説明するものです。
インターネットは TCP/IP の技術によって相互接続されているネットワークで あるわけですが、経路制御はネットワークアドレスによって行われます。経路 制御の基本はどのネットワークアドレスへ到達するには、どのゲートウエイを 通過すればいいかという”ホップバイホップ”ルーティングでコントロールさ れています。
世界のネットワークが、均一でどこでも通っていいなら最適な経路をホップバ イホップでつないでいけばいいわけですが、通っていいところといけないとこ ろ、通っていい人といけない人がいます。これを実現する必要性があるわけで す。
現実の世界ではビザを持っていない人は入国できない国とか、国籍がどこであ るかによって、入国に制限があったりします。また、航空機が上空を通過でき ないとかの制限もあります。この”国”に類似した固まりがプロバイダであっ たり、ある一固まりのネットワークです。
具体的な実装が、AS (Autonomous System) です。Autonomous System は文字 通り、自律システム、自治をもったシステムです。というわけで、一つの同じ ポリシーを持ったネットワーク群を含む、まとまったネットワーク群です。
AS には 16 ビットの AS 番号が割り振られています。日本国内では、IIJ は 2497 を持っていますし、WIDE は 2500 です。インターネット上では各組織に 割り当てられたネットワークアドレスは、どこか 1 つ以上の AS に属するも のとして扱われています。この AS とアドレスの関係を利用して現在経路のコ ントロールを行っているのが、BGP (Border Gateway Protocol) と、RADB (Routing Arbiter Database) です。日本国内では、現在BGPだけを使っています。
BGP による経路制御では単にアドレスだけではなく、そのアドレスの経路がど の AS を通って来たものであるかというタグがついて扱われています。
これは AS path という概念であり、ある特定の AS path を持つものを通すと か、通さないとかいう制御を行うことができるというわけです。図1 のような ケースでは、ASi に属するネットワークからの経路は、ASk を通ってくるもの は受け付けないが、ASjを通ってきたものは受け付けるという制御ができます。 このコントロールは、AS 単位での制御であり、複数のアドレスを 1 つの AS 番号に抽象化できるというメリットはありますが、もし個々のネットワークア ドレスを通す、通さないということを系統的に行う必要があるなら、別の手段 を併用する必要があります。
BGP では、隣接 AS との間で BGP の経路交換のセッションを明示的に行わな ければならないため、多数の AS が集まって経路情報の交換を行わなければな らないとき (図2, 例: MAE-EAST, NSPIXP-1) では、n×n の BGP セッション の完全結合を行わなければならないという問題があります。このために後述す る Routing Server が提案されています。
NSFNET で使われていたのは PRDB (Policy Routing Database) というもので、 このデータベースを検索して、各ルータの設定を行うようになっています。 RADB は AS690 (AS 番号 690, 旧 NSFNET) へのアクセスを必要とするものが 登録します。ほとんどのコマーシャルネットワークは AS690 を通る必要はあ りませんが、一部の米国の地域ネットワークは依然 AS690 への登録を必要と します。PRDB は NSFNET がなくなったのと同時に RADB への移行が進んでい ます。PRDB の時代とは RADB への登録は自動的に行われるようになっています。 RADB は global routing database という役割も一部持っています。
しかし、RADB は集中型のデータベースであり、ここへの明示的な登録を必要 とします。RADB への登録内容は、ネットワークアドレスと、ホーム AS、およ び AS690 へ経路が伝わるときの AS690 の隣接 AS を登録します。AS690 から 見た場合、あらかじめ登録された隣接 AS 経由でない経路は受け付けないよう になっています。現状では AS690 中心の経路情報になっています。
Routing Server の役割は、BGP セッションの軽減で、完全結合グラフ結合を 必要とせず、RS とのセッションだけでいいようになるという考えです (図3)。 現在、世界で 4 箇所で Routing Server が稼働していて、これを一部では利 用しています。
現在の Routing Server は単一のデータベースで、インターネット上の Routing Server 同士の間の情報交換に関してはアップデートを伝えあうとい う形でコピーされています。そこで、DNS に類似した分散型データベースの形 態も検討されています。
Routing Server では各アドレスのホーム AS、隣接 AS、他の AS に対するポ リシーを管理するようにしようとしています。
このようにインターネットが自律システムの集合であり、これが分散協調して、 全体の接続性が保たれています。インターネットの拡大と普及によって、より 安定した、新しい技術を必要としています。このための研究開発が常に必要と されています。
相互接続技術は、インターネットの重要な技術です。その研究は変化し、進歩 するインターネットに不可欠なものです。わが国でもインターネットの相互接 続技術の研究を行うために、WIDE Project の NSPIXP (Network Service Provider Internet eXchange Project) で研究が行われており、実際に商用イ ンターネットの相互接続を行い、そこで Routing Server を含め、研究が行わ れています。研究としてのアクティビティはより安定した、柔軟な相互 接続のために必要なものです。名前が研究、実験だからといって不安定なもの ではありません。より安定した運用のために実験、研究である必要があるので す。