(57)【要約】【課題】複数のＩＰｖ４Ｅアドレス空間を従来よりも小さなＩＰｖ６アドレス空間にマッピングすることを課題とする。【解決手段】本発明のマッピング装置（Ｃ‐ＳＡＭ装置４）は、複数のＩＰｖ４Ｅアドレス空間を複数、および、ＩＰｖ６アドレス空間を記憶する記憶部４２と、複数のＩＰｖ４Ｅアドレス空間に含まれるＩＰｖ４Ｅアドレス数をｎとしたとき、２ｍ≧ｎ、を満たす最小の自然数ｍを算出し、ＩＰｖ６アドレス空間におけるｍビットの領域を用いることで、複数のＩＰｖ４Ｅアドレス空間それぞれをＩＰｖ６アドレス空間にマッピングする演算部４１と、を備える。【選択図】図１
2012175383.tif 000002
【特許請求の範囲】
【請求項１】
複数のＩＰｖ４Ｅアドレス空間をＩＰｖ６アドレス空間にマッピングするマッピング装置であって、
３２ビットのＩＰｖ４アドレスと、０〜１６ビットのいずれかのサイズのポートアドレスとから構成されるＩＰｖ４Ｅアドレスにおいて、前記ＩＰｖ４Ｅアドレスにおける所定数のビットをプレフィックス、残りのビットをサフィックスとした場合に、
複数のＩＰｖ４Ｅアドレス空間、および、前記ＩＰｖ６アドレス空間を記憶する記憶部と、
前記複数のＩＰｖ４Ｅアドレス空間に含まれるＩＰｖ４Ｅアドレス数をｎとしたとき、
２ｍ≧ｎ、を満たす最小の自然数ｍを算出し、
前記ＩＰｖ６アドレス空間におけるｍビットの領域を用いることで、前記複数のＩＰｖ４Ｅアドレス空間それぞれを前記ＩＰｖ６アドレス空間にマッピングする演算部と、
を備えることを特徴とするマッピング装置。
【請求項２】
表示部をさらに備えており、
前記記憶部は、
前記自然数ｍについての許容上限値を記憶しており、
前記演算部は、
算出した前記自然数ｍが前記許容上限値を超えていた場合、前記表示部にマッピング不可の旨の表示を行う
ことを特徴とする請求項１に記載のマッピング装置。
【請求項３】
前記演算部は、
前記ＩＰｖ６アドレス空間におけるｍビットの領域を用いることで、前記複数のＩＰｖ４Ｅアドレス空間それぞれを前記ＩＰｖ６アドレス空間にマッピングするとき、
前記複数のＩＰｖ４Ｅアドレス空間を、前記サフィックスが長い順にソートし、
前記ソートした順に、それぞれの前記ＩＰｖ４Ｅアドレス空間のサフィックスに対応する領域とその他の領域との合計がｍビットになり、前記サフィックスに対応する領域が下位ビット側に位置するように、前記ＩＰｖ６アドレス空間の領域を確保し、
当該ｍビットの領域のうち、前記サフィックスが一番短いＩＰｖ４Ｅアドレス空間の当該サフィックスに対応するサイズの分を下位ビット側から除外した領域を新空間として用いて、
前記新空間において、前記ソートした順に、
前記サフィックスに対応する領域にはすべてのビットに「０」を入れ、
その他の領域には、１つ目の領域にはすべてのビットに「１」を入れ、２つ目以降の領域には、その新空間分のビットの数値が、１つ前の領域の新空間分のビットの数値以上とならない最大の数値となるように、各ビットに「１」か「０」を入れる
ことを特徴とする請求項１または請求項２に記載のマッピング装置。
【請求項４】
複数のＩＰｖ４Ｅアドレス空間をＩＰｖ６アドレス空間にマッピングするマッピング装置によるマッピング方法であって、
３２ビットのＩＰｖ４アドレスと、０〜１６ビットのいずれかのサイズのポートアドレスとから構成されるＩＰｖ４Ｅアドレスにおいて、前記ＩＰｖ４Ｅアドレスにおける所定数のビットをプレフィックス、残りのビットをサフィックスとした場合に、
前記マッピング装置は、複数のＩＰｖ４Ｅアドレス空間、および、前記ＩＰｖ６アドレス空間を記憶する記憶部と、演算部と、を備えており、
前記演算部は、
前記複数のＩＰｖ４Ｅアドレス空間に含まれるＩＰｖ４Ｅアドレス数をｎとしたとき、
２ｍ≧ｎ、を満たす最小の自然数ｍを算出し、
前記ＩＰｖ６アドレス空間におけるｍビットの領域を用いることで、前記複数のＩＰｖ４Ｅアドレス空間それぞれを前記ＩＰｖ６アドレス空間にマッピングする
ことを特徴とするマッピング方法。
【請求項５】
前記マッピング装置は、表示部をさらに備えており、
前記記憶部は、
前記自然数ｍについての許容上限値を記憶しており、
前記演算部は、
算出した前記自然数ｍが前記許容上限値を超えていた場合、前記表示部にマッピング不可の旨の表示を行う
ことを特徴とする請求項４に記載のマッピング方法。
【請求項６】
前記演算部は、
前記ＩＰｖ６アドレス空間におけるｍビットの領域を用いることで、前記複数のＩＰｖ４Ｅアドレス空間それぞれを前記ＩＰｖ６アドレス空間にマッピングするとき、
前記複数のＩＰｖ４Ｅアドレス空間を、前記サフィックスが長い順にソートし、
前記ソートした順に、それぞれの前記ＩＰｖ４Ｅアドレス空間のサフィックスに対応する領域とその他の領域との合計がｍビットになり、前記サフィックスに対応する領域が下位ビット側に位置するように、前記ＩＰｖ６アドレス空間の領域を確保し、
当該ｍビットの領域のうち、前記サフィックスが一番短いＩＰｖ４Ｅアドレス空間の当該サフィックスに対応するサイズの分を下位ビット側から除外した領域を新空間として用いて、
前記新空間において、前記ソートした順に、
前記サフィックスに対応する領域にはすべてのビットに「０」を入れ、
その他の領域には、１つ目の領域にはすべてのビットに「１」を入れ、２つ目以降の領域には、その新空間分のビットの数値が、１つ前の領域の新空間分のビットの数値以上とならない最大の数値となるように、各ビットに「１」か「０」を入れる
ことを特徴とする請求項４または請求項５に記載のマッピング方法。
【請求項７】
請求項４から請求項６のいずれか一項に記載のマッピング方法をコンピュータに実行させるためのマッピングプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のＩＰｖ４（Internet Protocol version 4）Ｅアドレス空間をＩＰｖ６（Internet Protocol version 6）アドレス空間にマッピングする技術に関する。
【背景技術】
【０００２】
従来、ＩＰｖ６網上にＩＰｖ４パケットを流すためのトンネルをステートレスに運用する技術として、ＩＥＴＦ（Internet Engineering Task Force）の非特許文献１に開示されている、ＩＰｖ４ over ＩＰｖ６トンネル（以下「ＳＡＭトンネル」と称する。）の実装方式であるＳＡＭ（Stateless Address Mapping）が知られている。
【０００３】
ＳＡＭトンネルにおいて、ＩＰｖ６パケットにカプセリングされる際のＩＰｖ４パケットのアドレスであって、ＩＰｖ４ソースアドレス（３２ビット）にＴＣＰ（Transmission Control Protocol）またはＵＤＰ（User Datagram Protocol）のソースポートアドレス（０〜１６ビット）を加えたものを、インナーＩＰｖ４Ｅアドレス（以後、同一の意味として「ＩＰｖ４Ｅアドレス」とも記す）と呼ぶ。このインナーＩＰｖ４Ｅアドレスにおけるポートアドレスの長さは０〜１６ビットのいずれかで一定ではないので、インナーＩＰｖ４Ｅアドレスの全長は３２〜４８ビットのいずれかとなる。以下、プレフィックスが同じである複数のインナーＩＰｖ４Ｅアドレスの集合をインナーＩＰｖ４Ｅアドレス空間（以後、同一の意味として「ＩＰｖ４Ｅアドレス空間」とも記す）と称する。また、複数のインナーＩＰｖ４Ｅアドレス空間の集合をインナーＩＰｖ４Ｅアドレス空間群と称する。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】R. Despres, "Stateless Address Mapping (SAM) - a Simplified Mesh- Softwire Model", [online], Internet Engineering Task Force Internet-Draft, July 12, 2010, [平成２３年２月１４日検索]， インターネット＜URL:http://tools.ietf.org/html/draft-despres-softwire-sam-01＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
前記カプセリングを行うために、インナーＩＰｖ４Ｅアドレス空間群を単一のプレフィックスのＩＰｖ６アドレス空間にマッピングする際、インナーＩＰｖ４Ｅアドレス空間群の各プレフィックス間に先頭ビット位置から共通部分がまったくない場合には、マッピング先のＩＰｖ６アドレス空間には、インナーＩＰｖ４Ｅアドレス空間の全長分の長さ（例えば、ポートアドレスが４ビットであれば、ＩＰｖ４アドレスの３２ビットと合わせて合計３６ビット）のアドレス空間が必要であった。つまり、マッピング先として大きなＩＰｖ６アドレス空間が必要となってしまうという問題があった。
【０００６】
そこで、本発明は、前記した問題に鑑みてなされたものであり、複数のＩＰｖ４Ｅアドレス空間を従来よりも小さなＩＰｖ６アドレス空間にマッピングすることを課題とする。
【課題を解決するための手段】
【０００７】
前記した問題を解決するために、本発明は、複数のＩＰｖ４Ｅアドレス空間をＩＰｖ６アドレス空間にマッピングするマッピング装置、または、そのマッピング装置によるマッピング方法である。
マッピング装置は、３２ビットのＩＰｖ４アドレスと、０〜１６ビットのいずれかのサイズのポートアドレスとから構成されるＩＰｖ４Ｅアドレスにおいて、前記ＩＰｖ４Ｅアドレスにおける所定数のビットをプレフィックス、残りのビットをサフィックスとした場合に、複数のＩＰｖ４Ｅアドレス空間、および、前記ＩＰｖ６アドレス空間を記憶する記憶部と、前記複数のＩＰｖ４Ｅアドレス空間に含まれるＩＰｖ４Ｅアドレス数をｎとしたとき、２ｍ≧ｎ、を満たす最小の自然数ｍを算出し、前記ＩＰｖ６アドレス空間におけるｍビットの領域を用いることで、前記複数のＩＰｖ４Ｅアドレス空間それぞれを前記ＩＰｖ６アドレス空間にマッピングする演算部と、を備える。
【０００８】
これによれば、ＩＰｖ６アドレス空間における識別用の領域として、前記のように算出したｍビットの領域を用いることで、複数のＩＰｖ４Ｅアドレス空間を従来よりも小さなＩＰｖ６アドレス空間にマッピングすることができる。
【発明の効果】
【０００９】
本発明によれば、複数のＩＰｖ４Ｅアドレス空間を従来よりも小さなＩＰｖ６アドレス空間にマッピングすることができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態のネットワークや装置の構成図である。
【図２】（ａ）はアウターＩＰｖ６アドレスのビット構成の説明図であり、（ｂ）はインナーＩＰｖ４Ｅアドレスのビット構成の説明図である。
【図３】Ｃ‐ＳＡＭ装置によるマッピング処理を示すフローチャートである。
【図４】ユーザがＣ‐ＳＡＭ装置にインナーＩＰｖ４Ｅアドレス空間群情報を入力する場面の画面例を示す図である。
【図５】ユーザがインナーＩＰｖ４Ｅアドレス空間群情報等を入力した際に、必要な領域を表示し、必要となる固定値の入力を促すポップアップ画面例である。
【図６】ユーザがインナーＩＰｖ４Ｅアドレス空間群情報等を入力した際に、マッピングＩＰｖ６アドレス空間が不足しているのでマッピングできない旨を表示するポップアップ画面例である。
【図７】図４に対応し、マッピングＩＰｖ６アドレス空間の例も表示した図である。
【図８】図４に対応し、入力されたインナーＩＰｖ４Ｅアドレス空間群を、上からサフィックスが長い順に並べたものを示すイメージ図である。
【図９】図８に対応し、各々のプレフィックス部分を短くしてマッピングした場合を示す図である。
【図１０】図７に示したマッピングルールを元に、具体的なＩＰｖ４Ｅアドレス情報をユーザが入力する画面例である。
【図１１】図１０に対応し、ユーザが入力したＩＰｖ４Ｅアドレス情報を元にマッピングされたＩＰｖ６アドレス情報を出力する画面例である。
【図１２】図１０に対応し、入力されたＩＰｖ４Ｅアドレスが図７に示したマッピングルールに当てはまらない場合のポップアップ画面例である。
【図１３】ユーザがＣ‐ＳＡＭ装置にインナーＩＰｖ４Ｅアドレス空間群情報を入力する場面の画面例であり、マッピング先のＩＰｖ６アドレス空間の払い出し長が２種類ある場合について示した図である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態（以下、「実施形態」と称する。）について、図面を参照（言及図以外の図も適宜参照）しながら説明する。まず、図１を参照して、本実施形態のネットワークや装置の構成について説明する。
【００１２】
各種サービスを提供するサーバ１が存在するＩＰｖ４バックボーンネットワーク１００と、ＤＨＣＰ（Dynamic Host Configuration Protocol）‐ＰＤ（Prefix Delegation）サーバ３が存在するＩＰｖ６ネットワーク２００との境界に、Ｐ（Provider）‐ＳＡＭ装置２が設けられている。ＩＰｖ６ネットワーク２００と、ユーザ端末５が存在するカスタマーネットワーク３００の境界に、Ｃ（Customer）‐ＳＡＭ装置４が設けられている。Ｐ‐ＳＡＭ装置２とＣ‐ＳＡＭ装置４の間には、ＳＡＭトンネル６が設定されている。ＳＡＭトンネル６では、インナーＩＰｖ４Ｅアドレスを持つパケットが送受信される。
【００１３】
ここでは、ユーザが操作するユーザ端末５が、Ｃ‐ＳＡＭ装置４、ＳＡＭトンネル６、Ｐ‐ＳＡＭ装置２を経由して、サーバ１にＩＰｖ４通信でアクセスして、サーバ１からサービスを受ける場合について説明する。ＤＨＣＰ‐ＰＤサーバ３は、Ｃ‐ＳＡＭ装置４のトンネル終端アドレス（ＩＰｖ６プレフィックス）を払い出す。Ｃ‐ＳＡＭ装置４は、ユーザ端末５に、ＩＰｖ４プライベートアドレスを払い出す。
【００１４】
Ｃ‐ＳＡＭ装置４は、演算部４１、記憶部４２、入力部４３、表示部４４および通信部４５を備えて構成されるコンピュータ装置であり、例えば、パソコン、ワークステーション、スーパーコンピュータなどにより実現することができる。
【００１５】
演算部４１は、記憶部４２に記憶された各種情報（プログラム、データなど）などに基づいて演算（処理）を行うものであり、例えば、ＣＰＵ（Central Processing Unit）により実現される。
記憶部４２は、各種情報を記憶するものであり、例えば、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ハードディスクなどにより実現される。記憶部４２は、例えば、インナーＩＰｖ４Ｅアドレス空間を複数記憶し、また、このアドレス空間のマッピング先のＩＰｖ６アドレス空間を記憶する（詳細は後記）。
【００１６】
入力部４３は、Ｃ‐ＳＡＭ装置４のユーザが各種情報を入力する手段であり、例えば、キーボード、マウスなどにより実現される。
表示部４４は、演算部４１による演算結果を表示するものであり、例えば、液晶ディスプレイなどにより実現される。
通信部４５は、外部装置との通信のための手段であり、例えば、通信ポートや通信インターフェイスなどにより実現される。
【００１７】
次に、図２を参照して、アウターＩＰｖ６アドレスのビット構成とインナーＩＰｖ４Ｅアドレスのビット構成について説明する。ここで、アウターＩＰｖ６アドレスとは、ＳＡＭトンネル６においてカプセリングされるＩＰｖ６パケットに宛先として設定されるアドレスを指す。
【００１８】
図２（ａ）に示すように、アウターＩＰｖ６アドレスは、ＤＨＣＰ‐ＰＤサーバ３によって払い出される４８ビットのプレフィックスと、ＳＬＡ（Site-Level Aggregation）‐ＩＤ（Identifier）、インターフェイスＩＤ等からなる８０ビットの任意の固定値との合計１２８ビットから構成される。
【００１９】
図２（ｂ）に示すように、インナーＩＰｖ４Ｅアドレスは、３２ビットのＩＰｖ４アドレスと、０〜１６ビットのポートアドレスとの合計３２〜４８ビットから構成される。図２（ｂ）では、ポートアドレスが４ビットで、インナーＩＰｖ４Ｅアドレスが３６ビットの場合を示しており、残りの１２ビットの領域はポート本来の目的に使用される。
【００２０】
なお、ＳＡＭの規則として、インナーＩＰｖ４Ｅアドレスの引継ぎ元領域の値が、アウターＩＰｖ６アドレスの引継ぎ先領域に引き継がれる。
【００２１】
図１に戻って、ＩＥＴＦのdraft-despres-softwire-sam（非特許文献１参照）では、ＩＰｖ４通信でのＮＡＴ（Network Address Translation）あるいはＮＡＰＴ（Network Address Port Translation）の処理及び位置について特に規定されていないが、本実施形態では、Ｃ‐ＳＡＭ装置４にてＮＡＰＴ処理を行うものとする。
【００２２】
すなわち、Ｃ‐ＳＡＭ装置４は、カスタマーネットワーク３００内のユーザ端末５にＩＰｖ４プライベートアドレスを払い出し、ユーザ端末５からのパケットのＩＰｖ４プライベートソースアドレスをＩＰｖ４Ｅグローバルソースアドレスに変換し、ＩＰｖ６パケットでカプセリングしてＩＰｖ６ネットワーク２００のＳＡＭトンネル６に送信する。また、Ｃ‐ＳＡＭ装置４は、ＩＰｖ６ネットワーク２００のＳＡＭトンネル６からのパケットについては、カプセルを外してＩＰｖ４パケットにし、ＩＰｖ４Ｅグローバルデスティネーションアドレスをユーザ端末５のＩＰｖ４プライベートアドレスに変換してカスタマーネットワーク３００に送信する。
【００２３】
ＳＡＭを利用する場合、Ｃ‐ＳＡＭ装置４は、アウターＩＰｖ６アドレスとインナーＩＰｖ４Ｅアドレスを１：１に対応させて保持する必要がある。以下、例を挙げて説明する。
【００２４】
図４に示すように、Ｃ‐ＳＡＭ装置４は、ＩＰｖ６プレフィックスとして「fc00:3b00::/24」を保持しており、インナーＩＰｖ４Ｅアドレス空間として、ＩＰｖ４アドレス空間の「10.0.176.0/20」とポートビット長の「4」ビットを保持していたとする。なお、ＩＰｖ６プレフィックスの「fc00:3b00::/24」において、「/24」は左（先頭）から２４ビットがプレフィックスであることを示しており、「::」は「0」が連続することを示している。また、同様に、ＩＰｖ４アドレス空間の「10.0.176.0/20」において、「/20」は左（先頭）から２０ビットがプレフィックスであることを示している。
【００２５】
そして、インナーＩＰｖ４Ｅアドレス群を「fc00:3b00::/24」にマッピングする必要があるが、当該群内の各インナーＩＰｖ４Ｅアドレス空間については先頭ビットから共通していないため、インナーＩＰｖ４Ｅアドレス空間群全体に対しては、ＳＡＭに於けるプレフィックス長は「０」とみなすことができる。それゆえ、当該群内の各インナーＩＰｖ４Ｅアドレス空間については全長がサフィックス相当となり、最長で３６ビットをＩＰｖ６アドレスにマッピングする必要がある。しかし、ＩＰｖ６プレフィックスが２４ビットであり、払い出し長が４８ビットなので、マッピングできる空間は４８−２４＝２４ビットしかないため、マッピング不能となってしまう。そこで、各インナーＩＰｖ４Ｅアドレス空間群のサフィックスに相当する部分はそのままとして、それぞれのプレフィックスに相当する部分を短く圧縮してマッピングする手法を考える。
【００２６】
次に、図３、図４などを参照して、Ｃ‐ＳＡＭ装置４の処理について説明する。
まず、ユーザは、図４に示すように、表示部４４におけるマッピングルールの画面において、ＩＰｖ６プレフィックス、払い出し長、インナーＩＰｖ４Ｅアドレス空間（ＩＰｖ４アドレス空間とポートビット長）の欄に各値を図示のように入力部４３（図１参照）を用いて入力して、入力ボタン４４１の選択入力を行う。なお、この入力をやめる場合は、キャンセルボタン４４２を押せば、他の画面に遷移する。
【００２７】
そうすると、演算部４１（図１参照）は、入力されたインナーＩＰｖ４Ｅアドレス空間群を、末尾を揃えて、上からサフィックスが長い順に並べる（図３のステップＳ１）。その並べたイメージは、図８に示す通りである。図８において、右方のドット部分はサフィックス（ポート領域を含む。）であり、その左側の斜線部分はプレフィックスである。なお、図４に示す各インナーＩＰｖ４Ｅアドレス空間のサフィックスのビット数は、一行目から順に、１６（＝３２（ＩＰｖ４アドレス全長）−２０（プレフィックス）＋４（ポートビット長）、以下同様に計算）、１６、１４、１４、８、７、１６、１４、１４、１４、７である。したがって、サフィックスのビット数は、長いほうから１６が３つ、１４が５つ、８が１つ、７が２つとなる（図８の一行目〜十一行目参照）。なお、サフィックスが同じ長さのインナーＩＰｖ４Ｅアドレス空間の順番は順不同とする。以下では、サフィックスはそのままにして、プレフィックスをライン１からライン２に圧縮することを考える。
【００２８】
次に、入力されたインナーＩＰｖ４Ｅアドレス空間群内の全アドレス数を求める（以下、本段落の処理が図３のステップＳ２）。これは、各々のインナーＩＰｖ４Ｅアドレス空間内のアドレス数（すなわち、２のサフィックス長乗）の総和を計算することで算出できる。続いて、その総和に対して底を２とする対数をとり、その小数点以下を切り上げた数字（整数）（以下、「新アドレス長」と称する。）を求める。そして、その新アドレス長を末尾からの最高桁数とし、「最下段のサフィックス桁数＋１」を１桁目とする空間を「新空間」（図９のライン２とライン３で挟まれた領域）と定義する。
【００２９】
図４の場合を例にとると、インナーＩＰｖ４Ｅアドレス空間群のアドレス数の総和は、
２＾１６＊３＋２＾１４＊５＋２＾８＊１＋２＾７＊２＝２７９０４０（「＾」は累乗、「＊」は掛け算を表す。）である。
【００３０】
また、この総和の対数をとると
ｌｏｇ２２７９０４０＝１８．０９…
であり、小数点以下を切り上げた数字は１９である。
なお、前記した全アドレス数をｎとしたとき、ｌｏｇ２ｎの小数点以下を切り上げた数字を算出することは、「２ｍ≧ｎ」を満たす最小の自然数ｍを算出することと同値である。
【００３１】
このようにして、図８、図９における末尾（右端）からライン２までのビット数は１９であることが分かる。また、算出したアドレス数である２７９０４０は２＾１８＝２６２１４４より大きいことから、インナーＩＰｖ４Ｅアドレス空間群の全アドレスを１８ビットの空間にマッピングすることは不可能なので、算出した１９ビットはマッピングできる最小のビット数であることが分かる。
【００３２】
次に、演算部４１は、処理対象の行が一行目か、二行目〜最終行か、あるいは、最終行処理終了かを判定し（図３のステップＳ３）、一行目であれば図３のステップＳ４に進み、二行目〜最終行であれば図３のステップＳ５に進み、最終行処理終了であれば処理を終了する。
【００３３】
以下、新空間の各ビットを「０」，「１」で埋める処理について説明する。概説すると、新空間において、サフィックスエリア（サフィックスの各ビット）はすべて「０」で埋め、それ以外の部分の各ビットはカウントダウン式に埋めていく。
【００３４】
具体的には、演算部４１は、図３のステップＳ４で、一行目のサフィックスエリアはすべて「０」とし、サフィックスエリア以外はすべて「１」とする。
次に、演算部４１は、図３のステップＳ５で、二行目以降について、サフィックスエリアはすべて「０」とし、サフィックスエリア以外は、１つ上の行の同じ桁の数字から１を引いた数の数字で埋める。すなわち、計算式としては、次のようになる。
【００３５】
｛「一行上の数字（新空間のすべての桁の数字）」−１）／（２＾「当該行の新空間内のサフィックス長」）｝＊（２＾「当該行の新空間内のサフィックス長」）
（「／」は整数除算（除算して小数点以下を切り捨てる演算）を表す。）
なお、（２＾「当該行の新空間内のサフィックス長」）は、便宜上、二進数表記していない。
【００３６】
具体的には、図９の二行目の場合は、
｛（１１１０００００００００−１）／（２＾９）｝＊（２＾９）＝
１１００００００００００
である。
【００３７】
なお、（１１１０００００００００−１）＝１１０１１１１１１１１１であり、
１１０１１１１１１１１１／（２＾９）＝１１０であり、
１１０＊（２＾９）＝１１００００００００００である。
【００３８】
このようにして、図９に示すように、新空間内の各ビットを「０」と「１」で埋めることができる。つまり、この処理によって、新空間において、ソートした上の行から順に、サフィックスに対応する領域にはすべてのビットに「０」を入れ、その他の領域には、一行目（１つ目）の領域にはすべてのビットに「１」を入れ、二行目（２つ目）以降の領域には、その新空間分のビットの数値が、１つ上（１つ前）の領域の新空間分のビットの数値以上とならない最大の数値となるように、各ビットに「１」か「０」を入れることができる。
【００３９】
そして、図７に示すように、各々のインナーＩＰｖ４Ｅアドレス空間に対応するＩＰｖ６アドレス空間を出力するためには、図９のＩＰｖ６プレフィックスのエリアと新空間の間のエリアの「任意の固定値」が必要になる。そこで、Ｃ‐ＳＡＭ装置４は、図５に示すように、表示部４４にポップアップ画面を表示し、ユーザに任意の固定値の入力を求める。図５では、任意の固定値として「10010」が入力されている。この入力後に設定ボタン４４３を押せば、任意の固定値が設定される。この入力をやめる場合は、キャンセルボタン４４４を押せばよい。
【００４０】
この「任意の固定値」の長さがマイナスとなる場合、すなわち、図９の例では、新アドレス長が２４ビット（許容上限値）よりも大きい場合には、マッピングができないので、図６に示すようにマッピング不可の旨の表示を行う。これを見たユーザがＯＫボタン４４５を選択入力すると、他の画面に遷移する。
【００４１】
Ｃ‐ＳＡＭ装置４は、最終的に、図９に示すＩＰｖ６プレフィックス、任意の固定値、および、マッピング値（新空間内でサフィックスエリア以外の部分の値）の組み合わせを、各々のインナーＩＰｖ４Ｅアドレス空間に対応するＩＰｖ６アドレス空間として図７に示すように出力する。図７に示すＩＰｖ６アドレス空間では、「fc00:3b90::/29」が共通になっている。
【００４２】
ユーザがＯＫボタン４４６（図７参照）の選択入力を行うと、他の画面に遷移する。また、ユーザが図面表示ボタン４４７（図７参照）の選択入力を行うと、図９の情報が表示部４４に表示される。ユーザは、この情報を見れば、残りの空間（未使用の空間）が、新空間の最下段の数字（サフィックスはすべて「０」として、「0111011110110000000」）よりも小さい部分のエリア（「0111011110110000000」未満で「0000000000000000000」以上のエリア）であると知ることができる。
【００４３】
また、ユーザがアドレスマッピングボタン４４８（図７参照）の選択入力を行うと、Ｃ‐ＳＡＭ装置４は、図１０に示すように、具体的なインナーＩＰｖ４Ｅアドレスの入力を求める。ユーザはこの画面をキャンセルするにはキャンセルボタン４４０２の選択入力を行う。ユーザがインナーＩＰｖ４Ｅアドレスを入力して設定ボタン４４０１の選択入力を行うと、Ｃ‐ＳＡＭ装置４は、表示部４４に、図１１に示すように、対応する（マッピング）ＩＰｖ６アドレスを出力する。ユーザはこの内容でＯＫであればＯＫボタン４４０３の選択入力を行う。
【００４４】
図１０に示した表示部４４に入力された情報が図４に示すどのインナーＩＰｖ４Ｅアドレス空間にも当てはまらない場合には、図１２に示すようなポップアップ画面が出力される。ユーザはこの画面を終えるにはＯＫボタン４４０４の選択入力を行う。
【００４５】
このように、本実施形態のＣ‐ＳＡＭ装置４によれば、複数のＩＰｖ４Ｅアドレス空間に含まれるＩＰｖ４Ｅアドレス数をｎとしたとき、ｌｏｇ２ｎの小数点以下を切り上げる計算を行って、「２ｍ≧ｎ」を満たす最小の自然数ｍを算出する。そして、ＩＰｖ６アドレス空間におけるｍビットの領域（新空間を含む「必要な領域」（図９参照））を用いることで、複数のＩＰｖ４Ｅアドレス空間を従来よりも小さなＩＰｖ６アドレス空間、つまり、複数のＩＰｖ４Ｅアドレス空間の全体のアドレス数に対して必要十分なサイズのアドレス空間にマッピングすることができ、ＩＰｖ６アドレス空間をより有効活用できる。
【００４６】
また、ｌｏｇ２ｎを計算して得た数値の小数点以下を切り上げることで、前記した自然数ｍを容易に算出することができる。
【００４７】
また、算出した自然数ｍが許容上限値を超えていた場合、表示部４４にマッピング不可の旨の表示を行うことで、ユーザはマッピング不可を容易に知ることができる。
【００４８】
また、インナーＩＰｖ４Ｅアドレス空間群のサフィックスが長いほうから順に並べた新空間において、全行のサフィックスの領域にはビットに「０」を入れ、その他の領域には、最初の行にはすべて「１」を入れ、二行目以降には、その行の新空間内のビットの数値が１つ前の行の新空間内のビットの数値以上とならない最大の数値となるように各ビットに「１」か「０」を入れることで、各ＩＰｖ４Ｅアドレス空間のアドレス数に対応した適切なマッピングをすることができる。また、ユーザは、新空間の最終行の数値を見ることで、残りのアドレス空間の大きさを知ることができる。
【００４９】
なお、以上の例では、インナーＩＰｖ４Ｅアドレス空間群のマッピング先のＩＰｖ６アドレス空間（ＩＰｖ６の払い出し長）が単一の場合を想定したが、マッピング先のＩＰｖ６アドレス空間（ＩＰｖ６の払い出し長）の長さが例えば２種類ある場合には、次のようにして処理すればよい。
【００５０】
２種類のＩＰｖ６アドレス空間の長さの差をαビットとする。そして、短いほうのＩＰｖ６アドレス空間を基準に前記した処理を行う際、長いほうのＩＰｖ６アドレス空間にマッピングするインナーＩＰｖ４Ｅアドレス空間については、図３のステップＳ１でインナーＩＰｖ４Ｅアドレス空間群を並べるときにサフィックス長がα分長いものとし、図３のステップＳ２でアドレス数を計算するときにサフィックス長がα分長いものとして計算すればよい。
【００５１】
また、ユーザがＣ‐ＳＡＭ装置４にインナーＩＰｖ４Ｅアドレス空間群情報を入力する場面の画面例としては、図４に示す画面の代わりに、図１３に示す画面を用いればよい。図１３に示す画面では、インナーＩＰｖ４Ｅアドレス空間毎にマッピング先のＩＰｖ６アドレス空間に関する払い出し長の欄（「ＩＰｖ６払出長」）が設けられている。なお、図１３の一行目の場合を例にとると、サフィックス長は、
３２（ＩＰｖ４アドレス全長）−２０（プレフィックス）＋
４（ポートビット長）＋８（αの値）＝２４
となる。
【００５２】
なお、Ｃ‐ＳＡＭ装置４を構成するコンピュータ（装置）に実行させるためのプログラムを作成し、コンピュータにインストールすれば、コンピュータは、そのプログラムに基づいた各機能を実現することができる。
【００５３】
以上で本実施形態の説明を終えるが、本発明の態様はこれらに限定されるものではない。各装置の構成や処理の具体的な内容について、本発明の主旨を逸脱しない範囲で適宜変更が可能である。
【符号の説明】
【００５４】
１      サーバ
２      Ｐ‐ＳＡＭ装置
３      ＤＨＣＰ‐ＰＤサーバ
４      Ｃ‐ＳＡＭ装置
５      ユーザ端末
６      ＳＡＭトンネル
４１    演算部
４２    記憶部
４３    入力部
４４    表示部
４５    通信部
１００  ＩＰｖ４バックボーンネットワーク
２００  ＩＰｖ６ネットワーク
３００  カスタマーネットワーク
【図１】
2012175383.tif 000003
【図２】
2012175383.tif 000004
【図３】
2012175383.tif 000005
【図４】
2012175383.tif 000006
【図５】
2012175383.tif 000007
【図６】
2012175383.tif 000008
【図７】
2012175383.tif 000009
【図８】
2012175383.tif 000010
【図９】
2012175383.tif 000011
【図１０】
2012175383.tif 000012
【図１１】
2012175383.tif 000013
【図１２】
2012175383.tif 000014
【図１３】
2012175383.tif 000015