BGPの歴史BGPの前身として、EGP(Exterior Gateway Protocol)があります。EGPという用語は、ルーティングプロトコルの分類を示す外部ルーティングプロトコルという意味と、単体のルーティングプロトコルを示す意味することがあるので混同しないようにしてください。 EGPは広く普及したのですが、ルーティングループの対処や、さまざまなルーティングポリシーの適用に制限があります。また、ルーティング情報の交換が効率的とはいえなかったためEGPに取って代わる新しいルーティングプロトコルが必要とされていました。 現在では、RFC1771を始めとする多くのRFCによって定義されたBGPバージョン4がインターネット上で各AS間のルーティングを行う際の事実上の標準として幅広く利用されています。これ以降、単にBGPと表記したものはBGPバージョン4を表しているものと考えてください。 |
BGPの特徴まず、BGPの主な特徴をまとめると以下のようになります。・EGPs ・パスベクタ型ルーティングプロトコル ・クラスレスルーティングプロトコル ・CIDR(Classless Inter Domain Routing) ・インターネットの大規模ネットワークを支えるルーティングプロトコル ・BGPパスアトリビュートによるルーティングの制御(ポリシーベースルーティング) ・TCPを用いた信頼性のあるアップデートメカニズム ・ネットワークに変更があったときのみ差分情報をアップデート ・認証機能のサポート BGPは、RIPやIGRP、OSPF、EIGRPのIGPsとは異なりEGPsのひとつです。IGPsがAS内部でのルーティングに用いられるのに対して、EGPsは、AS間でルーティングを行うために用いられます。ASについては、またあらためて解説します。 BGPのルーティングアルゴリズムは、ディスタンスベクタ型とよく似ていて、パスベクタ型と呼ばれることがあります。これは、経由するASによって経路を選択するものです。BGPは、いろんな経路選択の方法を取ることができるのですが、デフォルトではもっとも経由するASが少ない経路を採用することになります。 そして、BGPで交換するルーティング情報にはサブネットマスクが含まれています。ですから、BGPはクラスレスルーティングプロトコルのひとつです。クラスレスルーティングプロトコルであることから、柔軟なIPアドレッシングをサポートし、適切な境界でネットワークの経路を集約することができるようになっています。 8ビット境界でネットワークアドレスとホストアドレスを区別していたクラスA、クラスB、クラスCといったアドレスクラスの概念が取り払われています。クラスに関係なくIPアドレスを割り当てることをCIDR(Classless Inter Domain Routing)と呼びます。BGPでは、このCIDRをサポートすることができるようになっています。 インターネット上の経路は10万以上と言われています。これだけの経路数は、RIPやIGRPはもちろん大規模なネットワーク向けに開発されているOSPFやEIGRPでもサポートすることはできません。インターネットのような大規模なネットワークをサポートするためのルーティングプロトコルがEGPsであり、BGPはその代表的なプロトコルであるわけです。 BGPでは、ルーティング情報としてネットワークアドレスとサブネットマスクだけでなく、パスアトリビュートと呼ばれる属性値も一緒に交換します。パスアトリビュートは、前述した経由するAS(AS_PATH)などさまざまなものがあります。パスアトリビュートは、IGPのメトリックに相当するものと考えるとよいでしょう。 このパスアトリビュートを変更することによって、BGPの経路選択を柔軟に制御することができます。これをポリシーベースルーティングと呼んでいます。 BGPでは、先ほども少し触れたようにたくさんのルーティング情報をやり取りします。そのため、やり取りする情報の量も多くなっています。RIPやOSPFといったIGPsであれば、ルーティング情報を交換するためにIPやUDPを使っていたのですが、信頼性の低いコネクションレス型の転送プロトコルであるIPやUDPでは転送の効率が悪くなってしまう恐れがあります。 そのため、BGPでは転送プロトコルとしてTCPを用いてサイズの大きいルーティング情報を信頼性のあるメカニズムで交換することができるようになっています。 また、ルーティング情報は最初にすべての情報を交換した後はネットワークに変更があったときにその差分情報だけを送信することによって、ネットワークの帯域幅を過剰に消費しないようにしています。 BGPを有効にしているルータを一般に、BGPスピーカと呼びます。BGPスピーカ同士でBGPピアを構成します。BGPピアを構成するということは、BGPスピーカが情報交換する相手をお互いに指定すると考えてください。このBGPピアを構成するときにさらにセキュリティを高めるために認証機能を利用することもできます。 |
(C) Copyright 2000-2004 Gene All Rights Reserved