本発明は,階層化ISPにおけるアドレス空間配分方法及びそのような方法に用いることができるシステムを提供することを目的とする。
本発明の第1の側面は,階層化ISPにおけるアドレス空間配分方法に関する。階層化ISPとは,後述するように,複数の層(上流及び下流)からなるインターネットプロバイダ及びユーザを含むインターネットシステムを意味する。アドレスとは個々のネットワーク機器を識別する為に割当てられる番号を意味する。一方,アドレス空間とは,連続したアドレスの領域である。アドレス空間は,二種類のアドレス空間に分類できる.1)アドレス空間の移動を許容するデフラグ許容者用のアドレス空間,2)アドレス空間の移動を許容しないデフラグ拒絶者を優先するデフラグ拒絶者優先アドレス空間。デフラグ対象アドレス空間は,使用中のアドレス空間の移動が許可されるアドレス空間を意味する。デフラグ対象アドレス空間の指定方法には二つある。一つは,デフラグ許容者用のアドレス空間のみをデフラグ対象アドレス空間とする方法である。もう一つは,ISPのアドレス空間全てをデフラグ対象アドレス空間とする方法である。
この方法を実装するためのシステムは例えば図1に示されるものである。そして,この方法の概要は図2に示されるものである。この方法は,要求者(あるインターネットサービスプロバイダ(ISP)又はあるユーザサイト)が,アドレス空間配分の要求を複数の上流ISPに送信する(ステップ101)。あるインターネットサービスプロバイダ(ISP)又はあるユーザサイトは,コンピュータ又はサーバにより実現される。アドレス空間配分の要求は,通常各ISP及びサーバを接続するインターネットなどの通信路を通じて行われる。アドレス空間配分の要求には,各種情報がともに送信されてもよい。上流ISPは,要求者の上流に位置するインターネットサービスプロバイダ(ISP)を意味する。
アドレス空間配分の要求を受け取った上流ISPが,要求者がアドレス空間を配分できる対象であるか否か判断する(ステップ102)。たとえば,上流ISPが,アドレス空間の移動を許容するアドレス空間を有さない場合,その上流ISPは,後述するデフラグメント拒絶ポリシーを有しているため,要求者が,デフラグメント許容者であるという情報を上流ISPが入手したときは,上流ISPのポリシーと一致しない(すなわち,要求者がアドレス空間を配分できる対象でない)と判断する。上記は例である。この工程では,例えば,上流ISPのポリシーと,要求者が一致するか否か判断する。
上流ISPが,要求者を,アドレス空間を配分できる対象であると判断した場合,上流ISPが,要求者に対して自らのアドレス空間を配分できるか否か判断する(ステップ103)。例えば,自らのローカルに存在する下流ISP用のアドレス空間の連続した空き領域のサイズ情報を受け取って,要求者の要求するアドレス空間サイズと比較する。このようにして,上流ISPが,要求者に対して自らのアドレス空間を配分できるか否か判断できる。
一方,上流ISPが,要求者を,アドレス空間を配分できる対象でないと判断した場合,上流ISPは,要求者に対し要求拒絶を回答する(ステップ104)。
上流ISPが,要求者に対して自らのアドレス空間を配分できると判断した場合,上流ISPは,要求者に対して配分する予定のアドレス空間を予約済みとし,要求者に対して返事を送信する(ステップ105)。この際,上流ISPは,配分する予定のアドレス空間に予約済みフラグ等を設定し,他の下流ISPからアドレス空間配分の要求が来た際には,予約済みフラグがふられているアドレス空間を使用されているアドレス空間か分配できないアドレス空間として扱う。もっとも,上流ISPが,予約が解約されたという情報を受け取った場合は,予約済みフラグ等の予約済み状態を解消し,ある下流ISP又はユーザに配分する予定であったアドレス空間を別の下流ISP又はユーザに配分できるようにしてもよい。
上流ISPが,要求者に対して自らのアドレス空間を配分できないと判断した場合,上流ISPは,要求者に対し要求拒絶を回答する(ステップ106)。
要求者が,複数の上流ISPからの返事又は回答を受け取り,要求者に対してアドレス空間を配分できる複数の上流ISPの数を分析する(ステップ107)。上流ISPからの返事は,ステップ105により送信される返事である。また,上流ISPからの回答は,ステップ106により送信される回答である。
アドレス空間を配分できる上流ISPが一つの場合,要求者は,その1つの上流ISPを,要求者に対してアドレス空間を配分する上流ISPとして決定する(ステップ108)。
アドレス空間を配分できる上流ISPが複数の場合,要求者は,複数の上流ISPから,要求者に対してアドレス空間を配分する上流ISPを選択する(ステップ109)。
この際,更なる上流のISP数が最も多い上流ISPを「要求者に対してアドレス空間を配分する上流ISP」として選択してもよい。また,更なる上流のISP数を,上流ISPを選択する際のひとつの要素として用いてもよい。このように更に上流域に位置するISPの数を上流ISPの選択基準とすることで信頼度の高い上流ISPを選択できることとなる。
要求者が,決定された上流ISP又は選択された上流ISPに対し,予約を送信する(ステップ110)。この予約を受け取った上流ISPは,予約しておいたアドレス空間を要求者に配分する。なお,要求者は,ステップ109において選択されなかった上流ISPに対し,アドレス空間配分の要求を取消す旨の通知を行ってもよい。この通知を受け取った上流ISPは,アドレス空間配分の予約を解除し,他のユーザ又はISPからのアドレス空間配分の要求があった際に利用できるようになる。すると,上流ISPは,この予約されたアドレス空間を要求者に配分する。このようにして,階層化ISPにおけるアドレス空間配分が行われる。
次に本発明の第2の態様について説明する。この方法は,上記した第1の態様においてデフラグを行う処理を追加したものである。デフラグ又はデフラグメントとは,既に使用している離散したアドレス空間と,使用していない離散したアドレス空間が存在する場合に,使用していないアドレス空間が連続となるように使用しているアドレス空間の位置を整理して,使用できる連続したアドレス空間を確保する作業を意味する。
この方法の概要は図3に示される。この方法において,上流ISPは,アドレス空間の移動を許容するデフラグ許容者用のアドレス空間,及びアドレス空間の移動を許容しないデフラグ拒絶者を優先するデフラグ拒絶者優先アドレス空間のいずれか又は両方を有する。デフラグ許容者用のアドレス空間は,通常デフラグ許容者にのみ配分されるデフラグ許容者専用のアドレス空間である。アドレス空間の移動を許容しないデフラグ拒絶者を優先するとは,デフラグ拒絶者に対して優先的にアドレス空間を配分するものの, デフラグ許容者用のアドレス空間に配分できるアドレス空間が存在しない場合は, デフラグ拒絶者優先アドレス空間のアドレス空間を配分することがあることを意味する。そして,上流ISPは,要求者がアドレス空間を配分できる対象であるか否か判断する工程(ステップ102)において,要求者がデフラグ許容者であるか又はデフラグ拒絶者であるか判断する工程を含む。
つまり,この態様の方法は,上流ISPが,デフラグメントについてのポリシーに関してフレキシブルである。つまり,あるISPは,デフラグメントを許容せず,あるISPはデフラグメントを許容する。そして,この方法は,そのような異なるポリシーを有するISPを複数有するISPを効果的に管理及び制御できる。
たとえば,ある上流ISPが,アドレス空間の移動を許容しないデフラグ拒絶者優先アドレス空間しか有さない場合,要求者がデフラグ許容者であるときは,ポリシーが合わないとして要求を拒絶してもよい。もっとも,アドレス空間の移動を許容しない空間デフラグ拒絶者優先アドレス空間しか有さない場合,要求者がデフラグ許容者であるときであっても,アドレス空間配分を許容してもよい。いずれにせよ,上流ISPは,要求者がデフラグ許容者であるかデフラグ拒絶者であるかによって,アドレス空間を配分するか否か,配分するアドレス空間の位置を変化させることができる。
この態様の方法のある例は,図3に示されるフローチャートによって説明されるものである。先に説明したとおり,上流ISPは,アドレス空間の移動を許容するデフラグ許容者用のアドレス空間と,アドレス空間の移動を許容しないデフラグ拒絶者優先アドレス空間とを有する。
上流ISPは,要求者がアドレス空間を配分できる対象であるか否か判断する工程(ステップ102)又は要求者に対して自らのアドレス空間を配分できるか否か判断する工程(ステップ103)において,要求者がデフラグ許容者であるか又はデフラグ拒絶者であるか判断する。要求者がデフラグ許容者であるか又はデフラグ拒絶者であるかの情報は,要求者のアドレス空間配分要求に付加されてもよいし,上流ISPが,要求者のIDなど要求者の情報を用いてフーイズサーバなどのサーバから入手してもよい。
上流ISPは,要求者がデフラグ許容者の場合は,デフラグ許容者用のアドレス空間に要求者の要求を満たす連続したアドレス空間が存在するか否か判断する(ステップ201)。上流ISPは,デフラグ許容者用のアドレス空間に要求者の要求を満たす連続したアドレス空間が存在する場合は,要求者に対して自らのアドレス空間を配分できると判断する。この判断は,上流ISPが,デフラグ許容者用のアドレス空間の連続したアドレス空間の大きさに関する情報と,要求者が要求するアドレス空間のサイズとを比較することにより行うことができる。要求者がデフラグ拒絶者の場合は,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす空間サイズが存在するか否か判断する。
上流ISPは,デフラグ許容者用のアドレス空間に要求者の要求を満たす連続したアドレス空間が存在しない場合は,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在するか否か判断する(ステップ202)。
上流ISPは,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在しない場合は,デフラグメントの対象となるアドレス空間(例えば,上流ISPの全アドレス空間又はデフラグ許容者用のアドレス空間)をデフラグメントした場合に要求者の要求を満たす連続したアドレス空間を確保できるか否か試算する(ステップ203)。上流ISPの全アドレス空間をデフラグメントした場合を試算するのは,全てのアドレス空間をデフラグメントの対象アドレス空間とすることを考えたときである。つまり,上流ISPの全てのアドレス空間は,デフラグ拒絶者優先アドレス空間とデフラグ許容者用のアドレス空間とを合わせたものである。もしくはデフラグ許容者用のアドレス空間のみをデフラグメントした場合に,要求者の要求を満たす連続したアドレス空間を確保できるか否か試算してもよい。デフラグメントの対象となるアドレス空間は,場合により上流ISPの全アドレス空間又はデフラグ許容者用のアドレス空間である。この点は,以下も同様である。
この試算は,たとえば,デフラグメントの対象となるアドレス空間(上流ISPの全アドレス空間又はデフラグ許容者用のアドレス空間)において移動させることができる使用中アドレス空間を移動したことをシミュレーションし,その後に得ることができるデフラグメント後のデフラグメントの対象となるアドレス空間における連続したアドレス空間の大きさを求める。そして,デフラグメント後に得られる連続したアドレス空間のサイズと,要求者の要求する空間サイズとを比較する。このようにして,要求者の要求を満たす連続したアドレス空間を確保できるか否か試算する。
上流ISPは,デフラグメントの対象となるアドレス空間(上流ISPの全アドレス空間又はデフラグ許容者用のアドレス空間)をデフラグメントした場合に要求者の要求を満たす連続したアドレス空間を確保できる場合は,デフラグメント処理を行う(ステップ204)。要求者に対して自らのアドレス空間を配分できると判断し,上流ISPは,デフラグメントの対象となるアドレス空間をデフラグメントした場合に要求者の要求を満たす連続したアドレス空間を確保できない場合は,要求者に対して自らのアドレス空間を配分できないと判断する。
次に第2の態様の別の例を説明する。この例は,図4に示されるフローチャートに従うものである。この例においても,上流ISPは,アドレス空間の移動を許容するデフラグ許容者用のアドレス空間と,アドレス空間の移動を許容しないデフラグ拒絶者優先アドレス空間とを有する。
上流ISPは,要求者がアドレス空間を配分できる対象であるか否か判断する工程(ステップ102)又は要求者に対して自らのアドレス空間を配分できるか否か判断する工程(ステップ103)において,要求者がデフラグ許容者であるか又はデフラグ拒絶者であるか判断する。
上流ISPは,要求者がデフラグ許容者の場合は,デフラグ許容者用のアドレス空間に要求者の要求を満たす連続したアドレス空間が存在するか否か判断する。(ステップ201)。そして,上流ISPは,デフラグ許容者用のアドレス空間に要求者の要求を満たす連続したアドレス空間が存在する場合は,要求者に対して自らのアドレス空間を配分できると判断する。
上流ISPは,デフラグ許容者用のアドレス空間に要求者の要求を満たす連続したアドレス空間が存在しない場合は,デフラグ許容者用のアドレス空間をデフラグメントした場合に要求者の要求を満たす連続したアドレス空間を確保できるか否か試算する(ステップ212)。
上流ISPは,デフラグ許容者用のアドレス空間をデフラグメントした場合に要求者の要求を満たす連続したアドレス空間を確保できる場合は,デフラグメント処理を行う(ステップ213)とともに,要求者に対して自らのアドレス空間を配分できると判断する。
上流ISPは,デフラグ許容者用のアドレス空間をデフラグメントした場合に要求者の要求を満たす連続したアドレス空間を確保できない場合は,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在するか否か判断する(ステップ214)。そして,上流ISPは,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在する場合は,要求者に対して自らのアドレス空間を配分できると判断する。
上流ISPは,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在しない場合は,要求者に対して自らのアドレス空間を配分できないと判断する。
次にデフラグメント処理の例を説明する。このデフラグメント処理の例は,図5のフローチャートに示される。上流ISPが,ISPのデフラグ許容者用のアドレス空間を配分された全ての下流ISPについてその下流又は下流域に位置するISPの数Iを計算する(ステップ221)。下流域のISPとは,あるISPの川下に存在する全てのISPを意味する。
上流ISPが,ISPのデフラグ許容者用のアドレス空間の連続するアドレス空間における空きアドレス空間のサイズSと,ぞれぞれの空きアドレス空間に隣接する使用中のアドレス空間のIとを用いて,それぞれの空きアドレス空間と隣接する使用中のアドレス空間のペアのS/Iを求める(ステップ222)。使用中のアドレス空間とは,デフラグ許容者に配分済みのアドレス空間,かつ,デフラグ許容者用のアドレス空間内,前記空きアドレス空間以外の他の空きアドレス空間に移動できるアドレス空間を意味する。上流ISPが,S/Iの値の大きなペアから順に,要求者のアドレス空間配分要求を満たす空間サイズを確保できるか否か検討する(ステップ223)。
要求者のアドレス空間配分要求を満たす空間サイズを確保できる場合は,そのようなペアに含まれる使用中のアドレス空間を移動させるデフラグメント処理を行う。要求者のアドレス空間配分要求を満たす空間サイズを確保できない場合は,デフラグメントにより要求者のアドレス空間配分要求を満たす空間サイズを確保できないと判断してもよいし,更にデフラグメント処理を進めてもよい。
次に,要求者がデフラグ拒絶者の場合について説明する。要求者がデフラグ拒絶者であるか否かは,例えば,上記したステップ102又はステップ103において上流ISPが判断する。上流ISPは,要求者がデフラグ拒絶者の場合は,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在するか否か判断する(ステップ241)。そして,上流ISPは,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在する場合は,要求者に対して自らのアドレス空間を配分できると判断する。この場合,例えばステップ105と同様の処理を行う。
一方,上流ISPは,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在しない場合は,デフラグ拒絶者優先のアドレス空間内にデフラグ許容者使用中のアドレス空間が存在するときに,デフラグ許容者使用中のアドレス空間をデフラグ許容者用のアドレス空間に移動してもよい。この場合,上流ISPは,移動によって,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在するか否か判断する(ステップ242)。この判断方法は,先に説明したデフラグメントと同様である。デフラグ許容者使用中のアドレス空間をデフラグ許容者用のアドレス空間に移動すれば,要求者に対して自らのアドレス空間を配分できると判断してもよい。この場合もステップ105と同様の処理を行う。一方,上流ISPは,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在しない場合は,要求者に対して自らのアドレス空間を配分できないと判断する。この場合,ステップ106(又はステップ200,ステップ300)と同様の処理を行ってもよい。
本発明の第3の態様は,基本的には第1の態様を改良したものである。つまり,階層化ISPにおけるアドレス空間配分方法であって,上流ISPが,要求者に対して自らのアドレス空間を配分できるか否か判断する工程において(ステップ103),上流ISPのアドレス空間が要求者が要求する空間サイズを満たせない場合,上流ISPの更に上流ISPに対しアドレス空間配分要求を送信し,上流ISPのアドレス空間を拡張した際の拡張されたアドレス空間を試算し,アドレス空間を拡張することにより要求者が要求する空間サイズを満たせるときは,要求者に対して自らのアドレス空間を配分できると判断する。
基本的な動作は,先に説明したとおりである。つまり,この態様では上流ISPが,先の説明における下流ISP又はユーザサイトと同様にふるまう。そして,その更に上流に位置するISPに対してアドレス空間の配分を要求する。その結果,配分されるアドレス空間が存在し,要求者の要求を満たすことができる場合は,アドレス空間を拡張し,そのうえで要求者の要求にこたえることができる。この態様の好ましい例は上流ISPが,更に上流ISPに対しアドレス空間配分要求を送信する前に,要求者の下流(又は下流域)に位置するISPの数に基づいてポリシーチェックを行い, 更に上流ISPに対しアドレス空間配分要求を送信するか否か判断するものである。このポリシーチェックの際には,たとえば,I値を用いて判断を行う。この要求者の下流に位置するISPの数に基づいてアドレス空間の配分の要否を判断することで,デフラグメントを行った際に与える影響を考慮したアドレス空間の配分を行うことができることとなる。
本発明によれば,階層化ISPにおけるアドレス空間配分方法及びそのような方法に用いることができるシステムを提供することができる。
図1は,本発明のシステム構成例を示す概念図である。図1に示されるように,このシステムは,階層化されたISPと複数のユーザサイトを有する。このシステムは,階層化されたISPやユーザサイト間の協調により,リナンバリングにおけるアドレス空間配分を自動的に行うことができる。それぞれのISP及びユーザサイトは,自分が属する自律システム(AS:Autonomous System)を有する。ASは,たとえばHANAサーバ及び本発明のASAPサーバを有する。HANAは,階層的自動番号割り当て:Hierarchical Automatic Number
Allocationの略である。HANAプロトコルは,エンドトゥーエンド(End-to-end)マルチホームを考慮しルータの手動設定を削減した階層的なアドレス割当プロトコルである。
図1の例では,最下流ISP又はユーザのクライアント10,最下流ISP又はユーザのASAPサーバ11,最下流ISP又はユーザの上流に位置する上流ISP12,上流ISPのASAPサーバ13,フーイズサーバ等の情報記録サーバ14,上流ISP12の更に上流に位置する再上流ISP15及び再上流ISP15のASAPサーバ16を含む。それぞれのコンピュータ及びサーバは,情報を送受信できるように有線又は無線により接続されている。図1の例は,簡易的なものであり,実際はより複数の層によりシステムが構築されている。本明細書においては,ユーザのクライアントコンピュータを簡便のためユーザと表記する。以下,本明細書においては,簡便のため文脈によりISP又はユーザとそのASAPサーバを合わせて,単にISP又はユーザと表記される。
サーバ及びコンピュータは,入出力装置,演算装置,制御装置及び記憶装置を有しており,それぞれバスなどで接続されている。これにより情報の授受を行うことができるようにされている。また,記憶装置のうちのメインメモリには,制御プログラムを記憶したCD−ROMなどのコンピュータ読み取り可能な情報記録媒体が格納されている。そして,入力装置から情報が入力されると,制御部は,適宜制御プログラムを読み出して,制御プログラムの指令に従い,適宜記憶装置に記憶された情報を読み出し,演算装置にて演算を行う。そして,演算結果を適宜記憶装置に記憶し,出力装置から出力する。以下では,サーバ及びコンピュータの上記装置に基づく動作を詳細には説明しないが,当業者であれば,上記の各要素間の動作を容易に理解できる。
階層ISPを有するネットワークの例は,ティア1ISP(第1階層ISP),ティア2ISP,ティア3ISP,及びユーザサイトの4つの階層を有するネットワークである。上流ISPは,あるISP又はユーザサイトに対し,アドレス空間を与え,インターネットへの接続及びルーティングサービスを提供するISPを意味する。ISPは,文脈により事業者を意味してもよいが,通常ISPは,事業者の提供するサーバ又はコンピュータを意味する。先に説明した4階層ネットワークにおいて,ティア1ISP(第1階層ISP)は,ティア2ISP,ティア3ISP,及びユーザサイトの上流ISPとなりうる。
各ISP,ユーザサイトは,ネットワークブローダールーターを介して接続されていてもよい。そして,あるISP又はあるユーザサイトは,上流ISP,下流ISP,(他の)ユーザサイトと,例えば,ネットワークブローダールーターを介して,HANAサーバ間及びASAPサーバ間での通信が行われる。そして,ネットワークが初期設定された後であっても,ネットワーク接続を廃棄でき新たなネットワーク接続を確立できる。
要求者(あるISP又はあるユーザサイト)のASAPサーバは,アドレス空間配分の要求(Prefix要求)を上流ISPのASAPサーバに送信する。そして,要求者のASAPサーバは,上流ISPのASAPサーバから送信される返事(Reply)を受信する。この際,マルチホーミングのために,要求者のASAPサーバは,2つ以上の上流ISPとコネクションを確立して,任意の2つ以上の上流ISPのASAPサーバからアドレス空間を取得できる。このアドレス空間は同じサイズのものであってもよい。そして,2つ以上の上流ISPのASAPサーバから返事を受け取ったあるISPのASAPサーバ又はあるユーザサイトのASAPサーバは,後に説明するように自動的にいずれの上流ISPからの返事を採用するか選択できる。なお,この上流ISPの選択は,自動的に行うほか,手動にて行うこともできるし,自動的に選択するための条件を手動にて設定することもできる。
各ISPのASAPサーバは,下流ISP又はユーザサイトからアドレス空間配分要求を受ける際やアドレス空間配分を行う際に,要求者(あるISP又はあるユーザサイト)がこれまで行ったアドレス空間配分要求の履歴情報があれば,それを判断材料として,自分のポリシーに基づいてアドレス空間配分の要求(Prefix要求)の判断を行ってもよい。具体的説明すると,履歴情報の例は,要求者のID,過去割当られたアドレス空間に関する情報,継続期間及びアドレス空間のサイズである。
履歴情報をISP間で共用するため,ISPのアドレス空間配分履歴情報をあるサーバにて管理することが望ましい。このようなサーバの例は,フーイズ(Whois)サーバである。フーイズサーバの例は,RIR(Regional internet Registry)及びLIR(Local Internet Registry)のフーイズサーバである。以下フーイズサーバを中心に説明するものの,このようなアドレス空間配分の履歴情報を蓄積するサーバはフーイズサーバに限られない。もっとも,フーイズサーバは,単独のサーバ(コンピュータ)である必要がなく,サーバへのアクセス負荷を軽減するため,複数のコンピュータ又はサーバにより構成されていてもよい。
最下位に位置するユーザサイトのASAPサーバは,アドレス空間配分の要求(Prefix要求)のみを行うため,クライアントとして機能する。上流のISPのASAPサーバは,下流ISP又はユーザからのアドレス空間配分の要求(Prefix要求)をローカルにて処理を行うため,サーバとして機能する。この処理を行う手段及び工程については,後述する。
上流のISPのASAPサーバは,アドレス空間配分の要求をローカルにて満たせない場合,アドレス空間配分の要求を満たすために自分のアドレス空間を拡張する要求をさらに上流に位置するISPへ連鎖的に提出するようにしてもよい。この場合,上流のISPのASAPサーバは,クライアントとして機能することとなる。このように中間の位置に存在するISPのASAPサーバは,サーバ及びクライアントとして機能することとなる。一方,最上位のISPのASAPサーバは,アドレス空間配分の要求(Prefix要求)を行わないため,サーバとしてのみ機能する。
複数の上流ISPへの同時要求
次に,本発明の第1の態様である,複数の上流ISPへの同時要求について詳細に説明する。図2は,複数の上流ISPへの同時要求を説明するためのフローチャートである。要求者(あるISP又はあるユーザサイト)のASAPサーバが,アドレス空間配分の要求(Prefix要求)を上流ISPのASAPサーバに送信する。この場合,上流ISPは,そのポリシー,ビジネス的条件,及びアドレス空間の不足を含む理由に基づいて,アドレス空間配分の要求を拒否することがある。すなわち,要求者のアドレス空間配分の要求は上流ISPにより拒否されることがある。本発明のシステムは,例えば,複数の上流ISPへ同時にアドレス空間配分の要求を行うことで,要求が全く認められない可能性を軽減できる。
要求者(あるISP又はあるユーザサイト)が,アドレス空間配分の要求(Prefix要求)を上流ISPに送信する(ステップ101)。この際,アドレス空間配分の要求には,要求者に関する情報を含めてもよい。要求者に関する情報の例は,サービスプロバイダ(SP)のID,ユーザサイトのID,アドレス空間のサイズ,アドレス空間の利用開始時間,アドレス空間の利用期間,現在使用中のアドレス空間の利用状況及び契約情報である。なお,アドレス空間配分の要求に含まれる情報は,フーイズサーバに記憶されており,それを上流ISPが入手してもよい。
上流ISPは,アドレス空間配分の要求を受け取り,要求者がアドレス空間を配分できる対象であるか否か判断する(ステップ102)。この際,上流ISPは,アドレス空間配分の要求に含まれる要求者に関する情報と,自らのポリシーを比較することで,要求者がアドレス空間を配分できる者か否か判断してもよい。また,上流ISPは,アドレス空間配分の要求に含まれる要求者に関する情報を用い,フーイズサーバから要求者に関する情報を入手し,アドレス空間を配分できるか否か判断してもよい。この工程では,アドレス空間配分の要求を受け取った上流ISPが,要求者がアドレス空間を配分できる対象であるか否かポリシーによって判断してもよい.ポリシーの例として,下記が挙げられる。(1)要求者が“信頼できる”下流ISPやユーザサイトであるか否かによるポリシー。要求者が信頼できるか否かは,たとえば,上流ISPがフーイズサーバから要求者の過去の閲覧履歴を入手して閲覧履歴に基づいて信頼できるか否かをスコアリングし,そのスコアが所定の閾値を超えるか否か判断してもよい。(2)要求のタイプ(デフラグメントを許容しない・許容する)と,上流ISPが提供できるアドレス空間のタイプ(今後アドレス空間が移動されることの無・有)により判断するポリシー。上流ISPは,要求のタイプがデフラグメントを許容するか否かと自らが提供できるアドレス空間の種類(デフラグ許容者用のアドレス空間,デフラグ拒絶者優先アドレス空間)とが要求者の要求と一致するか否か判断することにより,要求者がアドレス空間を配分できる対象であるか否か判断してもよい。
例えば,デフラグメントを許容しない要求者は,今後移動されることのないデフラグ拒絶者優先アドレス空間が存在する場合は,上流ISPのポリシーとマッチする。一方,この上流ISPがデフラグ許容者用のアドレス空間しか配分できない場合は,上流ISPのポリシーとマッチしない。一方,デフラグメントを許容する要求者は,要求が緩いので,今後アドレス空間が移動されることの有・無を問わなく全部利用できる(マッチする)。上記は例であって,例えば,上流ISPのポリシーと,要求者が一致するか否か判断する。
ステップ102において,上流ISPが,要求者がアドレス空間を配分できる対象であると判断した場合,上流ISPは,要求者に対して自らのアドレス空間を配分できるか否か判断する(ステップ103)。
ステップ102において,上流ISPが,要求者がアドレス空間を配分できる対象でないと判断した場合,上流ISPは,要求者に対し要求拒絶を回答する(ステップ104)。この要求者に送信される要求拒絶回答には,上流ISPにおけるポリシーや上流ISPにおけるポリシーと一致しなかった要求者の情報に関する情報が含まれていてもよい。
上記のステップ103において,上流ISPが,要求者に対して自らのアドレス空間を配分できると判断した場合,上流ISPは,要求者に対して配分する予定のアドレス空間を予約済みとし,要求者に対して当該アドレス空間のPrefix情報,それにともない提供することとなるインターネットサービスの帯域幅及びサービス価額を含む返事を送信する(ステップ105)。なお,本発明では,返事に,更に上流に存在するISPの数に関する情報を合わせて,要求者に送信してもよい。マルチホーミングの更なる上流ISP数は,サービスの品質としてユーザに評価されることで,当該上流ISPの競争力に相当すると考えることができる。
上記のステップ103において,上流ISPが,要求者に対して自らのアドレス空間を配分できないと判断した場合,上流ISPは,要求者に対し要求拒絶を回答してもよい(ステップ106)。一方,後述するように,上流ISPは,自らのアドレス空間のデフラグメンテーションを検討してもよい(ステップ200)。デフラグメンテーションが行われればアドレス空間を確保できるので,上記のステップ105と同様に,要求者に対して返事を送信できる。また,後述するように,上流ISPは,更に上流ISPに対して,アドレス空間の配分要求を行って,自らのアドレス空間を拡張し,そのうえでアドレス空間を拡張できた場合は,上記のステップ105と同様に,要求者に対して返事を送信してもよい(ステップ221)。
要求者は,複数の上流ISPからの返事又は回答を受け取り,要求者に対してアドレス空間を配分できる複数の上流ISPの数を分析する(ステップ107)。
ステップ107において,アドレス空間を配分できる上流ISPが一つの場合,その上流ISPを,要求者に対してアドレス空間を配分する上流ISPとして決定する(ステップ108)。
ステップ107において,アドレス空間を配分できる上流ISPが複数の場合,複数の上流ISPから,要求者に対してアドレス空間を配分する上流ISPを選択する(ステップ109)。ステップ108において,返事に含まれる,帯域幅,価額,及び更なる上流ISP数のいずれか又は2つ以上を用いて,上流ISPをスコアリングし,スコアリングのもっとも高い上流ISPを選択してもよい。スコアリングに用いられる係数はユーザが適宜設定すればよい。なお,上流ISPを選択するに際して,上流ISPの更なる上流ISP数を用いることは,本発明の好ましい態様である。
ステップ108又はステップ109において決定又は選択された上流ISPに対し,要求者は,アドレス空間のプレフィックス(Prefix)の予約を送信する(ステップ110)。このようにして,要求者は,特定の上流ISPに対し,アドレス空間の予約を行う。なお,要求者は,ステップ109において選択されなかった上流ISPに対し,アドレス空間配分の要求を取消す旨の通知を行ってもよい。この通知を受け取った上流ISPは,アドレス空間配分の予約を解除し,他のユーザ又はISPからのアドレス空間配分の要求があった際に利用することができるようにすることができる。
ステップ110にて要求からアドレス空間のプレフィックス(Prefix)の予約を送信された上流ISPは,この予約を受けた際,この予約情報をアドレス空間管理データベースに登録する。このようにして,アドレス空間配分計画の各工程が終了する。
デフラグメントによる対応
次に,本発明の第2の態様であるデフラグメントを検討する態様について説明する。第2の態様は,基本的には第1の態様を基礎とするものである。よって,第2の態様の説明において,第1の態様と同様の部分は記載を引用することとして説明を省略する。図3は,デフラグメントのある例を説明するためのフローチャートである。上記のステップ103において,上流ISPが,要求者に対して自らのアドレス空間を配分できないと判断した場合,上流ISPは,自らのアドレス空間のデフラグメンテーションを行うことを検討してもよい(ステップ200)。つまり,自らのアドレス空間には要求者の要求を満たす連続したアドレス空間がないものの,分散したアドレス空間を整理すれば要求者の要求を満たす連続したアドレス空間を確保できる場合がある。一方,アドレス空間の位置を変更すると,下流に位置するISP及びユーザに負の影響を与える場合もある。本発明のこの態様に係るシステムは,アドレス空間のフラグメント化を解消して,要求者の要求を満たすことができる連続したアドレス空間を確保するとともに,下流に位置するISP及びユーザへの悪影響を最小限に防止する。
デフラグメントに対応するため,上流ISPは,自分のアドレス空間を分割する。そして,上流ISPは,アドレス空間の位置が変化してもよいとする下流ISP及びユーザ(デフラグメント許容者)と,アドレス空間の位置が変化することを許さない下流ISP及びユーザ(デフラグメント拒絶者)に分ける。これは,アドレス空間配分要求の際の要求に,上記の許容又は拒絶に関する情報を含めておき,アドレス空間を配分する際に,要求者の情報に上記の許容又は拒絶に関する情報と合わせて記憶すればよい。そして,上流ISPは,自らのアドレス空間をデフラグメント許容者用のアドレス空間(Defrag User Space)と,デフラグメント拒絶者用のアドレス空間(Undefrag User First Space)とに分割する。Undefrag User First SpaceとDefrag User Spaceとの割合は,各ISPに委ねればよい。
上流ISPは,要求者がデフラグメント許容者(アドレス空間の位置が変化してもよいとする下流ISP及びユーザ)であるか,要求者がデフラグメント拒絶者(アドレス空間の位置が変化することを許さない下流ISP及びユーザ)であるか判断する(ステップ201)。この態様においては,アドレス空間配分の要求(Prefix要求)に,要求者がデフラグメント許容者であるか要求者がデフラグメント拒絶者であるかに関する情報が付加されている。又はフーイズサーバに要求者が,デフラグメント許容者であるかデフラグメント拒絶者であるかに関する情報が記憶されている。この場合,上流ISPはフーイズサーバからデフラグメント許容者であるかデフラグメント拒絶者であるかに関する情報を取得すればよい。上流ISPは,デフラグメント許容者であるかデフラグメント拒絶者であるかに関する情報を用いて,要求者がデフラグメント許容者であるかデフラグメント拒絶者であるか判断する。
ステップ201において,要求者がデフラグメント許容者である場合,上流ISPは,自らのアドレス空間のうちデフラグメント許容者用のアドレス空間(Defrag User Space)をデフラグしてできる連続したアドレス空間のサイズを試算し,デフラグメントにより得られるアドレス空間が要求者の要求を満たすか判断する(ステップ202)。
ステップ202において,デフラグメントにより得られるアドレス空間が要求者の要求を満たすと判断した場合,Defrag User Spaceをデフラグし,アドレス空間を確保する。以下,この実施態様のアドレス空間分配工程の例について説明する。
要求者(あるISP又はあるユーザサイト)が,アドレス空間配分の要求(Prefix要求)を上流ISPに送信する(ステップ101)。この際,アドレス空間配分の要求には,要求者に関する情報を含めてもよい。この要求者に関する情報には,要求者が,デフラグメント許容者(アドレス空間の位置が変化してもよい)か,要求者がデフラグメント拒絶者(アドレス空間の位置が変化することを許さない)かに関する情報が付加されてもよい。もっとも,要求者が,デフラグメント許容者かデフラグメント拒絶者かについての情報は,上流ISPがフーイズデータベースから取得してもよい。
上流ISPは,アドレス空間配分の要求を受け取り,要求者がアドレス空間を配分できる対象であるか否か判断する(ステップ102)。たとえば,上流ISPのポリシーが,デフラグメント許容者のみにアドレス空間配分を行う場合,上流ISPは要求者がデフラグメント許容者かデフラグメント拒絶者かという情報を用いて,要求者がアドレス空間を配分できる対象であるか否か判断する。上流ISPが,要求者がデフラグメント拒絶者のみにアドレス空間配分を行う場合も,上流ISPは要求者がデフラグメント許容者かデフラグメント拒絶者かという情報を用いて,要求者がアドレス空間を配分できる対象であるか否か判断する。上流ISPは,デフラグメント許容者及びデフラグメント拒絶者の両者についてアドレス空間配分を行ってもよい。この場合,先に説明したとおり,上流ISPは,デフラグメント許容者用のアドレス空間とデフラグメント拒絶者用のアドレス空間とが分けられたアドレス空間を有するようにすることが好ましい。
ステップ102において,上流ISPが,要求者がアドレス空間を配分できる対象であると判断した場合,上流ISPは,要求者に対して自らのアドレス空間を配分できるか否か判断する(ステップ103)。
ステップ102において,上流ISPが,要求者がアドレス空間を配分できる対象でないと判断した場合,上流ISPは,要求者に対し要求拒絶を回答する(ステップ104)。
図3は,要求者がデフラグメント許容者であり,上流ISPがデフラグメント許容者及びデフラグメント拒絶者の両者についてアドレス空間配分を行える場合のアドレス空間配分可能か否かの判断を示すフローチャートである。
ステップ103において,例えば,上流ISPが,デフラグメント許容者及びデフラグメント拒絶者の両者についてアドレス空間配分を行える場合,要求者がデフラグメント許容者であれば,まずデフラグメント許容者用のアドレス空間に要求者の要求に応えられるサイズのアドレス空間が存在するか否か検討する(ステップ201)。そして,デフラグメント許容者用のアドレス空間に要求者の要求に応えられるサイズのアドレス空間が存在する場合は,要求者に対して自らのアドレス空間を配分できると判断する(ステップ105へ)。
上記のステップ201において,上流ISPが,要求者に対して自らのアドレス空間を配分できると判断した場合,上流ISPは,要求者に対して配分する予定のアドレス空間を予約済みとし,要求者に対して当該アドレス空間のPrefix情報,それにともない提供することとなるインターネットサービスの帯域幅及びサービス価額を含む返事を送信する(ステップ105)。
デフラグメント許容者用のアドレス空間に要求者の要求に応えられるサイズのアドレス空間が存在しない場合は,デフラグメント拒絶者用のアドレス空間に要求者の要求に応えられるサイズのアドレス空間が存在するか否か判断してもよい(ステップ202)。その場合,デフラグメント拒絶者用のアドレス空間に要求者の要求に応えられるサイズのアドレス空間が存在するときは,要求者に対して自らのアドレス空間を配分できると判断してもよい(ステップ105)。そのうえで,ステップ105へ進んで,上流ISPは,要求者に対して配分する予定のアドレス空間を予約済みとし,要求者に対して当該アドレス空間のPrefix情報,それにともない提供することとなるインターネットサービスの帯域幅及びサービス価額を含む返事を送信してもよい。
デフラグメント許容者用のアドレス空間に要求者の要求に応えられるサイズのアドレス空間が存在しない場合であって,デフラグメント拒絶者用のアドレス空間に要求者の要求に応えられるサイズのアドレス空間が存在しないときは,デフラグメントの対象となるアドレス空間(例えば,上流ISPの全てのアドレス空間又はデフラグメント許容者用のアドレス空間)にデフラグメントにより要求者の要求に応えられるサイズのアドレス空間が存在するか否か試算してもよい(ステップ203)。デフラグメントとは,デフラグメント許容者用のアドレス空間に連続でないアドレス空間が散在する場合に,散在したアドレス空間を連続したアドレス空間となるようにデフラグ許容者が使用中のアドレス空間を移動させることで,使用可能なアドレス空間を連続したアドレス空間となるように調整する動作を意味する。
デフラグメントによるアドレス空間を試算した場合に,要求者の要求する空間サイズを満たすことができるときは,デフラグメントを行ってもよい(ステップ204)。デフラグメントによって,要求者が要求するアドレス空間を確保できる場合は,要求者に対して自らのアドレス空間を配分できると判断してもよい(ステップ105)。そのうえで,ステップ105へ進んで,上流ISPは,要求者に対して配分する予定のアドレス空間を予約済みとし,要求者に対して当該アドレス空間のPrefix情報,それにともない提供することとなるインターネットサービスの帯域幅及びサービス価額を含む返事を送信してもよい。
デフラグメントによるアドレス空間を試算した場合に,要求者の要求する空間サイズに満たない場合は,上流ISPは,要求者に対し要求拒絶を回答してもよい(ステップ106)
要求者は,複数の上流ISPからの返事又は回答を受け取り,要求者に対してアドレス空間を配分できる複数の上流ISPの数を分析する(ステップ107)。
ステップ107〜ステップ110は,先に説明した第1の態様と同様である。
次に,第2の態様の上記とは別の例を説明する。図4は,デフラグメントの図3とは別の例を説明するためのフローチャートである。図4に示されるようにこの態様では,デフラグメント許容者用のアドレス空間をデフラグメントして要求者の要求を満たす空間サイズを確保できるか否か検討し(ステップ212),デフラグメント許容者用のアドレス空間をデフラグメントして要求者の要求を満たす空間サイズを確保できるときは,デフラグメントを行い(ステップ213),デフラグメント許容者用のアドレス空間をデフラグメントして要求者の要求を満たす空間サイズを確保できないときに,デフラグメント拒絶者用のアドレス空間に要求者の要求を満たす空間サイズを確保できるか否か判断する(ステップ214)。基本的な動作は,先に説明したものと同様である。
次に,第2の態様の上記とは別の例を説明する。図5は,デフラグメント処理の例を説明するためのフローチャートである。
以下の例では,デフラグメント許容者用のアドレス空間について説明する。しかしながら,簡便のため単にアドレス空間と表記する。上流ISPのアドレス空間における,アドレス空間を配分された全ての下流ISPについてその下流域に位置するISP(ユーザサイトを含んでもよい)の数Iを計算する(ステップ221)。下流域に位置するISPには,下流ISPのみならず,下流ISPからアドレス空間を配分されている更に下流のISP,更に下流のISPの更に下流のISP等を含む。下流ISPに関する情報は,たとえば,上流ISPがフーイズサーバにアクセスすることで入手できる。このI値が大きいISPのアドレス空間を移動すると,全体としてより大きな影響を与えることとなる。
アドレス空間における空きアドレス空間と,それらに隣接する使用中のアドレス空間とを把握する。使用中のアドレス空間は,移動可能なアドレス空間(デフラグ許容者用のアドレス空間)である。使用中のアドレス空間とは,デフラグ許容者に配分済みのアドレス空間,かつ,デフラグ許容者用のアドレス空間内,前記空きアドレス空間以外の他の空きアドレス空間に移動できるアドレス空間を意味する。それぞれの空きアドレス空間の空間サイズをSとする。そして,Sと,1/Iを乗じた値,S/Iを求める。つまり,アドレス空間における空きアドレス空間のサイズSと,それに隣接する使用中のアドレス空間のIとを用いて,ある空きアドレス空間とそれに隣接する使用中のアドレス空間のペアのS/Iを求める(ステップ222)。そのうえで,それぞれの空きアドレス空間と,隣接するアドレス空間のペアを,S/Iの順番にソートする。
S/Iの値の大きなペアから順に,要求者のアドレス空間配分要求を満たす空間サイズを確保できるか否か検討する(ステップ223)。S/Iの値のもっとも大きなペアについて,要求者の要求を満たす空間サイズを確保できる場合は,このペアに含まれる使用中のアドレス空間(空いていたアドレス空間に隣接していた使用中のアドレス空間)を移動させ,これにより要求者の要求を満たすアドレス空間を確保する。この場合,使用中であったアドレス空間が移動することにより,下流に位置するISP等へ影響が生ずる。しかし,Iすなわち,更に下流に位置するISPの数が少ないため,デフラグメントによる影響を最小限に抑えることができる。
上記のいずれのペアについても,要求者のアドレス空間配分要求を満たす空間サイズを確保できない場合は,上記のペアを空きアドレス空間とみなして,上記と同様の作業を行う。この場合,Sは,空きアドレス空間の空間サイズと,それと隣接した使用中のアドレス空間の空間サイズの和となる。一方,Iは,隣接した使用中のアドレス空間のIと,新たに加えられた隣接した使用中のアドレス空間のIとの和となる。
次に,図6に基づいて,要求者がデフラグ拒絶者の場合について説明する。要求者がデフラグ拒絶者であるか否かは,例えば,上記したステップ102又はステップ103において上流ISPが判断する。上流ISPは,要求者がデフラグ拒絶者の場合は,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在するか否か判断する(ステップ241)。そして,上流ISPは,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在する場合は,要求者に対して自らのアドレス空間を配分できると判断する。この場合,例えばステップ105と同様の処理を行う。
一方,上流ISPは,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在しない場合は,デフラグ拒絶者優先のアドレス空間内にデフラグ許容者使用中のアドレス空間が存在するときに,デフラグ許容者使用中のアドレス空間をデフラグ許容者用のアドレス空間に移動してもよい。この場合,上流ISPは,移動によって,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在するか否か判断する(ステップ242)。この判断方法は,先に説明したデフラグメントと同様である。デフラグ許容者使用中のアドレス空間をデフラグ許容者用のアドレス空間に移動すれば,要求者に対して自らのアドレス空間を配分できると判断してもよい。この場合もステップ105と同様の処理を行う。一方,上流ISPは,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在しない場合は,要求者に対して自らのアドレス空間を配分できないと判断する。この場合,ステップ106(又はステップ200,ステップ300)と同様の処理を行ってもよい。
更なる上流ISPへのアドレス空間配分要求
次に本発明の第3の態様について説明する。この態様は,自らのローカルにおけるアドレス空間では,要求者のアドレス空間配分要求を満たせない場合,さらに上流に位置するISPへ自らのアドレス空間を拡張するための要求を行うものである。この更なる上流ISPへのアドレス空間配分要求は連鎖的に行うことができる。すなわち,上流ISPの更に上流,更に上流,更に上流へと上位に位置するISPに連鎖的にアドレス空間配分要求を行うようにしてもよい。この態様は,ISPがアドレス空間を柔軟に取得できることとなる。
要求者(あるISP又はあるユーザサイト)が,アドレス空間配分の要求(Prefix要求)を上流ISPに送信する(ステップ101)。
上流ISPは,アドレス空間配分の要求を受け取り,要求者がアドレス空間を配分できる対象であるか否か判断する(ステップ102)。
ステップ102において,上流ISPが,要求者がアドレス空間を配分できる対象であると判断した場合,上流ISPは,要求者に対して自らのアドレス空間を配分できるか否か判断する(ステップ103)。
ステップ102において,上流ISPが,要求者がアドレス空間を配分できる対象でないと判断した場合,上流ISPは,要求者に対し要求拒絶を回答する(ステップ104)。
上記のステップ103において,上流ISPが,要求者に対して自らのアドレス空間を配分できると判断した場合,上流ISPは,要求者に対して配分する予定のアドレス空間を予約済みとし,要求者に対して当該アドレス空間のPrefix情報,それにともない提供することとなるインターネットサービスの帯域幅及びサービス価額を含む返事を送信する(ステップ105)。なお,本発明では,返事に,更に上流に存在するISPの数に関する情報を合わせて,要求者に送信してもよい。マルチホーミングの更なる上流ISP数は,サービスの品質としてユーザに評価されることで,当該上流ISPの競争力に相当すると考えることができる。
上流ISPが,自らのアドレス空間では,要求者が要求するアドレス空間サイズを満たさないと判断した場合,先に説明したデフラグメントを行ってもよいし,更に上流に位置するISPに対してアドレス空間の配分を要求してもよい。上流ISPが更に上流に位置するISPに対してアドレス空間の配分を要求する前に,ポリシーチェックを行ってもよい。ポリシーチェックの例は,要求者のI値を求めて,I値と所定の閾値とを比較することにより行ってもよい。要求者に含まれる更に下流のISPの数,それらの更に下流のISPに含まれる再下流のISPの数,を順次フーイズサーバから入手して,合算しI値を求めてもよい。つまり,I値は,要求者の更に下流に位置するISPの数に関連する値である。たとえば,要求者により直接アドレス空間を配分される1次下流ISPと,1次下流ISPによりアドレス空間を配分される2次下流ISP, 2次下流ISPによりアドレス空間を配分される3次下流ISP, 3次下流ISPによりアドレス空間を配分される4次下流ISPと川下に下がるにしたがって,I値に加えられる数の重みを軽減してもよい。そして,I値が所定の閾値より小さい場合に,ポリシーにマッチすると判断して, 更に上流に位置するISPに対してアドレス空間の配分を要求してもよい。このポリシーチェックは,たとえば,要求者の重要度,自ら(上流ISP)のサービス規模の展開速度,自ら(上流ISP)のI値を用いて,これらに基づく比較用の値を求め,その比較用の値を所定の閾値と比較することで,さらに上流に位置するISPに要求を行うか否か決めるようにしてもよい。要求者の重要度xは,たとえばフーイズサーバから入手できる。また,x値は要求者に関する情報に基づいて,上流ISPが決定できるようにされていてもよい。要求者の重要度xの例は,要求者が下流ISPかユーザサイトかに関する情報,要求者が下流ISPの場合は下流ISPに含まれるユーザサイト及び更に下流ISPの数である。自ら(上流ISP)のサービス規模の展開速度yは,たとえば上流ISPが所定の値を設定しておけばよい。I値は本明細書に開示される方法に従って求めればよい。そうすると,比較用の値はたとえば,αx+βy+γIにより求めることができる。そして,係数うα,β及びγの値は上流ISPが適宜入力することで決められるようにしてもよいし,システム全体において統一した値としてもよい。その場合,先に説明したと同様にして更に上流のISPからアドレス空間の予約が通知される。そして,上流ISPは,その予約に基づいて,要求者に対して,アドレス空間を配分できる旨を返事してもよい。
上記のステップ103において,上流ISPが,要求者に対して自らのアドレス空間を配分できないと判断した場合,上流ISPは,要求者に対し要求拒絶を回答してもよい(ステップ106)。
要求者は,複数の上流ISPからの返事又は回答を受け取り,要求者に対してアドレス空間を配分できる複数の上流ISPの数を分析する(ステップ107)。
ステップ107において,アドレス空間を配分できる上流ISPが一つの場合,その上流ISPを,要求者に対してアドレス空間を配分する上流ISPとして決定する(ステップ108)。
ステップ107において,アドレス空間を配分できる上流ISPが複数の場合,複数の上流ISPから,要求者に対してアドレス空間を配分する上流ISPを選択する(ステップ109)。
ステップ108又はステップ109において決定又は選択された上流ISPに対し,要求者は,アドレス空間のプレフィックス(Prefix)の予約を送信する(ステップ110)。
本発明は,上記に説明した方法を実現するためのインターネットシステムをも提供する。このインターネットシステムは,たとえば,コンピュータ及びサーバを上記した各工程として機能させるプログラムをコンピュータ又はサーバに実装させることにより,実現できる。要求者であるあるインターネットサービスプロバイダ(ISP)又はあるユーザサイトが,アドレス空間配分の要求を複数の上流ISPに送信するための手段を有する。
上流ISPは,アドレス空間配分の要求を受け取る手段と,要求者がアドレス空間を配分できる対象であるか否か判断するための手段を有する。
上流ISPは,要求者に対して自らのアドレス空間を配分できるか否か判断するための手段を有する。
上流ISPは,要求者を,アドレス空間を配分できる対象でないと判断した場合,上流ISPは,要求者に対し要求拒絶を回答する手段を有する。
上流ISPは,要求者に対して配分する予定のアドレス空間を予約済みとする手段及び,要求者に対して返事を送信する手段を有する。
上流ISPは,要求者に対して自らのアドレス空間を配分できないと判断した場合,上流ISPは,要求者に対し要求拒絶を回答するための手段を有する。
要求者は,複数の上流ISPからの返事又は回答を受け取る手段及び,要求者に対してアドレス空間を配分できる複数の上流ISPの数を分析する手段を有する。
要求者は,アドレス空間を配分できる上流ISPが一つの場合,その1つの上流ISPを,要求者に対してアドレス空間を配分する上流ISPとして決定する手段を有する。
要求者は,アドレス空間を配分できる上流ISPが複数の場合,複数の上流ISPから,要求者に対してアドレス空間を配分する上流ISPを選択する手段を有する。
次に図3に示されるフローチャートを実装するシステムを説明する。上流ISPは,アドレス空間の移動を許容するデフラグ許容者用のアドレス空間と,アドレス空間の移動を許容しないデフラグ拒絶者優先アドレス空間とを有する。
上流ISPは,要求者がデフラグ許容者であるか又はデフラグ拒絶者であるか判断する手段を有する。
上流ISPは,要求者がデフラグ許容者の場合は,デフラグ許容者用のアドレス空間に要求者の要求を満たす連続したアドレス空間が存在するか否か判断する手段を有する。
上流ISPは,デフラグ許容者用のアドレス空間に要求者の要求を満たす連続したアドレス空間が存在しない場合は,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在するか否か判断する手段を有する。
上流ISPは,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在しない場合は,デフラグ許容者用のアドレス空間をデフラグメントした場合に要求者の要求を満たす連続したアドレス空間を確保できるか否か試算する手段を有する。
上流ISPは,デフラグメント処理を行う手段を有する。
次に図4に示されるフローチャートを実装するシステムを説明する。この例においても,上流ISPは,アドレス空間の移動を許容するデフラグ許容者用のアドレス空間と,アドレス空間の移動を許容しないデフラグ拒絶者優先アドレス空間とを有する。
上流ISPは,要求者がデフラグ許容者であるか又はデフラグ拒絶者であるか判断する手段を有する。
上流ISPは,要求者がデフラグ許容者の場合は,デフラグ許容者用のアドレス空間に要求者の要求を満たす連続したアドレス空間が存在するか否か判断する手段を有する。
上流ISPは,デフラグ許容者用のアドレス空間に要求者の要求を満たす連続したアドレス空間が存在しない場合は,デフラグ許容者用のアドレス空間をデフラグメントした場合に要求者の要求を満たす連続したアドレス空間を確保できるか否か試算する手段を有する。
上流ISPは,デフラグ許容者用のアドレス空間をデフラグメントした場合に要求者の要求を満たす連続したアドレス空間を確保できる場合は,デフラグメント処理を行う手段を有する。
上流ISPは,デフラグ許容者用のアドレス空間をデフラグメントした場合に要求者の要求を満たす連続したアドレス空間を確保できない場合は,デフラグ拒絶者優先アドレス空間に要求者の要求を満たす連続したアドレス空間が存在するか否か判断する手段を有する。
次に図5のフローチャートに示されるデフラグメント処理を実装するためのシステムの例を説明する。上流ISPは,ISPのデフラグ許容者用のアドレス空間を配分された全ての下流ISPについてその下流域に位置するISPの数Iを計算する手段を有する。
上流ISPは,ISPのデフラグ許容者用のアドレス空間の連続するアドレス空間における空きアドレス空間のサイズSと,ぞれぞれの空きアドレス空間に隣接する使用中のアドレス空間のIとを用いて,それぞれの空きアドレス空間と隣接する使用中のアドレス空間のペアのS/Iを求めるための手段を有する。上流ISPは,S/Iの値の大きなペアから順に,要求者のアドレス空間配分要求を満たす空間サイズを確保できるか否か検討する手段を有する。
上流ISPは,要求者のアドレス空間配分要求を満たす空間サイズを確保できる場合は,そのようなペアに含まれる使用中のアドレス空間を移動させるデフラグメント処理を行う手段を有する。要求者のアドレス空間配分要求を満たす空間サイズを確保できない場合は,デフラグメントにより要求者のアドレス空間配分要求を満たす空間サイズを確保できないと判断してもよいし,更にデフラグメント処理を進めてもよい。
次に第3の態様の実装するためのシステムについて説明する。上流ISPが,要求者に対して自らのアドレス空間を配分できるか否か判断する際に,アドレス空間が要求者が要求する空間サイズを満たせない場合,上流ISPの更に上流ISPに対しアドレス空間配分要求を送信する手段を有する。また,上流ISPは,上流ISPのアドレス空間を拡張した際の拡張されたアドレス空間を試算する手段を有する。