説明

パケット転送装置、パケット転送方法、およびプログラム

【課題】同一のIPアドレスを有するCPE間において、適切にパケットの転送を行なうことが可能なパケット転送装置、転送方法、およびプログラムを提供することを目的とする。
【解決手段】ネットワーク上の別の装置と共通するIPアドレス、および異なるポートレンジが割り当てられたパケット転送装置であって、データパケットを受信するパケット受信部と、パケット受信部にて受信したデータパケットの宛先IPアドレスおよび宛先ポート番号に基づいて、受信したデータパケットが自局宛てであるか否かを判断するパケット識別部と、パケット識別部にて、データパケットが自局宛てでないと判断された場合に、該データパケットを転送するパケット転送部と、を備える構成とした。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、A+P環境下におけるパケット転送装置、パケット転送方法、およびプログラムに関するものである。
【背景技術】
【0002】
インターネットの発展に伴い、IPアドレスの管理を行なうインターネットレジストリによって分配されているIPv4アドレスの在庫が残り少なくなり、近い将来には枯渇するといわれている。そのため、近年、IPv4の替わりとして、膨大なアドレス空間を持つIPv6の導入が進められ、IPv6対応の機器やIPv6コンテンツサービスなどが提供され始めている。しかしながら、全ての機器やサービスがIPv6対応となるのはまだ先であり、IPv4アドレスが枯渇した後も、既存のIPv4対応機器に対するIPv4サービスの提供は当面続けられるものと予想される。そのため、IPv6とIPv4を並行して利用するための「IPv4 over IPv6」などの方式が提案されるとともに、特にIPv4ネットワークが拡がっている先進国においては、IPv4アドレスの枯渇を先延ばしにするための様々な方式が開発されている。
【0003】
このような方式の一つとして、近年、A+P(Address Plus Port)と呼ばれる方式がIETF(Internet Engineering Task Forth)等から提案されている。非特許文献1、2および非特許文献3は、A+Pに関する技術仕様が記載されるインターネットドラフトである。A+Pでは、インターネットサービス提供者から、ネットワーク上の複数のユーザ(詳しくは、ユーザ宅内ルータを含むCPE(Customer Premises Equipment)やホームゲートウェイ)に対して、共通するIPv4アドレスと異なるTCP/UDPポートレンジが割り当てられる。このように、複数のユーザで一つのIPv4アドレスを共有することにより、分配されるIPv4アドレスの数を減らすことができ、ユーザに対してポートレンジを制限することで、各ユーザの識別を可能としている。また、A+Pに近い方式として、非特許文献4に開示されるDS-Liteと呼ばれる技術も知られている。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】R. Despres, Ed. “Stateless Address Mapping (SAM)- a Simplified Mesh-Softwire Model”draft-despres-sam-01、IETF Internet-Draft、July, 2010
【非特許文献2】R. Bush, Ed. “The A+P Approach to the IPv4 AddressShortage”draft-ymbk-aplusp-05、IETF Internet-Draft、October, 2009
【非特許文献3】M. Boucadair, Ed., P. Levis, France Telecom、G. Bajko, T. Savolainen, Nokia “IPv4 Connectivity Access in the Context of IPv4Address Exhaustion: Port Range based IP Architecture”draft-boucadair-port-range-02.txt、IETF Internet-Draft、July, 2009
【非特許文献4】A. Durand et.al, Ed. “Dual-StackLite Broadband Deployments Following IPv4 Exhaustion”draft-ietf-softwire-dual-stack-lite-06.txt、IETF Internet-Draft、August, 2010
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、A+Pによって、複数のユーザに同一のIPv4アドレスが割り当てられる場合において、従来のパケット転送技術では、同じIPv4アドレスが割り当てられたユーザの端末同士が適切に通信を行なえないといった問題が生じる。詳しくは、例えば、ユーザAの宅内に設置されるCPE1と、ユーザBの宅内に設置されるCPE2に、A+Pによって以下のように共通のIPv4アドレスおよび異なるポートレンジが割り当てられるとする。
(CPE1)
IPv4アドレス: 120.10.10.1/24
ポートレンジ: 61001−62000
(CPE2)
IPv4アドレス: 120.10.10.1/24
ポートレンジ: 62001−63000
【0006】
ここで、ユーザAからユーザBへデータパケットを送信する場合には、まず、宛先アドレスをCPE2のIPv4アドレスである「120.10.10.1/24」とし、宛先ポート番号を「62100」とするデータパケットがユーザAの端末からCPE1に送信される。ここで、従来のIPパケット転送技術では、宛先IPアドレスのみに基づいてパケットの転送が行なわれる。そのため、データパケットを受信したCPE1は、宛先IPアドレスが自局のIPアドレスと同一であるため、当該データパケットを自局宛てのパケットであると判断し、自局受信してしまう。その後、CPE1では、自局受信したパケットの宛先ポート番号を参照し、該当するポート番号で待ち受けているソフトウェアにパケットを渡す。しかしながら、CPE1においては、該当するポート番号「62100」で待ち受けているソフトウェアが存在しないため、当該データパケットは廃棄される。このように、A+P環境下では、CPE2に転送されるべきパケットについても、CPE1が受信して破棄してしまうため、適切にパケットの転送を行なうことができない。非特許文献1、2および3には、複数のCPEにおいてIPv4アドレスを共有することについては記載されているものの、同一のIPv4アドレスが割り当てられたCPE間におけるパケット転送に関する上記の問題については、何ら記載されていない。
【0007】
そこで、本発明は上記の事情に鑑みてなされたものであり、同一のIPアドレスを有するCPE間において、適切にパケットの転送を行なうことが可能なパケット転送装置、転送方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記の課題を解決するため、本発明により、ネットワーク上の別の装置と共通するIPアドレス、および異なるポートレンジが割り当てられたパケット転送装置であって、データパケットを受信するパケット受信部と、パケット受信部にて受信したデータパケットの宛先IPアドレスおよび宛先ポート番号に基づいて、受信したデータパケットが自局宛てであるか否かを判断するパケット識別部と、パケット識別部にて、データパケットが自局宛てでないと判断された場合に、該データパケットを転送するパケット転送部と、を備えることを特徴とするパケット転送装置が提供される。
【0009】
このように、受信したデータパケットの宛先IPアドレスだけでなく、宛先ポート番号に基づいて、自局宛てのデータパケットであるか否かを判断することにより、同一のIPアドレスが割り当てられた別の装置を宛先とするデータパケットを受信した場合も、誤って自局で受信してしまうことなく、適切に転送することが可能となる。
【0010】
また、上記パケット識別部は、(1)受信したデータパケットの宛先IPアドレスが自局のIPアドレスと同じであり、受信したデータパケットの宛先ポート番号が自局のポートレンジに含まれない場合、または(2)受信したデータパケットの宛先IPアドレスが自局のIPアドレスと異なる場合に、受信したデータパケットが自局宛てでないと判断し、(3)受信したデータパケットの宛先IPアドレスが自局のIPアドレスと同じであり、受信したデータパケットの宛先ポート番号が、自局のポートレンジに含まれる場合に、受信したデータパケットが自局宛てであると判断する構成としても良い。
【0011】
また、上記パケット転送部は、受信したデータパケットの宛先IPアドレスおよび宛先ポート番号から識別子を特定し、特定された識別子に基づいて、データパケットの転送を行なうものであっても良い。また、この識別子は、例えば、IPv6アドレスまたはレイヤー2アドレスであり、パケット転送部は、これらのIPv6アドレスまたはレイヤー2アドレスを用いて、データパケットをカプセル化またはプロトコル変換して転送する構成としても良い。
【0012】
また、上記パケット転送部は、パケット識別部において、受信したデータパケットの宛先IPアドレスが自局のIPアドレスと異なるため、受信したデータパケットが自局宛てでないと判断された場合に、経路表に基づいて、データパケットのルーティングを行なうルーティング部を備える構成としても良い。そして、パケット転送部は、ルーティング部において選択された経路に基づいて、データパケットの転送を行なう構成としても良い。
【0013】
また、上記パケット転送装置は、宛先IPアドレス、ポートレンジ、および転送先に関する情報が対応付けられた拡張経路表をさらに備える構成としても良い。そして、この場合、パケット識別部は、該拡張経路表に基づいて、受信したパケットが自局宛てか否かを判断し、パケット転送部は、拡張経路表の転送先に関する情報に基づいて、パケットを転送するものであっても良い。
【0014】
さらに、本発明により、ネットワーク上の別の装置と共通するIPアドレス、および異なるポートレンジが割り当てられたパケット転送装置におけるパケット転送方法であって、データパケットを受信するステップと、受信したデータパケットの宛先IPアドレスおよび宛先ポート番号に基づいて、受信したデータパケットが自局宛てであるか否かを判断するステップと、データパケットが自局宛てでないと判断された場合に、該データパケットを転送するパケット転送部と、を備えることを特徴とするパケット転送方法、および該パケット転送方法をパケット転送装置に実行させるためのプログラムが提供される。
【発明の効果】
【0015】
したがって、本発明によれば、他の装置と同一のIPアドレスを共有する場合にも、受信したデータパケットが自局宛てのものか否かを適切に判断し、自局宛てでない場合には正当な宛先となる装置へ該データパケットの転送を行なうことが可能な、パケット転送装置、パケット転送方法、およびプログラムを提供することができる。
【図面の簡単な説明】
【0016】
【図1】本発明の実施形態におけるパケット転送システムのネットワーク構成の概略を示した図である。
【図2】本発明の第1の実施形態におけるCPEの概略構成を示す図である。
【図3】本発明の実施形態におけるパケット転送処理の流れを示すフローチャートである。
【図4】本発明の第2の実施形態におけるCPEの概略構成を示す図である。
【図5】本発明の第2の実施形態における拡張経路表の一例を示す図である。
【発明を実施するための形態】
【0017】
以下、図面を参照して、本発明の実施形態について説明する。
【0018】
図1は、本発明のパケット転送装置を含むパケット転送システムにおけるネットワーク構成の概略を示す図である。図1に示されるように、本実施形態のパケット転送システムは、ユーザ宅内のPC等である端末10および30、これらの端末10および30を第1のネットワーク100に接続するためのCPE(Customer Premise Equipment)20および40、ならびに第1のネットワーク100と第2のネットワーク200を接続するためのリレールータ50からなる。
【0019】
本実施形態において、第1のネットワーク100はインターネット接続サービスを提供するサービス提供者のネットワークであり、第2のネットワーク200はインターネットなどのパブリックネットワークである。また、端末10および30はIPv4対応の端末であり、第2のネットワーク200上のサーバ60によって提供されるIPv4コンテンツ等を利用することが可能である。また、CPE20および40は、第1のネットワーク100のサービス提供者から提供されるサービスの加入者宅内に設置されるサービス加入者ルータである。
【0020】
本実施形態における第1のネットワーク100では、CPE20および40に対して、サービス提供者より、A+Pを用いて、以下のように同一のIPv4アドレスおよび異なるポートレンジが割り当てられる。
(CPE20)
IPv4アドレス:120.10.10.1/24
ポートレンジ:2000-2999
(CPE40)
IPv4アドレス:120.10.10.1/24
ポートレンジ:3000-3999
尚、第1のネットワーク100内における全てのCPEに対して、共通するIPv4アドレスが割り当てられる必要はなく、複数のIPv4アドレスが、それぞれ複数のCPEによって共有される構成であっても良い。
【0021】
続いて、図2および図3を参照して、本発明の第1の実施形態におけるパケット転送処理について説明する。まず、図2は、本実施形態におけるCPE20の概略構成を示すブロック図である。図2に示すように、CPE20は、端末10などから、データパケットを受信するパケット受信部201、受信したパケットが自局宛てのものであるか否かを判断するためのパケット識別部202、CPE20にて実行される様々なアプリケーションからなるアプリケーション203、経路表205に基づいて受信したデータパケットのルーティングを行なうパケットルーティング部204、ならびにトンネルインターフェース2061およびEthernet(登録商標)インターフェース2062からパケットの転送を行なうパケット転送部206を備えている。尚、図2に示されるCPE20の各部の処理は、CPE20が備えるROMなどのメモリ(不図示)に記憶されたプログラムを呼び出すことにより、同じくCPE20が備えるCPU(不図示)にて実行される構成であっても良いし、各装置にASIC(Application Specific Integrated Circuit)として各部の処理の全部または一部を実装し、該ASICによってハードウェア的に実現される構成としても良い。また、CPE40もCPE20と同様の構成となっている。
【0022】
図3は、CPE20におけるパケット転送処理の流れを示すフローチャートである。本処理では、まず、パケット受信部201が、端末10からデータパケットを受信し、パケット識別部202へ送る(S1)。パケット識別部202では、受信したデータパケットの宛先IPv4アドレスが、自局(CPE20)のIPv4アドレスと同一であるか否かが判断される(S2)。
【0023】
ここで、データパケットの宛先IPv4アドレスが、自局のIPv4アドレスと同一である場合(S2:Yes)、続いてデータパケットの宛先ポート番号が自局に割り当てられたポートレンジに含まれるか否かが判断される(S3)。そして、宛先ポート番号が自局に割り当てられたポートレンジに含まれる場合には(S3:Yes)、受信したデータパケットは、自局宛てのパケットであると判断され、自局受信がなされる(S4)。具体的には、受信したデータパケットが自局宛てと判断された場合には、データパケットを宛先ポート番号に応じたアプリケーション203へと送り、対応する処理を実行する。
【0024】
一方、宛先ポート番号が自局に割り当てられたポートレンジに含まれない場合には(S3:No)、パケット識別部202は、受信したパケットは自局宛てのパケットではないと判断し、当該データパケットをパケット転送部206へ送る。パケット転送部206では、受信したデータパケットの転送が行なわれる。ここで、第1のネットワーク100内には、A+Pによって同一のIPv4アドレスが割り当てられたCPEが複数存在する。そのため、従来のように宛先IPv4アドレスのみに基づいてデータパケットの転送を行なった場合、転送先となるCPEを一意に特定することができず、宛先とは異なるCPEにデータパケットが転送されてしまったり、同じIPv4アドレスが割り当てられた自局にデータパケットが戻ってきてしまったりする可能性もある。
【0025】
そこで、A+Pでは、第1のネットワーク100上の各CPEに対して、共通に割り当てられたIPv4アドレスの他に、第1のネットワーク100内を転送するために各CPEを識別するための識別子が設定される。本実施形態においては、サービス提供者から、CPE20および40に対し、共通するIPv4アドレスに加え、それぞれ異なるIPv6アドレスが割り当てられる。具体的には、CPE20には、IPv6アドレス「2100:10:10::/48」が割り当てられ、CPE40には、IPv6アドレス「2100:10:1::/48」が割り当てられる。そして、パケット転送部206では、トンネルインターフェース2061において、受信したデータパケットの宛先IPv4アドレスと宛先ポート番号から、SAM(Stateless Address Mapping, 非特許文献1)と呼ばれる技術を用いて、宛先となるCPEのIPv6アドレスを求める。そして、SAMによって求められたIPv6アドレスにて、データパケットをカプセル化し、第1のネットワーク100内を転送させる。尚、各CPEを識別するための識別子としては、IPv6アドレスの他に、レイヤー2のアドレスを用いることも可能である。この場合は、データパケットは、レイヤー2のアドレスにてカプセル化され、第1のネットワーク100内を転送される。
【0026】
本実施形態のパケット転送処理では、パケット識別部202において、データパケットの宛先IPv4アドレスが、自局のIPv4アドレスと同一であるが(S2:Yes)、宛先ポート番号が自局に割り当てられたポートレンジ内でないと判断された場合(S3:No)、当該データパケットを、パケット転送部206のトンネルインターフェース2061に送る。これにより、上記のように、トンネルインターフェース2061において、受信したデータパケットの宛先IPv4アドレスと宛先ポート番号からIPv6アドレスが求められ、このIPv6アドレスでデータパケットがカプセル化され、転送される(S6)。
【0027】
一方、宛先IPv4アドレスが、自局のIPv4アドレスと異なる場合(S2:No)、パケット識別部202は、受信したデータパケットは自局宛てのパケットではないと判断し、当該パケットをパケットルーティング部204へ送る。この場合は、通常のパケット転送技術によって従来通りの転送処理が行なわれる。詳しくは、パケットルーティング部204では、経路表205を参照して、宛先IPv4アドレスからロンゲストマッチ(longest match)にて該当する経路を選択する(S5)。そして、パケット転送部206にデータパケットが送られ、パケット転送部206から、選択した経路に基づいた転送が行なわれる(S6)。
【0028】
具体的には、パケットルーティング部204にて、選択された経路の出力インターフェースがトンネルインターフェース2061になっている場合、データパケットは、パケット転送部206のトンネルインターフェース2061へ送られる。そして、トンネルインターフェース2061では、上述の場合と同様に、SAMによってIPv6アドレスが求められ、該IPv6アドレスによってデータパケットがカプセル化され、転送される。一方、パケットルーティング部204にて選択された経路の出力インターフェースがトンネルインターフェース2061でない場合、例えばEthernetインターフェース2062の場合には、データパケットは、パケット転送部206のEthernetインターフェース2062へ送られる。Ethernetインターフェース2062は、IPv4転送可能なインターフェースであり、データパケットは、IPv6アドレスによるカプセル化がされることなく、IPv4パケットとして転送される。
【0029】
尚、経路表205には、宛先IPv4アドレスに対応した出力インターフェース(ネクストホップ)が登録されているため、受信したデータパケットのIPv4アドレスが自局のIPv4アドレスと同じものである場合には、経路表205を参照しても意味がない。そのため、上記のようにパケット識別部202にて、宛先IPv4アドレスが自局と同じで(S2:Yes)、宛先ポート番号が自局のポートレンジに含まれていない場合には(S3:No)、パケットルーティング部204を通ることなく、直接パケット転送部206にデータパケットが送られる。
【0030】
上記のようなパケット転送処理によると、図1に実線で示される端末10および端末30間の通信を適切に行なうことができる。具体的には、まず、端末10から端末30宛てに、宛先アドレスをCPE40のIPv4アドレス「120.10.10.1/24」、宛先ポート番号を「3010」としたデータパケットがCPE20に送信される(S1)。CPE20では、パケット識別部202にて、まず、受信したデータパケットの宛先IPv4アドレス「120.10.10.1/24」が、自局のIPv4アドレス「120.10.10.1/24」と同一であると判断される(S2:Yes)。続いて、宛先ポート番号「3010」が自局のポートレンジ「2000-2999」に含まれていないため(S3:No)、自局宛てではないと判断され、データパケットをパケット転送部206のトンネルインターフェース2061へ送る。そして、トンネルインターフェース2061では、SAMによってCPE40のIPv6アドレス「2100:10:1::/48」が求められ、データパケットが求められたIPv6アドレスでカプセル化される。カプセル化されたデータパケットは、第1のネットワーク100内をIPv6アドレスに基づいて転送され(S6)、CPE40に受信される。その後、CPE40にてカプセル化が解除され、データパケットが端末30へと送られる。
【0031】
このように、本実施形態においては、CPE20において、受信したデータパケットの宛先IPv4アドレスが自局に割り当てられたIPv4アドレスと同一である場合には、宛先ポート番号に基づいて、自局宛てのデータパケットであるか否かを判断する。そのため、同一のIPv4アドレスが割り当てられた別のCPEを宛先とするデータパケットを受信した場合も、自局受けすることなく、適切に転送することが可能となる。また、上記実施形態においては、データパケットはIPv6アドレスによって第1のネットワーク100内を従来のように転送されるため、第1のネットワーク100内における既存のルータを変更する必要がなく、既存のネットワークを利用することができる。
【0032】
また、本実施形態においては、例えば図1に破線で示されるように、第2のネットワーク200上のサーバ60から、端末30宛てにデータパケットが送信される場合についても、適切なパケット転送が可能である。具体的には、まず、サーバ60から、宛先アドレスをCPE40のIPv4アドレス「120.10.10.1/24」、宛先ポート番号を「3010」としたデータパケットが送信され、リレールータ50にて当該データパケットが受信される。リレールータ50は、A+P対応のルータであり、受信したデータパケットをCPE40に届けるために、受信したデータパケットの宛先IPv4アドレス「120.10.10.1/24」および宛先ポート番号「3010」から、SAMによってCPE40のIPv6アドレス「2100:10:1::/48」を求める。
【0033】
そして、求められたIPv6アドレスによってデータパケットがカプセル化され、第1のネットワーク100内を転送される。このとき、SAMによって求められたIPv6アドレスは、CPE40固有のものであるため、データパケットの宛先は一意に特定される。しかしながら、何らかの設定ミス等により、リレールータ50において、誤ったIPv6アドレス、例えばCPE20のIPv6アドレス「2100:10:10::/48」がCPE40のIPv6アドレスとしてデータパケットに付加された場合、そのデータパケットは、CPE20のIPv6アドレスに基づいて第1のネットワーク100内を転送され、CPE40ではなくCPE20に届いてしまう。
【0034】
上記実施形態におけるCPE20では、このように誤ってデータパケットが送信された場合にも、正当な受信者であるCPE40へと転送することが可能である。具体的には、まず、誤ってCPE20のIPv6アドレスでカプセル化されたデータパケットが、CPE20のパケット受信部201によって受信され、カプセル化が解除される。そして、カプセル化が解除されたデータパケットは、パケット識別部202に送られる。パケット識別部202では、データパケットの宛先IPv4アドレス「120.10.10.1/24」および宛先ポート番号「3010」に基づいて、受信したデータパケットが自局宛てであるか否かが判断される。
【0035】
ここで、パケット識別部202は、受信したデータパケットの宛先IPv4アドレスは、自局のIPv4アドレスと同一であるものの、宛先ポート番号は、自局のポートレンジに含まれていないため、受信したデータパケットは自局宛てのものではないと判断する。そして、当該データパケットをパケット転送部206のトンネルインターフェース2061に送る。そして、トンネルインターフェース2061では、受信したデータパケットの宛先IPv4アドレスと宛先ポート番号から、CPE40のIPv6アドレスが求められ、求められたIPv6アドレスにてデータパケットがカプセル化される。そして、カプセル化されたデータパケットは、再び第1のネットワーク100内を転送され、CPE40へと届けられる。
【0036】
このように、各CPEに個別に割り当てられたIPv6アドレスに基づいてルーティングが行なわれる場合であっても、CPE20にて、宛先IPv4アドレスおよび宛先ポート番号に基づいて、自局宛てか否かを確認することにより、誤って送信されたデータパケットについても、正しい宛先へと転送することが可能となる。
【0037】
さらに、本実施形態のように構成することで、サービス提供者が、第1のネットワーク100内におけるCPE20およびCPE40の障害の有無を適切に把握し、管理することも可能となる。具体的には、例えば、リレールータ50から、CPE40の障害を確認するためにpingコマンドを送信した場合、当該pingが誤ってCPE20に届いたとき、従来であれば、CPE20が宛先IPv4アドレスのみに基づいてpingを自局受信し、応答メッセージをリレールータ50に返していた。そして、リレールータ50は、この返信に基づいてCPE40は適切に通信を行なっていると誤った判断をしてしまっていた。これに対し、本実施形態のCPE20および40では、自局に届けられたpingに対して、宛先IPv4アドレスおよび宛先ポート番号に基づいて自局宛てか否かを判断して、自局宛てでない場合には転送を行なう構成となっている。これにより、別のCPEにて応答すべきpingコマンドに対して、自局受信して応答してしまうことを防ぐことができる。
【0038】
尚、pingには、TCP/UDPヘッダがないため、ポート番号が存在しない。そのため、本実施形態においては、リレールータ50からpingが送信される際に、pingのICMPヘッダに含まれるICMPIDを宛先ポート番号の替わりに用いて、SAMによるIPv6アドレスが求められる。そして、求められたIPv6アドレスでカプセル化されたpingがCPE20で受信された場合、CPE20のパケット識別部202では、pingのICMP IDを宛先ポート番号の替わりに参照し、自局のポートレンジに含まれるか否かによって、自局受けか否かの判断を行なう。また、その他にも、UDP pingを用いて、各CPEの管理用にリザーブされたポートに対してpingを送信し、その返信に基づいて状態を確認することも可能である。
【0039】
次に、図4を参照して、本発明の第2の実施形態におけるCPE20aにおけるパケット転送処理について説明する。図4に示すように、本実施形態においては、第1の実施形態におけるパケット識別部202およびパケットルーティング部204の替わりに、パケット識別/ルーティング部240を備える点において第1の実施形態と相違する。さらに、第1の実施形態では、宛先IPアドレスのみをキーとした一般的な経路表205を参照してルーティングを行なう構成としていたが、本実施形態では、新たにポートレンジを加えて拡張した経路表250を用い、宛先IPアドレスおよびポートレンジをキーとしたルーティングを行なう構成となっている。尚、その他の処理部については、第1の実施形態と同様であり、図4に示されるCPE20aの各部の処理についても、ROMに記憶されたプログラムを呼び出すことにより、CPUにて実行される構成であっても良いし、各装置にASICとして各部の処理の全部または一部を実装し、該ASICによってハードウェア的に実現される構成としても良い。
【0040】
続いて、本実施形態のCPE20aにおけるパケット転送処理の流れについて説明する。本実施形態では、CPE20aのパケット受信部201にて、端末10などからデータパケットを受信すると、当該データパケットは、パケット識別/ルーティング部240へ送られる。そして、パケット識別/ルーティング部240では、拡張経路表250を参照して、受信したデータパケットが自局宛てであるか否かが判断される。図5は、本実施形態における拡張経路表250の一例を示す図である。本実施形態の拡張経路表250は、通常の経路表における「宛先アドレス」、「ネクストホップ」および「出力インターフェース」に加え、「ポートレンジ」の項目を備えている。
【0041】
そして、本実施形態では、受信したデータパケットの宛先IPv4アドレスだけでなく、宛先ポート番号に基づいて、拡張経路表250から経路が選択される。具体的には、受信したデータパケットの宛先IPv4アドレスが「120.10.10.1/24」で、宛先ポート番号が「2010」の場合、パケット識別/ルーティング部240では、拡張経路表250から経路R1を選択する。そして、選択された経路R1の出力インターフェースがローカルインターフェースであることから、受信したデータパケットは自局宛てであると判断される。そして、受信したデータパケットは、ローカルインターフェースからアプリケーション203へと送られ、自局受信される。
【0042】
また、受信したデータパケットの宛先IPv4アドレスが「120.10.10.1/24」で、宛先ポート番号が「3010」の場合には、拡張経路表250から経路R2が選択される。この場合、選択された経路R2における出力インターフェースは、トンネルインターフェース2061であるため、受信したデータパケットは、自局宛てではないと判断される。そして、データパケットがトンネルインターフェース2061へ送られ、トンネルインターフェース2061では、宛先IPv4アドレスおよび宛先ポート番号に基づいてIPv6アドレスが求められ、求められたIPv6アドレスによってデータパケットがカプセル化されて、転送される。
【0043】
さらに、受信したデータパケットの宛先IPv4アドレスが「120.1.1.0/24」で、宛先ポート番号が「10110」の場合には、拡張経路表250から経路R30が選択される。そして、選択された経路R30の出力インターフェースは、Ethernetインターフェース2062となっていることから、受信したデータパケットは自局宛てでないと判断される。そして、データパケットがEthernetインターフェース2062へ送られ、カプセル化されることなく転送される。
【0044】
このように、本実施形態においては、宛先IPv4アドレスおよび宛先ポート番号の両方に基づいて、拡張された経路表250によるルーティングを行なうことで、受信したデータパケットが自局宛てであるか否かを判断することが可能となる。これにより、本実施形態においても、第1の実施形態と同様に、同一のIPv4アドレスが割り当てられた端末同士の通信を適切に行なうことが可能となる。
【0045】
以上が本発明の実施形態であるが、本発明はこれらの実施形態に限定されるものではなく様々な範囲で変形が可能である。例えば、上記第1の実施形態においては、パケット受信部201にて受信されたデータパケットは、まずパケット識別部202に送られ、パケット識別部202において自局宛てのパケットか否かが判断される構成としたが、本発明はこれに限定されるものではない。例えば、パケット受信部201でデータパケットを受信した場合、まず、パケットルーティング部204に送る構成としても良い。そして、パケットルーティング部204にて、経路表205を参照し、宛先IPアドレスのみに基づいて、受信したデータパケットが自局宛てか否かを仮に判断し、その上で、自局宛てと判断された場合には、パケット識別部202にて、さらに当該データパケットの宛先ポート番号が、自局のポートレンジに含まれるか否かを判断する構成としても良い。
【0046】
この場合、経路表205を参照して自局のIPv4アドレスに該当する経路には、出力インターフェースとしてローカルインターフェースが登録される。そして、受信したデータパケットに対して、経路表205を参照して経路を選択し、選択した経路の出力インターフェースがローカルインターフェースとなっている場合には、自局宛てであると仮の判断をする。そして、自局宛てであると仮の判断がなされた場合には、パケット識別部202にて、宛先ポート番号が自局のポートレンジに含まれるか否かを判断し、含まれる場合には、受信したデータパケットは自局宛てであると最終的な判断をする。一方、パケットルーティング部204にて、経路表205を参照し自局宛てであると仮の判断がされたものの、パケット識別部202にて、宛先ポート番号が自局のポートレンジに含まれていないと判断された場合は、受信したデータパケットは自局宛てでないと最終的に判断し、転送処理を行なう。このような構成とした場合にも、上記第1の実施形態の場合と同様の効果を得ることができる。
【0047】
尚、上記の場合において、ローカルインターフェースに設定するIPv4アドレスは、自局アドレスIPv4アドレスだけでなく、DS−Lite(非特許文献4)によるWell Known Addressである192.0.0.0/29などに設定しておくことも可能である。
【0048】
また、上記実施形態において、パケット転送部206のトンネルインターフェース2061では、受信したデータパケットの宛先IPv4アドレスがSAMに該当するアドレスである場合には、データパケットの宛先IPv4アドレスおよびポート番号からIPv6アドレスを求め、そのIPv6アドレスによってカプセル化し、受信したデータパケットの宛先IPv4アドレスがSAMに該当するアドレスでない場合には、リレールータ50のIPv6アドレスを宛先アドレスとしてカプセル化する構成としても良い。この場合、データパケットの宛先IPv4アドレスがSAMに該当するか否かは、IPv4アドレスのprefixによって判断される。
【0049】
さらに、上記実施形態では、トンネルインターフェース2061において、SAMを用いてIPv6アドレスを求める構成としたが、本発明はこれに限定されるものではなく例えば非特許文献2や非特許文献3に記載される、その他のA+P手法によってIPv6アドレスを求める構成としても良い。
【0050】
また、上記実施形態では、トンネルインターフェース2061において、IPv4のデータパケットをIPv6アドレスでカプセル化した上で、IPv6ネットワークである第1のネットワーク100内を転送する構成としたが、本発明はこれに限定されるものではない。例えば、別の実施形態においては、パケット転送部206にトンネルインターフェース2061に替えて、または加えて、プロトコル変換インターフェースを備える構成としても良い。そして、プロトコル変換インターフェースにおいて、受信したデータパケットのIPv4ヘッダを、SAM等によって求められたIPv6アドレスを含むIPv6ヘッダへと変換することで、IPv4からIPv6へのプロトコル変換を行ない、第1のネットワーク100内を転送することも可能である。
【符号の説明】
【0051】
10、30 端末
20、40 CPE
50 リレールータ
60 サーバ
100 第1のネットワーク
200 第2のネットワーク
201 パケット受信部
202 パケット識別部
203 アプリケーション
204 パケットルーティング部
205 経路表
206 パケット転送部
2061 トンネルインターフェース
2062 Ethernetインターフェース
240 パケット識別/ルーティング部
250 拡張経路表


【特許請求の範囲】
【請求項1】
ネットワーク上の別の装置と共通するIPアドレス、および異なるポートレンジが割り当てられたパケット転送装置であって、
データパケットを受信するパケット受信部と、
前記パケット受信部にて受信したデータパケットの宛先IPアドレスおよび宛先ポート番号に基づいて、前記受信したデータパケットが自局宛てであるか否かを判断するパケット識別部と、
前記パケット識別部にて、前記データパケットが自局宛てでないと判断された場合に、該データパケットを転送するパケット転送部と、を備えることを特徴とするパケット転送装置。
【請求項2】
前記パケット識別部は、
(1)前記受信したデータパケットの宛先IPアドレスが自局のIPアドレスと同じであり、前記受信したデータパケットの宛先ポート番号が自局のポートレンジに含まれない場合、または
(2)前記受信したデータパケットの宛先IPアドレスが自局のIPアドレスと異なる場合に、前記受信したデータパケットが自局宛てでないと判断し、
(3)前記受信したデータパケットの宛先IPアドレスが自局のIPアドレスと同じであり、前記受信したデータパケットの宛先ポート番号が、自局のポートレンジに含まれる場合に、前記受信したデータパケットが自局宛てであると判断することを特徴とする請求項1に記載のパケット転送装置。
【請求項3】
前記パケット転送部は、前記受信したデータパケットの宛先IPアドレスおよび宛先ポート番号から識別子を特定し、特定された識別子に基づいて、前記データパケットの転送を行なうことを特徴とする請求項1または2に記載のパケット転送装置。
【請求項4】
前記識別子は、IPv6アドレスまたはレイヤー2アドレスであり、
前記パケット転送部は、前記IPv6アドレスまたはレイヤー2アドレスを用いて、前記データパケットをカプセル化またはプロトコル変換して転送することを特徴とする、請求項3に記載のパケット転送装置。
【請求項5】
前記パケット転送部は、前記パケット識別部において、前記受信したデータパケットの宛先IPアドレスが自局のIPアドレスと異なるため、前記受信したデータパケットが自局宛てでないと判断された場合に、経路表に基づいて、前記データパケットのルーティングを行なうルーティング部を備え、
前記パケット転送部は、前記ルーティング部において選択された経路に基づいて、前記データパケットの転送を行なうことを特徴とする、請求項1から4の何れか一項に記載のパケット転送装置。
【請求項6】
前記パケット転送装置は、宛先IPアドレス、ポートレンジ、および転送先に関する情報が対応付けられた拡張経路表をさらに備え、
前記パケット識別部は、前記拡張経路表に基づいて、前記受信したパケットが自局宛てか否かを判断し、
前記パケット転送部は、前記拡張経路表の転送先に関する情報に基づいて、前記パケットを転送すること、を特徴とする請求項1から4の何れか一項に記載のパケット転送装置。
【請求項7】
ネットワーク上の別の装置と共通するIPアドレス、および異なるポートレンジが割り当てられたパケット転送装置におけるパケット転送方法であって、
データパケットを受信するステップと、
前記受信したデータパケットの宛先IPアドレスおよび宛先ポート番号に基づいて、前記受信したデータパケットが自局宛てであるか否かを判断するステップと、
前記データパケットが自局宛てでないと判断された場合に、該データパケットを転送するパケット転送部と、を備えることを特徴とするパケット転送方法。
【請求項8】
請求項7に記載されるパケット転送方法をパケット転送装置に実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2012−80465(P2012−80465A)
【公開日】平成24年4月19日(2012.4.19)
【国際特許分類】
【出願番号】特願2010−225998(P2010−225998)
【出願日】平成22年10月5日(2010.10.5)
【出願人】(591112522)株式会社ACCESS (91)
【出願人】(501275178)ソフトバンクBB株式会社 (112)
【Fターム(参考)】