JP2010087585A - 転送装置、転送方法、およびコンピュータプログラム - Google Patents

転送装置、転送方法、およびコンピュータプログラム Download PDF

Info

Publication number
JP2010087585A
JP2010087585A JP2008251280A JP2008251280A JP2010087585A JP 2010087585 A JP2010087585 A JP 2010087585A JP 2008251280 A JP2008251280 A JP 2008251280A JP 2008251280 A JP2008251280 A JP 2008251280A JP 2010087585 A JP2010087585 A JP 2010087585A
Authority
JP
Japan
Prior art keywords
layer
address
vrf
interface
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008251280A
Other languages
English (en)
Other versions
JP4931888B2 (ja
JP2010087585A5 (ja
Inventor
Keiichiro Yamate
圭一郎 山手
Shinji Nozaki
信司 野崎
Masaya Arai
雅也 新井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alaxala Networks Corp
Original Assignee
Alaxala Networks Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alaxala Networks Corp filed Critical Alaxala Networks Corp
Priority to JP2008251280A priority Critical patent/JP4931888B2/ja
Priority to US12/493,360 priority patent/US8379649B2/en
Publication of JP2010087585A publication Critical patent/JP2010087585A/ja
Publication of JP2010087585A5 publication Critical patent/JP2010087585A5/ja
Application granted granted Critical
Publication of JP4931888B2 publication Critical patent/JP4931888B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】レイヤ2・レイヤ3統合フォワーディングテーブルの技術を適用した転送装置において、エクストラネット直結経路による通信を実現する。
【解決手段】直結装置へのエクストラネット転送を実現するエクストラネット直結経路をレイヤ2・レイヤ3統合フォワーディングテーブルへ導入している場合、レイヤ3アドレス・レイヤ2アドレス対応テーブルのエントリを前記フォワーディングテーブルに導入するにあたり、前記アドレス対応テーブルエントリのレイヤ3アドレスとレイヤ3インタフェースと転送先とするエクストラネット直結経路由来のフォワーディングエントリを前記フォワーディングテーブルから検索し、見つかった1つ以上のフォワーディングエントリ各々について該エントリのVRFを抜き出し、各VRFについてアドレス対応テーブルエントリを前記フォワーディングテーブルへ導入する。
【選択図】図4

Description

本発明は、仮想専用網(以下、VPN:Virtual Private Networkと呼ぶ)を構築する技術に関するものである。
従来、VPNを多数収容し、VPNの各拠点間を接続する技術として、非特許文献1〜3が提案されている。
"BGP/MPLS IP Virtual Private Networks(VPNs)", RFC 4364, February 2006. 「AX7800R・AX7700R ソフトウェアマニュアル 解説書 Vol.1 Ver. 10.7 対応」pp.654 小林 正好, 村瀬 勉, 定村,正 「高速マルチレイヤ処理1チップスイッチアーキテクチャ」 電子情報通信学会技術研究報告. IN 情報ネットワークVol.97, No.619(19980319)pp. 37−42
非特許文献1には、仮想ルーティング/転送テーブル(VPN Routing and Forwarding table)を使用する方法が記載されている。以下、仮想ルーティング/転送テーブル、あるいは仮想ルーティング/転送テーブルを備えるモジュールのことを「VRF」と呼ぶ。またVRFにより実現する機能のことをVRF機能と呼ぶ。またVRF機能を有するレイヤ3転送装置のことをVRF転送装置と呼ぶ。VRF転送装置には仮想的に転送機能を実現したVRFが複数あり、各VRFにはルーティングテーブルが個別に存在する。このVRFを各VPNに1つずつ割り当て、レイヤ3インタフェースを接続先のVPNに対応するVRFに所属させることにより、VPN個別の転送機能を実現し、VRF転送装置が複数VPNを収容することが可能になる。
非特許文献2には、VRF転送装置内においてVRF間で経路を交換することにより、VRF転送装置内でのエクストラネット通信を実現する構成が記載されている。「エクストラネット通信」とは、異なるVPN間の通信のことである。なお、この明細書で、装置内でのエクストラネット通信を実現する装置のことをVRF間転送装置と呼ぶ。
非特許文献3には、レイヤ2・レイヤ3統合フォワーディングテーブルを使用する構成が記載されている。レイヤ2・レイヤ3統合フォワーディングテーブルとは、ルーティングテーブルと、隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応関係を定める対応テーブル(ARPテーブル)とを統合したものである。これにより、転送先を求めるために、ルーティングテーブルと対応テーブルとで2回検索が必要となるところを、レイヤ2・レイヤ3統合フォワーディングテーブルを1回だけ検索することで済み、高速・省電力を実現することができる。
しかしながら、非特許文献1,2に記載した転送装置に、非特許文献3に記載されたレイヤ2・レイヤ3統合フォワーディングテーブルの技術を適用した構成を考えたとき、この構成の転送装置は、エクストラネット直結経路による通信を実現することができないという問題があった。「直結経路」とは、転送先レイヤ3アドレスとしてパケットの宛先レイヤ3アドレスを使用する経路であり、上記「エクストラネット直結経路」は、直結経路から作成されるエクストラネット経路のことである。
本発明は、上記の点に鑑みてなされたもので、レイヤ2・レイヤ3統合フォワーディングテーブルの技術を適用した転送装置において、エクストラネット直結経路による通信を実現することを課題とする。
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
[適用例1]
仮想専用網(VPN)毎のルーティングテーブルを個別に有する複数のVRF(VPN Routing and Forwarding)を備える転送装置において、
前記ルーティングテーブルは、
通信するパケットの宛先を定めたレイヤ3アドレスと、当該ルーティングテーブルが存在する前記VRFを所属VRFとして該所属VRFからの転送先を定めたレイヤ3アドレスとに基づいて、前記通信の経路を定めるテーブルであって、前記所属VRFから他の前記VRFへ前記パケットを転送するエクストラネット通信の経路も併せて定め得る構成であり、
前記パケットの転送先を求めるための検索条件としてのVRF情報およびレイヤ3アドレスと、前記検索の結果としての転送先レイヤ3インタフェース、転送先レイヤ3アドレスおよび転送先レイヤ2アドレスとを備えるエントリを記録するためのテーブルであって、前記エントリのそれぞれにおいて前記転送先レイヤ3アドレスと前記転送先レイヤ2アドレスについての対応が未解決である場合には前記転送先レイヤ2アドレスを未解決であることを示す旨のデータにて示すレイヤ2・レイヤ3統合フォワーディングテーブル、を格納する第1の記憶部と、
前記複数のルーティングテーブルにそれぞれ記録された各経路を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する経路導入部と、
前記レイヤ2・レイヤ3統合フォワーディングテーブルに記録されているエントリの前記転送先レイヤ3インタフェースにおいて、隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入するアドレス解決部と、
前記パケットに記録された宛先を定めたレイヤ3アドレスをキーとして前記レイヤ2・レイヤ3統合フォワーディングテーブルを検索することにより前記パケットの転送先を判定する転送先判定部と
を備え、
前記アドレス解決部は、
転送先レイヤ3アドレスとしてパケットの宛先レイヤ3アドレスを使用する直結経路であり、かつパケット転送先を求めるための検索条件であるVRF情報と転送先レイヤ3インタフェースが所属するVRFとが異なるエントリが前記レイヤ2・レイヤ3統合フォワーディングテーブルに存在する場合に、前記検索条件であるVRF情報と同一のVRF情報を使用して、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する構成を備える、転送装置。
ここで、「隣接装置」とは、転送装置のレイヤ3インタフェースと、レイヤ2ネットワークにより接続しているレイヤ3装置とのことである。
転送先レイヤ3アドレスとしてパケットの宛先レイヤ3アドレスを使用する直結経路であり、かつパケット転送先を求めるための検索条件であるVRF情報と転送先レイヤ3インタフェースが所属するVRFとが異なるエントリは、エクストラネット直結経路を示すものである。適用例1に記載の転送装置によれば、エクストラネット直結経路は、検索条件であるVRF情報と同一のVRF情報を使用して、隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入される。このために、転送先判定部により、パケットに記録された宛先を定めたレイヤ3アドレスをキーとして前記レイヤ2・レイヤ3統合フォワーディングテーブルを検索することにより、エクストラネット直結経路に従う転送先の判定が可能となる。したがって、適用例1に記載の転送装置によれば、エクストラネット直結経路による通信を実現することができる。
[適用例2]
適用例1に記載の転送装置であって、
レイヤ3インタフェースとレイヤ3アドレスに対するVRF識別子の集合との対応をエントリとする直結経路VRFテーブルを格納する第2の記憶部を備え、
前記アドレス解決部は、
隣接装置が接続しているレイヤ3インタフェースと隣接装置のレイヤ3アドレスをキーに前記直結経路VRFテーブルを検索し、該検索により得られるVRF識別子の集合の各VRF識別子について、パケット転送先を求めるための検索条件であるVRFとして前記VRF識別子を使用して、前記レイヤ2・レイヤ3統合フォワーディングテーブルへの前記レイヤ3アドレスとレイヤ2アドレスとの対応の導入を行う構成である、転送装置。
適用例2に記載の転送装置によれば、レイヤ3インタフェースとレイヤ3アドレスに対するVRF識別子の集合との対応が直結経路VRFテーブルへ導入されており、そのVRF識別子を使用して、前記レイヤ2・レイヤ3統合フォワーディングテーブルへの前記レイヤ3アドレスとレイヤ2アドレスとの対応の導入が図られる。このために、転送先を求めるための検索条件であるVRF情報と同一のVRF情報が使用され、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入される。したがって、適用例2に記載の転送装置によれば、エクストラネット直結経路による通信を実現することができる。
[適用例3]
適用例2に記載の転送装置であって、
転送先レイヤ3アドレスとしてパケットの宛先レイヤ3アドレスを使用する直結経路を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する際、前記直結経路の転送先レイヤ3インタフェースと前記直結経路の宛先レイヤ3アドレスに対する前記直結経路のVRFを、前記直結経路VRFテーブルに記録する直結経路VRFテーブル更新部を備え、
前記直結経路VRFテーブル更新部は、
転送先レイヤ3アドレスとしてパケット宛先レイヤ3アドレスを使用し、かつ転送先レイヤ3インタフェース・宛先レイヤ3アドレスが同一である直結経路が複数あり各経路を前記レイヤ2・レイヤ3統合フォワーディングテーブルへ導入する場合に、前記直結経路VRFテーブルの該レイヤ3インタフェースと宛先レイヤ3アドレスによるエントリに前記レイヤ2・レイヤ3統合フォワーディングテーブルへ導入した各経路のVRF識別子の集合を記録する構成を備える転送装置。
この構成によれば、転送先を求めるための検索条件であるVRF情報と同一のVRF情報を使用して、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入することを、確実に行うことができる。
[適用例4]
適用例2または3に記載の転送装置であって、
前記レイヤ2・レイヤ3統合フォワーディングテーブルは、
経路の導入が前記経路導入部と前記アドレス解決部とのいずれによるものかを示す種別を格納するフィールドを備え、
隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が無効になった時に、前記レイヤ2・レイヤ3統合フォワーディングテーブルの転送先レイヤ3インタフェースと転送先レイヤ3アドレスが前記隣接装置のレイヤ3インタフェースとレイヤ3アドレスに一致するエントリ全てについて前記種別の内容を確認し、前記種別の内容が前記経路導入部によるものを示す場合に、前記エントリの転送先レイヤ2アドレスを未解決とし、前記種別の内容が前記アドレス解決部によるものを示す場合に、前記エントリを削除する削除部を備える、転送装置。
適用例4に記載の転送装置によれば、隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が無効になった時に、その対応が導入される前のレイヤ2・レイヤ3統合フォワーディングテーブルの状態に容易に復帰することができる。
[適用例5]
適用例4に記載の転送装置であって、
装置全体、VRF別、およびレイヤ3インタフェース別に対応する複数のカウンタと、
隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応をフォワーディングテーブルに導入する場合には、前記装置全体のカウンタ、導入エントリのパケット転送先を求めるための検索条件であるVRFに対応する前記VRF別のカウンタ、および導入エントリの転送先レイヤ3インタフェースに対応する前記レイヤ3インタフェース別のカウンタの値を、1だけそれぞれ加算するカウンタ加算部と、
隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を導入したことによるエントリをフォワーディングテーブルから削除する場合には、装置全体のカウンタ、削除エントリのパケット転送先を求めるための検索条件であるVRFに対応するVRF別のカウンタ、削除エントリの転送先レイヤ3インタフェースに対応するレイヤ3インタフェース別のカウンタの各カウンタを、1だけそれぞれ減算するカウンタ減算部と
を備える転送装置。
適用例5に記載の転送装置によれば、装置全体、VRF別、およびレイヤ3インタフェース別に対応する複数のカウンタに、各別のフォワーディングテーブルエントリの最新の数を記録することができる。
[適用例6]
適用例5に記載の転送装置であって、
操作者の操作する端末装置との間で情報のやり取りを行うユーザインタフェース処理部を備え、
前記ユーザインタフェース処理部は、
前記複数のカウンタの計数値を取得する命令を前記端末装置から受信した場合に、前記カウンタの値を前記端末装置へ送信するカウンタ値送信部を備える、転送装置。
適用例6に記載の転送装置によれば、装置全体、VRF別、およびレイヤ3インタフェース別のフォワーディングテーブルエントリの数を操作者に通知することができる。
[適用例7]
適用例5に記載の転送装置であって、
前記複数のカウンタのそれぞれに対して予め定められた上限値を記憶する上限記憶部を備え、
前記アドレス解決部は、
前記複数のカウンタのうちの少なくとも一つにおいて、各カウンタの計数値が、前記カウンタに対応する前記上限値以上である場合に、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応をフォワーディングテーブルに導入を禁止する導入禁止部を備える、転送装置。
適用例7に記載の転送装置によれば、装置全体、VRF別、およびレイヤ3インタフェース別のフォワーディングテーブルエントリの数が上限値を超えないように管理することができる。したがって、転送装置のリソース管理が容易である。
[適用例8]
適用例7に記載の転送装置であって、
操作者の操作する端末装置との間で情報のやり取りを行うユーザインタフェース処理部を備え、
前記ユーザインタフェース処理部は、
前記上限記憶部に記憶された各上限値の少なくとも一つを変更する命令を前記端末装置から受信する上限変更命令受信部を備え、
前記上限設定命令受信部により受信した命令に従って、前記上限記憶部に記憶された各上限値の少なくとも一つの上限値を変更する上限変更部を備える、転送装置。
適用例8に記載の転送装置によれば、装置全体、VRF別、およびレイヤ3インタフェース別のフォワーディングテーブルエントリの数の上限値を、操作者が設定することができる。
[適用例9]
請求項1に記載の転送装置であって、
前記アドレス解決部は、
前記転送先判定部により前記レイヤ2・レイヤ3統合フォワーディングテーブルを検索した結果として得た転送先レイヤ2アドレスが未解決である場合に、当該検索で見つかったエントリが、転送先レイヤ3アドレスとしてパケット宛先レイヤ3アドレスを使用する直結経路に基づくものであり、かつパケット転送先を求めるための検索条件であるVRFと転送先レイヤ3インタフェースが所属するVRFが異なるものであるかを判定する判定部と、
前記判定部により肯定判定された場合に、前記肯定判定されたエントリの転送先レイヤ3インタフェースについて前記パケット宛先レイヤ3アドレスで示した隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を検索する検索部と、
前記検索部により、前記条件を満たす隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が学習済みである場合に、パケット転送先を求めるための検索条件であるVRFとして前記パケットを受信したVRFを使用して、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応をフォワーディングテーブルに導入する第1導入部と
を備える転送装置。
適用例9に記載の転送装置によれば、レイヤ3インタフェースとレイヤ3アドレスに対するVRF識別子の集合との対応が直結経路VRFテーブルへ導入されており、そのVRF識別子を使用して、前記レイヤ2・レイヤ3統合フォワーディングテーブルへの前記レイヤ3アドレスとレイヤ2アドレスとの対応の導入が図られる。このために、転送先を求めるための検索条件であるVRF情報と同一のVRF情報が使用され、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入される。したがって、適用例2に記載の転送装置によれば、エクストラネット直結経路による通信を実現することができる。
[適用例10]
適用例9に記載の転送装置であって、
前記検索部により、前記条件を満たす隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が未解決である場合に、パケット転送先を求めるための検索条件であるVRFとして前記パケットを受信したVRFを使用し、前記検索条件であるレイヤ3アドレスとして前記パケットの宛先レイヤ3アドレスを使用し、前記転送先レイヤ3インタフェースとして前記エントリの転送先レイヤ3インタフェースを使用し、前記転送先レイヤ3アドレスとして前記パケットの宛先レイヤ3アドレスを使用し前記転送先レイヤ2アドレスとして未解決であることを示す値を使用したエントリをフォワーディングテーブルに導入する第2導入部と
を備える転送装置。
適用例10に記載の転送装置によれば、隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が未解決である場合にも、フォワーディングテーブルエントリの転送先レイヤ2アドレスが学習され次第、エクストラネット直結経路による通信を実現することができる。
[適用例11]
適用例9または10に記載の転送装置であって、
前記レイヤ2・レイヤ3統合フォワーディングテーブルは、
経路の導入が前記経路導入部と前記アドレス解決部とのいずれによるものかを示す種別を格納するフィールドを備え、
隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が無効になった時に、前記レイヤ2・レイヤ3統合フォワーディングテーブルの転送先レイヤ3インタフェースと転送先レイヤ3アドレスが前記隣接装置のレイヤ3インタフェースとレイヤ3アドレスに一致するエントリ全てについて前記種別の内容を確認し、前記種別の内容が前記経路導入部によるものを示す場合に、前記エントリの転送先レイヤ2アドレスを未解決とし、前記種別の内容が前記アドレス解決部によるものを示す場合に、前記エントリを削除する、転送装置。
適用例11に記載の転送装置によれば、隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が無効になった時に、その対応が導入される前のレイヤ2・レイヤ3統合フォワーディングテーブルの状態に容易に復帰することができる。
[適用例12]
適用例11に記載の転送装置であって、
装置全体、VRF別、およびレイヤ3インタフェース別に対応する複数のカウンタと、
隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応をフォワーディングテーブルに導入する場合には、前記装置全体のカウンタ、導入エントリのパケット転送先を求めるための検索条件であるVRFに対応する前記VRF別のカウンタ、および導入エントリの転送先レイヤ3インタフェースに対応する前記レイヤ3インタフェース別のカウンタの値を、1だけそれぞれ加算するカウンタ加算部と、
隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を導入したことによるエントリをフォワーディングテーブルから削除する場合には、装置全体のカウンタ、削除エントリのパケット転送先を求めるための検索条件であるVRFに対応するVRF別のカウンタ、削除エントリの転送先レイヤ3インタフェースに対応するレイヤ3インタフェース別のカウンタの各カウンタを、1だけそれぞれ減算するカウンタ減算部と
を備える転送装置。
適用例12に記載の転送装置によれば、装置全体、VRF別、およびレイヤ3インタフェース別に対応する複数のカウンタに、各別のフォワーディングテーブルエントリの最新の数を記録することができる。
[適用例13]
適用例12に記載の転送装置であって、
操作者の操作する端末装置との間で情報のやり取りを行うユーザインタフェース処理部を備え、
前記ユーザインタフェース処理部は、
前記複数のカウンタの計数値を取得する命令を前記端末装置から受信した場合に、前記カウンタの値を前記端末装置へ送信するカウンタ値送信部を備える、転送装置。
適用例13に記載の転送装置によれば、装置全体、VRF別、およびレイヤ3インタフェース別のフォワーディングテーブルエントリの数を操作者に通知することができる。
[適用例14]
適用例12に記載の転送装置であって、
前記複数のカウンタのそれぞれに対して予め定められた上限値を記憶する上限記憶部を備え、
前記アドレス解決部は、
前記複数のカウンタのうちの少なくとも一つにおいて、各カウンタの計数値が、前記カウンタに対応する前記上限値以上である場合に、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応をフォワーディングテーブルに導入を禁止する導入禁止部を備える、転送装置。
適用例14に記載の転送装置によれば、装置全体、VRF別、およびレイヤ3インタフェース別のフォワーディングテーブルエントリの数が上限値を超えないように管理することができる。したがって、転送装置のリソース管理が容易である。
[適用例15]
適用例14に記載の転送装置であって、
操作者の操作する端末装置との間で情報のやり取りを行うユーザインタフェース処理部を備え、
前記ユーザインタフェース処理部は、
前記上限記憶部に記憶された各上限値の少なくとも一つを変更する命令を前記端末装置から受信する上限変更命令受信部を備え、
前記上限設定命令受信部により受信した命令に従って、前記上限記憶部に記憶された各上限値の少なくとも一つの上限値を変更する上限変更部を備える、転送装置。
適用例15に記載の転送装置によれば、装置全体、VRF別、およびレイヤ3インタフェース別のフォワーディングテーブルエントリの数の上限値を、操作者が設定することができる。
[適用例16]
仮想専用網(VPN)毎のルーティングテーブルを個別に有する複数のVRF(VPN Routing and Forwarding)間でパケットの転送を行う転送方法であって、
前記ルーティングテーブルは、
通信するパケットの宛先を定めたレイヤ3アドレスと、当該ルーティングテーブルが存在する前記VRFを所属VRFとして該所属VRFからの転送先を定めたレイヤ3アドレスとに基づいて、前記通信の経路を定めるテーブルであって、前記所属VRFから他の前記VRFへ前記パケットを転送するエクストラネット通信の経路も併せて定め得る構成であり、
(a)前記パケットの転送先を求めるための検索条件としてのVRF情報およびレイヤ3アドレスと、前記検索の結果としての転送先レイヤ3インタフェース、転送先レイヤ3アドレスおよび転送先レイヤ2アドレスとを備えるエントリを記録するためのテーブルであって、前記エントリのそれぞれにおいて前記転送先レイヤ3アドレスと前記転送先レイヤ2アドレスについての対応が未解決である場合には前記転送先レイヤ2アドレスを未解決であることを示す旨のデータにて示すレイヤ2・レイヤ3統合フォワーディングテーブルを用意し、前記複数のルーティングテーブルにそれぞれ記録された各経路を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する工程と、
(b)前記レイヤ2・レイヤ3統合フォワーディングテーブルに記録されているエントリの前記転送先レイヤ3インタフェースにおいて、隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する工程と、
(c)前記パケットに記録された宛先を定めたレイヤ3アドレスをキーとして前記レイヤ2・レイヤ3統合フォワーディングテーブルを検索することにより前記パケットの転送先を判定する工程と
を備え、
前記工程(c)は、
(c−1)転送先レイヤ3アドレスとしてパケットの宛先レイヤ3アドレスを使用する直結経路であり、かつパケット転送先を求めるための検索条件であるVRF情報と転送先レイヤ3インタフェースが所属するVRFとが異なるエントリが前記レイヤ2・レイヤ3統合フォワーディングテーブルに存在する場合に、前記検索条件であるVRF情報と同一のVRF情報を使用して、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する工程を備える、転送方法。
[適用例17]
仮想専用網(VPN)毎のルーティングテーブルを個別に有する複数のVRF(VPN Routing and Forwarding)間でパケットの転送を行うためのコンピュータプログラムであって、
前記ルーティングテーブルは、
通信するパケットの宛先を定めたレイヤ3アドレスと、当該ルーティングテーブルが存在する前記VRFを所属VRFとして該所属VRFからの転送先を定めたレイヤ3アドレスとに基づいて、前記通信の経路を定めるテーブルであって、前記所属VRFから他の前記VRFへ前記パケットを転送するエクストラネット通信の経路も併せて定め得る構成であり、
コンピュータに、
(a)前記パケットの転送先を求めるための検索条件としてのVRF情報およびレイヤ3アドレスと、前記検索の結果としての転送先レイヤ3インタフェース、転送先レイヤ3アドレスおよび転送先レイヤ2アドレスとを備えるエントリを記録するためのテーブルであって、前記エントリのそれぞれにおいて前記転送先レイヤ3アドレスと前記転送先レイヤ2アドレスについての対応が未解決である場合には前記転送先レイヤ2アドレスを未解決であることを示す旨のデータにて示すレイヤ2・レイヤ3統合フォワーディングテーブルを用意し、前記複数のルーティングテーブルにそれぞれ記録された各経路を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する機能と、
(b)前記レイヤ2・レイヤ3統合フォワーディングテーブルに記録されているエントリの前記転送先レイヤ3インタフェースにおいて、隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する機能と、
(c)前記パケットに記録された宛先を定めたレイヤ3アドレスをキーとして前記レイヤ2・レイヤ3統合フォワーディングテーブルを検索することにより前記パケットの転送先を判定する機能と
を実現させるとともに、
前記機能(c)は、
(c−1)転送先レイヤ3アドレスとしてパケットの宛先レイヤ3アドレスを使用する直結経路であり、かつパケット転送先を求めるための検索条件であるVRF情報と転送先レイヤ3インタフェースが所属するVRFとが異なるエントリが前記レイヤ2・レイヤ3統合フォワーディングテーブルに存在する場合に、前記検索条件であるVRF情報と同一のVRF情報を使用して、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する機能を備える、コンピュータプログラム。
適用例16に記載の転送方法および適用例17に記載のコンピュータプログラムでは、適用例1に記載転送装置と同様に、エクストラネット直結経路による通信を実現することができるという効果を奏する。
なお、本発明は、種々の態様で実現することが可能であり、上記転送装置を備えるネットワーク、上記コンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
次に、本発明の実施の形態を以下の順序で説明する。
A.参考例:
A−1.全体構成(図1):
A−2.テーブル構成(図2−図3):
A−3.各部の処理:
B.第1実施例:
B−1.全体構成(図4):
B−2.テーブル構成(図5−図7):
B−3.各部の処理(図8−図11):
B−4.作用・効果:
B−4−1.参考例の問題点(図12−図15):
B−4−2.第1実施例の作用・効果(図16−図17):
C.第2実施例:
C−1.全体構成(図18):
C−2.各部の処理(図19−図23):
C−3.作用・効果:
D.第3実施例:
E.第4実施例:
F.変形例:
A.参考例:
本発明の実施の形態である実施例を説明するに先立ち、ここでは、まず参考例について説明する。この参考例は、本発明の実施の形態とはなり得ないが、後ほど説明する実施例の理解のために説明するものである。
A−1.全体構成(図1):
図1は、参考例としてのVRF間転送装置100の全体構成図である。VRF間転送装置100は、経路制御部101と、ARP制御部111と、パケット転送部121と、複数のレイヤ3インタフェース131とを備える。
経路制御部101は、複数のVRF102と、エクストラネット経路ポリシー105と、エクストラネット経路作成部106と、経路導入部107とを備える。各VRF102は、ルーティングテーブル103と、経路生成部104とを備える。経路生成部104は、ルーティングプロトコルなどの処理を行い、経路生成部104の備えられるVRF102についての経路を作成する。作成結果の経路は、同じVRF102内のルーティングテーブル103に収められる。
エクストラネット経路ポリシー105には、エクストラネット経路の生成条件が格納されている。エクストラネット経路作成部106は、各VRF102に備えられるルーティングテーブル103と、エクストラネット経路ポリシー105と接続している。エクストラネット経路作成部106では、各ルーティングテーブル103から経路を取得し、エクストラネット経路ポリシー105を参照してエクストラネットの生成条件を取得し、条件に従って必要な経路を別VRF102のルーティングテーブル103へ収めることにより、エクストラネット経路を作成する。
ルーティングテーブル103に収められる経路には優先度が存在する。宛先IPアドレス(宛先を定めたレイヤ3アドレス)が同じ経路がルーティングテーブル103に複数存在する場合、この優先度に基づいて、1つの採用経路を決定する。優先度が必要なのは、経路生成部104が2つ以上、または経路生成部104とエクストラネット経路作成部106の両方が、同一宛先IPアドレスの経路を生成することがあるからである。この状況は、同じ宛先ネットワークに経路を2つ用意し、一方の経路を常用、もう一方の経路をバックアップ経路とし、常用経路に障害があった時にバックアップ経路に切り替えるために必要である。
経路導入部107は、各VRFのルーティングテーブル103と、パケット転送部121の後述するフォワーディングテーブル123とに接続している。経路導入部107は、各VRFのルーティングテーブル103から採用経路を取得し、これをフォワーディングテーブル123に書き込む(導入する)。
ARP制御部111は、ARP処理部112を備える。ARP処理部112は、パケット転送部121に接続している。ここで、「ARP」とは、アドレス解決プロトコル(Address Resolution Protocol)のことである。
パケット転送部121は、インタフェースVRFテーブル122と、フォワーディングテーブル123と、転送先判定部124とを備える。インタフェースVRFテーブル122およびフォワーディングテーブル123は、転送先判定部124に接続している。また、インタフェースVRFテーブル122、フォワーディングテーブル123、および転送先判定部124は、ARP制御部111のARP処理部112に接続している。
レイヤ3インタフェース131は複数存在し、各レイヤ3インタフェース131はパケット転送部121の転送先判定部124に接続している。転送先判定部124は、レイヤ3インタフェース131から受信パケットを取得し、インタフェースVRFテーブル122とフォワーディングテーブル123を検索して受信パケットの適切な転送先レイヤ3インタフェースを得て、当該レイヤ3インタフェースへ前記受信パケットを転送する。
A−2.テーブル構成(図2−図3):
図2は、インタフェースVRFテーブル122を例示する説明図である。図示するように、インタフェースVRFテーブル122は、レイヤ3インタフェース201とそのレイヤ3インタフェースが所属するVRF202とをエントリ毎に収めたテーブルである。上記「レイヤ3インタフェース201」、「VRF202」は、実際は、該当するフィールド(項目)を特定し得る「名称」や「番号」等の項目データを表している。以下、後述する各種のテーブルについての説明も、同様に項目名で項目データを表すものとする。レイヤ3インタフェース201をキーにしてインタフェースVRFテーブル122を検索することにより、レイヤ3インタフェース201のVRFを求めることができる。
図3は、フォワーディングテーブル123の一例を示す説明図である。フォワーディングテーブル123は、レイヤ2・レイヤ3統合フォワーディングテーブルを採用したものである。説明にあたり、レイヤ3インタフェースが「A」である所属VRFをVRF:1であるもの、レイヤ3インタフェースが「C」である所属VRFをVRF:2であるものとする。
図3中の(a)は、ARP情報を1つも学習していない状態のフォワーディングテーブル123を示している。図3中の(b)は、レイヤ3インタフェース:AについてのIPアドレス「10.1.1.1」がMACアドレス「R1」であるというARP情報を学習した状態のフォワーディングテーブル123の例である。図中におけるエントリ308は、直結経路を導入したエントリの例である。エントリ309は、通常の経路を導入したエントリの例である。エントリ310は、エントリ309の転送方法をVRF:2に適用したエクストラネット経路を導入したエントリの例である。エントリ311は、ARP情報を導入したエントリの例である。
フォワーディングテーブル123は、受信パケットの条件に対する転送先の対応関係を格納するテーブルである。各エントリ308〜311は、パケット条件301としてのVRF302および宛先IPアドレス303と、転送先304としての転送先レイヤ3インタフェース305、転送先IPアドレス306および転送先MACアドレス307とにより構成される。各項目と本発明の構成要素との対応関係は、VRF302がパケットの転送先を求めるための検索条件としてのVRF情報に相当し、宛先IPアドレス303が前記検索条件としてのレイヤ3アドレスに相当し、転送先レイヤ3インタフェース305は転送先レイヤ3インタフェースに相当し、転送先IPアドレス306は転送先レイヤ3アドレスに相当し、転送先MACアドレス307は転送先レイヤ2アドレスに相当する。
転送先304のIPアドレス(以下、「転送先IPアドレス」と呼ぶ)306は、IPアドレスの他に「直結」という値を取ることができる。この値は、転送先IPアドレス306が未定である直結経路を意味する。転送先304のMACアドレス(以下、「転送先MACアドレス」と呼ぶ)307は、MACアドレスの他に「未解決」という値を取ることができる。この値は、ARP未解決のため転送先MACアドレスが不明なエントリ、または単体ではARP解決することができない直結経路を意味する。以下、フォワーディングテーブル123の各エントリ308〜311にあるパケット条件301のVRF302のことを、「パケット条件VRF」と呼ぶ。なお、経路に基づくエントリ308、309、310は経路導入部107が導入し、ARP情報に基づくエントリ311はARP処理部112が導入する。
A−3.各部の処理:
図1に戻って、経路導入部107の経路導入処理について説明する。各VRF102のルーティングテーブル103は、宛先IPアドレス、転送先のレイヤ3インタフェース、転送先のIPアドレスが格納されている。経路導入部107の経路導入処理では、経路が存在するルーティングテーブル103のVRF102の番号をパケット条件VRF302とし、経路の宛先IPアドレスを宛先IPアドレス303とし、経路の転送先レイヤ3インタフェースを転送先レイヤ3インタフェース305とし、経路の転送先IPアドレスを転送先IPアドレス306とし、転送先MACアドレス307を「未解決」とするエントリを生成し、フォワーディングテーブル123へ導入する。ただし、直結経路には転送先IPアドレスが存在しないものとする。このため、直結経路導入時の転送先IPアドレス306には「直結」を示す値を用いる。
転送先判定部124の処理を次に説明する。転送先判定部124は、レイヤ3インタフェース131で受信したパケットを適切なレイヤ3インタフェース131から送信するためのモジュールである。転送先判定部124は、レイヤ3インタフェース131からパケットを受信したら、まず、パケットを受信したレイヤ3インタフェースをキーにしてインタフェースVRFテーブル122を検索してパケット受信VRFを求める。次いで、転送先判定部124は、パケット受信VRFと前記パケットの宛先IPアドレスをキーにしてフォワーディングテーブル123を検索して転送先レイヤ3インタフェースと転送先MACアドレスを求める。その後、転送先判定部124は、前記パケットを転送先レイヤ3インタフェースで指定されたレイヤ3インタフェース131から転送先MACアドレス宛へ送信する。フォワーディングテーブル123を検索した結果、転送先MACアドレスが「未解決」である場合、ARP処理部112へ未解決通知を通知し、同時に検索にヒットしたフォワーディングテーブルエントリの転送先レイヤ3インタフェース303と転送先IPアドレス308とパケット宛先IPアドレス303とをARP処理部112へ通知する。
一方、受信パケットがARPパケットである場合、ARP処理部112へARPパケット受信通知を通知し、同時にその受信ARPパケットとパケット受信レイヤ3インタフェースを通知する。
ARP処理部112により実行される各種の処理を次に説明する。転送先判定部124から未解決通知を受けた場合、ARP処理部112ではARP解決処理を実行する。具体的には、通知された転送先レイヤ3インタフェース上で、通知された転送先IPアドレスを問い合わせるARPリクエストパケットを送信する。ただし、転送先IPアドレスが「直結」である場合には、通知されたパケット宛先IPアドレスを問い合わせる。例えば、図3(a)の状態でVRF:2のレイヤ3インタフェースから「20.1.1.1」宛のパケットを転送先判定部124が受信すると、図3(a)の状態のフォワーディングテーブル123を検索した結果エントリ310にヒットし、転送先MACアドレスが「未解決」のため、ARP処理部112へ「未解決」が通知される。ARP処理部112では、通知内容にしたがってレイヤ3インタフェース:AからIPアドレス「10.1.1.1」を問い合わせるARPリクエストパケットを送信する。
転送先判定部124からARPパケット受信通知を受けた場合、ARP処理部112ではARP学習処理をする。ARP学習処理では、フォワーディングテーブル123の既存のエントリの転送先書き換えと、学習したARP情報のフォワーディングテーブル123への導入を行う。具体的には、フォワーディングテーブル123にある、転送先レイヤ3インタフェース305が該ARPパケットの受信レイヤ3インタフェースと一致し、かつ転送先IPアドレス306が該ARPパケットの学習IPアドレスと一致する全エントリについて、該エントリの転送先MACアドレスを学習MACアドレスで書き換え、次いで該ARPパケットの受信レイヤ3インタフェースでインタフェースVRFテーブル122を検索し、得たVRFをパケット条件VRF302として該ARP情報をフォワーディングテーブル123へ導入する。
例えば図3(a)の状態で、レイヤ3インタフェース:AにおいてIPアドレス「10.1.1.1」の装置からMACアドレス「R1」であるというARPパケットを受信すると、まず、フォワーディングテーブル123にある転送先レイヤ3インタフェース305が「A」であり、転送先IPアドレス306が「10.1.1.1」である全エントリ309、310について転送先MACアドレス307を「R1」に書き換え、次いでレイヤ3インタフェースAをキーとしてインタフェースVRFテーブル122を検索してVRF:1を得て、VRF302が「1」、宛先IPアドレス303が「10.1.1.1/32」、転送先レイヤ3インタフェース305が「A」、転送先IPアドレス306が「10.1.1.1」、転送先MACアドレス307が「R1」のエントリ311を生成し、フォワーディングテーブル123へ導入する。
この結果、フォワーディングテーブルは図3(b)の状態となる。転送先がレイヤ3インタフェース:Aの「10.1.1.1」である全エントリ309、310の転送先MACアドレスが「R1」となるので、エントリ309、310と受信VRF・宛先IPアドレスが一致する受信パケットを「R1」へ転送可能となる。また、レイヤ3インタフェース:Aの「10.1.1.0/24」宛の直結経路によるエントリ308についても、宛先「10.1.1.1」のパケットに限りエントリ311を使用してインタフェース:Aの「R1」へ転送可能になる。
ARP処理部112は、ARP削除処理も行う。ARP削除処理では、ARP学習処理と逆の処理を行う。具体的には、フォワーディングテーブル123にある、転送先レイヤ3インタフェース305が削除ARP情報のレイヤ3インタフェースと一致し、かつ転送先IPアドレス306が削除ARP情報のIPアドレスと一致する全エントリについて、該エントリの転送先MACアドレスを「未解決」に書き換え、次いで削除ARP情報のレイヤ3インタフェースでインタフェースVRFテーブル122を検索し、得たVRFと削除ARP情報のIPアドレスをキーとしてフォワーディングテーブル123を検索し、発見したエントリを削除する。
例えば図3(b)の状態で、レイヤ3インタフェース:AのIPアドレス「10.1.1.1」の装置のMACアドレスが「R1」であるというARP情報を削除する場合、まず転送先レイヤ3インタフェース305が「A」であり転送先IPアドレス306が「10.1.1.1」である全エントリ309、310について転送先MACアドレス307を「未解決」に書き換え、次いでレイヤ3インタフェース:AをキーとしてインタフェースVRFテーブルを検索してVRF:1を得て、VRF:1と「10.1.1.1」をキーとしてフォワーディングテーブル123を検索し、発見したエントリ311を削除する。
この結果、フォワーディングテーブルは図3(a)の状態となる。転送先がレイヤ3インタフェース:Aの「10.1.1.1」である全エントリ309、310の転送先MACアドレスが「未解決」となるので、エントリ309、310と一致する受信パケットが、ARP情報削除にしたがって転送不能となる。また、VRF:1の宛先「10.1.1.1」のパケットも、エントリ311が削除された結果レイヤ3インタフェースA「10.1.1.0/24」宛の直結経路によるエントリ308にあたるようになり、ARP情報削除にしたがって転送不能となる。
B.第1実施例:
本発明の第1実施例としてのVRF間転送装置を次に説明する。
B−1.全体構成(図4):
図4は、第1実施例としてのVRF間転送装置600の全体構成図である。VRF間転送装置600は、経路制御部601と、ARP制御部611と、パケット転送部621と、複数のレイヤ3インタフェース631と、ユーザインタフェース処理部641とを備える。VRF間転送装置600と前述した参考例とを比較すると、ユーザインタフェース処理部641の有無を除いて両者は同様のユニットから構成されていることが判る。ユニット毎の相違点・一致点は次の通りである。
VRF間転送装置600の経路制御部601と参考例の経路制御部101とを比較すると、経路制御部601では、経路導入部607がARP制御部611に接続されているに対して、参考例の経路制御部101ではそのように構成されていないことが相違する。すなわち、経路導入部607の処理内容は、経路制御部101の処理内容と相違する。経路制御部601の経路導入部607以外の構成については参考例と同一である。なお、同一の部分には同一の符号を付した。
VRF間転送装置600のARP制御部611と参考例のARP制御部111とを比較すると、ARP制御部611はARP導入カウンタ801と直結経路VRFテーブル802とARP処理・複数導入部803とを備えるのに対して、参考例のARP制御部111はARP処理部112だけを備えることが相違する。
ARP制御部611において、ARP処理・複数導入部803はARP導入カウンタ801と直結経路VRFテーブル802とに接続している。ARP処理・複数導入部803は、パケット転送部621のフォワーディングテーブル701と転送先判定部124とに接続している。なお、参考例では、ARP処理部112はパケット転送部121のインタフェースVRFテーブル122に接続されているが、本実施例のARP処理・複数導入部803は、そのように構成されていない。ARP処理・複数導入部803は、本発明の備える「アドレス解決部」に対応している。
VRF間転送装置600のパケット転送部621と参考例のパケット転送部121とを比較すると、インタフェースVRFテーブル701とフォワーディングテーブル123と転送先判定部124とを備える点で両者は一致するが、パケット転送部621が備えるフォワーディングテーブル701は、参考例のフォワーディングテーブル123とデータ構成が相違する。フォワーディングテーブル701のデータ構成については後述する。
VRF間転送装置600のレイヤ3インタフェース631は、参考例のレイヤ3インタフェース131と同一である。
また、VRF間転送装置600は、ユーザインタフェース処理部641を備えるのに対して、参考例はこうした構成を備えない。ユーザインタフェース処理部641は、装置管理者が使用する端末装置と接続しており、端末装置からの命令を解釈し、命令の結果を端末装置へ送信する。ユーザインタフェース処理部641は、ARP制御部611のARP導入カウンタ801に接続している。
B−2.テーブル構成(図5−図7):
図5は、パケット転送部621のフォワーディングテーブル701の一例を示す説明図である。フォワーディングテーブル701は、受信パケットの条件に対する転送先の対応関係を格納するテーブルである。経路に基づくエントリは経路導入部607(図4)が導入し、ARP情報に基づくエントリはARP処理・複数導入部803(図4)が導入する。フォワーディングテーブル701に格納される各エントリは、参考例のフォワーディングテーブル123と同様に、パケット条件301としてのVRF302および宛先IPアドレス303と、転送先304としての転送先レイヤ3インタフェース305、転送先IPアドレス306および転送先MACアドレス307とを備え、さらに、各エントリの導入元を示す種別708を備える。すなわち、フォワーディングテーブル701は、参考例のフォワーディングテーブル701と比較したとき、種別708の項目が相違するだけであり、その他の項目301〜307は同一である。
種別708は、経路導入部607から導入されたエントリについては「経路」と格納され、ARP処理・複数導入部803から導入されたエントリについては「ARP」と格納される。直結経路およびエクストラネット直結経路は、パケット転送先としてパケット宛先IPアドレスを用いるため、経路の転送先IPアドレスは未定である。この未定であることを表現するために、転送先IPアドレス306は、IPアドレスの他に「直結」という値を取ることができる。転送先MACアドレス307は、MACアドレスの他に「未解決」という値を取ることができる。この値は、ARP未解決のため転送先MACアドレスが不明なエントリ、または単体ではARP解決が不能である直結経路およびエクストラネット直結経路を意味する。
図6は、直結経路VRFテーブル802の一例を示す説明図である。直結経路VRFテーブル802は、フォワーディングテーブル701に導入したエクストラネット直結経路を含む直結経路について、その転送先レイヤ3インタフェースおよび宛先IPアドレスと経路導入VRFとの対応関係を記録するものである。すなわち、前記レイヤ3インタフェースで学習した前記宛先IPアドレスに含まれるIPアドレスのARP情報と、フォワーディングテーブル701へ導入すべきパケット条件VRFとの対応関係を収めるテーブルである。各エントリは、レイヤ3インタフェース1101とIPアドレス1102に対応するVRFリスト1103を収める。各エントリのVRFリスト1103には、VRF識別子を複数収めることができる。
図7は、ARP導入カウンタ801の一例を示す説明図である。ARP導入カウンタ801は、装置全体・レイヤ3インタフェース別・VRF別の条件に対し、その条件を満たすARP処理・複数導入部803が導入したフォワーディングテーブルエントリの数と、そのフォワーディングテーブルエントリの上限数とを記録するテーブルである。すなわち、各エントリは、条件を示すカウント対象1201と、条件を満たすエントリ数1202と、上限1203との各項目により構成される。上限1203には、予め定められた数値が格納されている。
B−3.各部の処理(図8−図11):
図4に戻って、経路導入部107の経路導入処理を説明する。経路導入部107では、各VRFのルーティングテーブル103から採用経路を取得し、これをフォワーディングテーブル701に導入すると同時に、導入した経路が直結経路またはエクストラネット直結経路である場合に、直結経路VRFテーブル802への書込み処理を実行する。この書込み処理は、上述したように、導入した経路が直結経路またはエクストラネット直結経路である場合に、その導入した経路についての書込みが行われる。すなわち、その導入した経路についての転送先レイヤ3インタフェースと、宛先IPアドレスと、前記経路が記録されたルーティングテーブル103を備えるVRF102の識別子とから構成されるエントリを、直結経路VRFテーブル802に書き込む。前記経路の転送先レイヤ3インタフェース・宛先IPアドレスについてのエントリが直結経路VRFテーブル802に既に存在している場合には、その存在するエントリのVRFリスト1103(図6)に、前記VRFの識別子を追記する。この処理の結果、直結経路VRFテーブル802には、直結経路およびエクストラネット直結経路についてのVRF識別子の集合が記録されることになる。
次に、転送先判定部124の処理を説明する。転送先判定部124は、前述した参考例の場合と同一である。ただし、参考例で信号の通知先をARP処理部112としていたものは、本実施例では、その通知先をARP処理・複数導入部803としている。
次に、ARP処理・複数導入部803の処理を説明する。ARP処理・複数導入部803で実行される処理としては、参考例のARP処理112と同様に、ARP解決処理、ARP学習処理、ARP削除処理がある。転送先判定部124から未解決通知を受けた場合、ARP処理・複数導入部803ではARP解決処理を行う。具体的には、通知された転送先レイヤ3インタフェース上で、通知された転送先IPアドレスを問い合わせるARPリクエストパケットを送信する。ただし、転送先IPアドレスが直結である場合には通知されたパケット宛先IPアドレスを問い合わせる。
転送先判定部124からARPパケット受信通知を受けた場合、ARP処理・複数導入部803ではARP学習処理を行う。ARP学習処理について次に詳述する。
図8は、ARP処理・複数導入部803により実行されるARP学習処理の手順を示すフローチャートである。VRF間転送装置100のCPUは、図示するように、まず、ARPパケットとパケット受信レイヤ3インタフェースとの通知内容から、学習レイヤ3インタフェース、学習IPアドレス、学習MACアドレス(これらをまとめて「学習ARP情報」と呼ぶ)を確定する(ステップS10)。次に、フォワーディングテーブル701から、転送先レイヤ3インタフェース305および転送先IPアドレス306が、ステップS10で確定した学習レイヤ3インタフェースおよび学習IPアドレスと一致するエントリを検索し、一致した各エントリの転送先MACアドレスを学習MACアドレスに書き換える(ステップS20)。
次に、学習したARP情報のフォワーディングテーブル701へ導入する処理を行う。詳細には、CPUは、まず、直結経路VRFテーブル802(図6)から、レイヤ3インタフェース1101およびIPアドレス1102がステップS10で確定した学習レイヤ3インタフェースと学習IPアドレスと一致するエントリを検索し、一致したエントリのVRFリストを得る(ステップS30)。VRFリストには1または複数のVRF識別子が含まれる。次に、ステップS30で得たVRFリストからVRF識別子を1つ抽出する(ステップS40)。
続いて、CPUは、ARP導入カウンタ801から、カウント対象1201が「装置全体」であるエントリと、カウント対象1201がステップS10で抽出した学習レイヤ3インタフェースと一致するものであるエントリと、カウント対象1201がステップS40で抽出したVRF識別子と一致するものであるエントリとを選択する(ステップS50)。ここで選択されるエントリは、1または複数であることもあるし、存在しないこともある。次いで、CPUは、ステップS50で選択した各エントリについて数1202が上限以上か否かを判定することにより、数が上限以上であるエントリが上記選択された中に存在するか否かを判定する(ステップS60)。ここで、数が上限以上であるエントリが存在すると判定された場合には、ステップS70、S80の処理を行わず、ステップS90に処理を進める。
一方、ステップS60で、数が上限以上であるエントリが存在せず、どのエントリも数が上限未満であると判定された場合には、CPUは、ステップS70に処理を進めて、ステップS50で選択された各エントリの数1202の値を1だけ増加する。ステップS70の実行後、CPUは、フォワーディングテーブル701に対して、ステップS40で抽出したVRF識別子で示されるVRFをパケット条件VRF1002とし、ステップS10で確定した学習IPアドレスをパケット宛先IPアドレス1003とし、ステップS10で確定した学習ARP情報(学習レイヤ3インタフェース、学習IPアドレスおよび学習MACアドレス)を転送先1004とし、種別1008をARPとするエントリを導入する(ステップS80)。次いで、ステップS90に処理を進める。
ステップS90では、ステップS40でVRFリストから抽出したVRF識別子が最後の一つであるか否かを判定する。ステップS90で最後でないと判定された場合には、ステップS40に処理を戻して、次のVRF識別子を抽出し、その抽出したVRF識別子についてステップS50ないしS90の処理を繰り返し実行する。一方、ステップS90で最後であると判定された場合には、このARP学習処理手順を終了する。
直結経路VRFテーブル802(図4)には、レイヤ3インタフェース別・IPアドレス別に、フォワーディングテーブル701へ導入したエクストラネット直結経路を含む直結経路のVRFが全て記録されている。このため、以上のように構成されたARP学習処理(図8)によれば、学習したARP情報を必要とする全てのVRFを直結経路VRFテーブル802から得て(ステップS30)、各VRFについて学習ARP情報をフォワーディングテーブル701へ導入する(ステップS80)ことができる。
また、前記ARP学習処理では、各VRFへのARP情報の導入にあたり、ARP導入カウンタ801にあるカウント対象1201が一致するカウンタを値1だけ増加する(ステップS70)が、この処理により、ARP処理・複数導入部803が導入したフォワーディングテーブルエントリ数を装置全体・レイヤ3インタフェース別・VRF別に管理し、ARP処理・複数導入部803が導入したフォワーディングテーブルエントリ数をユーザインタフェース処理部641が要求する時に、正しい値を提示することができる。さらに、各VRFへのARP情報の導入にあたり、ARP導入カウンタ801にあるカウント対象1201が一致するエントリの数が上限未満であることをチェックし、上限以上である場合には導入処理を中止する(ステップS60→S90)。この処理により、装置全体・レイヤ3インタフェース別・VRF別について、ARP処理・複数導入部803が導入したフォワーディングテーブルエントリ数が、ユーザインタフェース処理部641が設定した上限を超えないことを保証することができる。したがって、VRF間転送装置600のリソース管理が容易である。
図9は、ARP処理・複数導入部803により実行されるARP削除処理の手順を示すフローチャートである。VRF間転送装置100のCPUは、図示するように、まず、フォワーディングテーブル701から、転送先レイヤ3インタフェース305および転送先IPアドレス306が、ARP情報のレイヤ3インタフェース・IPアドレスと一致するエントリ(以下、「フォワーディングテーブルエントリ」と呼ぶ)を検索する(ステップS110)。条件と一致するフォワーディングテーブルエントリは1または複数であることもあるし、存在しないこともある。
次いで、CPUは、ステップS110の検索で見つかったフォワーディングテーブルエントリから1つを選択する(ステップS120)。続いて、CPUは、ステップS120で選択したフォワーディングテーブルエントリの種別708が「ARP」であるか否かを判定する(ステップS130)。ここで、種別708が「ARP」でない、すなわち「経路」であると判定された場合には、ステップS120で選択したフォワーディングテーブルエントリについての転送先MACアドレス307を「未解決」に書き換え(ステップS140)、ステップS180に処理を進める。
一方、ステップS130で、種別708が「ARP」であると判定された場合には、ステップS120で選択したフォワーディングテーブルエントリをフォワーディングテーブル701から削除し(ステップS150)、ARP導入カウンタ801から、カウント対象1201が「装置全体」であるエントリと、カウント対象1201がステップS10で抽出した学習レイヤ3インタフェースと一致するものであるエントリと、カウント対象1201がステップS40で抽出したVRF識別子と一致するものであるエントリとを選択する(ステップS160)。ステップS160で選択された各エントリについての数1202の値を1だけそれぞれ減少する(ステップS170)。ステップS170の実行後、ステップS180に処理を進める。
ステップS180では、ステップS110でフォワーディングテーブル701から選択したフォワーディングテーブルエントリが最後の一つであるか否かを判定する。ステップS90で最後でないと判定された場合には、ステップS120に処理を戻して、次のフォワーディングテーブルエントリを選択し、その選択したフォワーディングテーブルエントリについてステップS130ないしS180の処理を繰り返し実行する。一方、ステップS180で最後であると判定された場合には、このARP削除処理手順を終了する。
図8で説明したARP学習処理により、1つのARP情報からフォワーディングテーブルエントリを複数導入した場合にも、該フォワーディングテーブルエントリの転送先レイヤ3インタフェース1005・転送先IPアドレス1006はARP情報と等しく、種別708は「ARP」である。このため、上記ARP削除処理により、経路の転送先MACアドレスの書き換えと同時に該ARP情報に基づき導入した全フォワーディングテーブルエントリを削除することができる。
また、上記ARP削除処理によれば、種別708が「ARP」であるフォワーディングテーブルエントリ削除時に、ARP導入カウンタ801にあるカウント対象1201が該フォワーディングテーブルエントリと一致するカウンタを1だけ減算する(ステップS170)ことにより、ARP処理・複数導入部803が導入したフォワーディングテーブルエントリ数をユーザインタフェース処理部641が要求する時に正しい値を提示することができる。
ユーザインタフェース処理部641の処理について次に詳述する。図10は、ユーザインタフェース処理部641の処理を図式化した説明図である。図示は、装置管理者が、種別が「ARP」であるフォワーディングテーブルエントリ数を取得する命令(以下、この命令を「ARP導入数表示コマンド」と呼ぶ)を発行した時の処理例を示したものである。図中、1501はARP導入数表示コマンドを示す。装置管理者が操作する図示しない端末装置からARP導入数表示コマンドが、ユーザインタフェース処理部641に送信されると、ユーザインタフェース処理部641は、ARP導入数表示コマンド1501を受信する。ユーザインタフェース処理部641は、その後、ARP導入数表示コマンド1501に従って、ARP導入カウンタ801からエントリを取得し、取得した各エントリについてのカウント対象1201、数1202、および上限1203(図7参照)の項目内容を前記端末装置のディスプレイ1502へ送信する。この結果、ディスプレイ1302に、条件別の種別ARPのフォワーディングテーブルエントリ数と上限が表示されることになる。
ユーザインタフェース処理部641の上記処理により、装置全体、レイヤ3インタフェース別、VRF別に、種別がARPであるフォワーディングテーブルエントリ数を、装置管理者へ通知することができる。
図11は、ユーザインタフェース処理部641の他の処理を図式化した説明図である。図示は、装置管理者が、種別が「ARP」であるフォワーディングテーブルエントリ数の上限を設定する命令(以下、この命令を「上限設定コマンド」と呼ぶ)を発行した時の処理例を示したものである。図中、1601は上限設定コマンドを示す。装置管理者が操作する図示しない端末装置から上限設定コマンド1601が、ユーザインタフェース処理部641に送信されると、ユーザインタフェース処理部641は、上限設定コマンド1601を受信する。ユーザインタフェース処理部641は、その後、上限設定コマンド1601に従って、ARP導入カウンタ801の上限値の書き換えを行う。図示の例では、上限設定コマンド1601は、レイヤ3インタフェースAの上限を値8とするものであることから、ARP導入カウンタ801のカウント対象1201が「レイヤ3インタフェースA」であるエントリを検索し、発見したエントリの上限1203を命令で指定された値8に書き換える(エントリ1602参照)。
ユーザインタフェース処理部641の上記処理により、装置全体・レイヤ3インタフェース別・VRF別に、種別がARPであるフォワーディングテーブルエントリ数の上限を装置管理者が設定することができる。
B−4.作用・効果:
B−4−1.参考例の問題点(図12−図15):
前記第1実施例の作用、効果を説明するに先立ち、参考例の問題点についてまず説明する。
図12は、前記参考例を適用したVPNネットワークを示す説明図である。図12に示すように、VPNネットワークは、3つのVPN、すなわち、VPN1(401)、VPN2(402)、VPN3(403)を備える。なお、上記のように、同じパーツが複数、存在する場合には、それぞれを区別するために、パーツ名の後ろに1、2、3といった数字を付加して呼称するようにするが、その場合には、その数字と図面の符号とを区別するために、図面の符号については括弧で覆うこととした。
VPN1(401)には、サブネットとしてのLAN(Local Area Network)11(404)が存在し、LAN11(404)上にサーバS1(407)とルータR1(408)が存在する。VPN2(402)には、LAN21(405)が存在し、LAN21(405)上に端末T2(409)とルータR1(408)が存在する。VPN3(403)には、LAN31(406)が存在し、LAN31(406)上に端末T3(410)が存在する。ルータR1(408)は、VPN1(401)のLAN11(404)と、VPN2(402)のLAN21(405)との間を接続するルータであり、LAN11(404)宛の経路とLAN21(404)宛の経路とが存在する。これにより、LAN11(404)宛パケットとLAN21(404)宛パケットを転送することが可能となっている。
ネットワーク上には、VPN1(401)、VPN2(402)、VPN3(403)を全て収容するVRF間転送装置411が存在する。VRF間転送装置411は参考例のVRF間転送装置100に相当する。VPN1(401)に対してVRF1(412)を割り当て、LAN11(404)へのレイヤ3インタフェースA(415)をVRF1(412)に所属させる。VPN2(402)に対してVRF2(413)を割り当て、LAN21(405)へのレイヤ3インタフェースB(416)をVRF2(413)に所属させる。VPN3(403)に対してVRF3(414)を割り当て、LAN31(406)へのレイヤ3インタフェースC(417)をVRF3(414)に所属させる。
VRF間転送装置411では、VRF1(412)、VRF2(413)、およびVRF3(414)のそれぞれについてVRF内でのレイヤ3転送を実施するとともに、サーバS1(407)が存在するサブネットLAN11(404)について、VRF2(413)からLAN11(404)へのエクストラネット通信1(418)と、VRF3(414)からLAN11(404)へのエクストラネット通信2(419)を実施するものとする。ただし、VPN2(413)からLAN11(404)への通信については、R1(408)経由での通信が可能である場合にはR1経由の経路420を優先するものとし、VRF間転送装置を経由するVPN2(413)からLAN11(404)へのエクストラネット通信1(418)はR1(408)またはLAN21(405)の障害時のバックアップ経路とする。
なお、図12の例ではVRF間転送装置411にVRFが3つ、各VRFにレイヤ3インタフェースが1つずつ存在するが、VRFの数またはVRFあたりレイヤ3インタフェースの数が異なる場合にも、以下に説明する問題点は変わらない。
図13は、図12に例示したVPNネットワークで得られる各VRFのルーティングテーブルを示す説明図である。図13中の(a)はVRF1(412)の備えるルーティングテーブル501を示し、図13中の(b)はVRF2(413)の備えるルーティングテーブル502を示し、図13中の(c)はVRF3(414)の備えるルーティングテーブル503を示す。
図13の(a)に示すように、VRF1(412)の備えるルーティングテーブル501には、LAN11(404)のアドレス10.1.1.0/24宛をレイヤ3インタフェースA(415)へ転送する直結経路504が存在する。図13の(b)に示すように、VRF2(413)の備えるルーティングテーブル502には、LAN21(405)のアドレス20.1.1.0/24宛をレイヤ3インタフェースB(416)へ転送する直結経路505の他に、LAN11(404)のアドレス10.1.1.0/24宛をレイヤ3インタフェースB(416)のルータR1(408)のアドレス20.1.1.2宛とする経路506と、エクストラネット通信1(418)に従ってVRF1(412)のルーティングテーブル(501)にあるLAN11(404)のアドレスへの経路504をコピーしたエクストラネット直結経路507が存在する。
ただし、上記説明の通り、VRF2(413)のLAN11(404)への通信についてはエクストラネット通信1(418)よりもルータR1(408)経由の経路420を優先する。このためエクストラネット通信1(418)の経路507よりもルータR1(408)経由の経路506の優先値を小さく(優先値が小さいほど、優先度は高い)し、この結果、ルータR1(408)経由の経路506を採用(図中○印)とし、エクストラネット通信1(418)の経路507を不採用(図中×印)とする。
VRF3(414)の備えるルーティングテーブル503には、LAN31(406)のアドレス30.1.1.0/24宛をレイヤ3インタフェースC(417)へ転送する直結経路508の他に、エクストラネット通信2(419)に従って、VRF1(412)のルーティングテーブル501にあるLAN11(404)のアドレスへの経路(504)をコピーしたエクストラネット直結経路509が存在する。
次に、経路導入部107(図1)が図13に示す経路を導入した結果のフォワーディングテーブル123(図1)を、図14を用いて説明する。図13に示した各ルーティングテーブル501、502、503にある採用経路(「採用」欄に○印のある経路)は、全て図14のフォワーディングテーブル123へ導入されることになる。すなわち、フォワーディングテーブル123のエントリ601は、図13(a)に示すVRF1(412)のルーティングテーブル501の経路504から導入されたものであり、図12のVPNネットワークのVRF1(412)にあるLAN11(404)への直結経路に相当する。フォワーディングテーブル123のエントリ602は、図13(c)に示すVRF3(414)のルーティングテーブル503の経路509から導入されたものであり、図12のネットワークのエクストラネット通信2(419)に相当する。
次に、サーバS1(407)からのARPパケットを受信したときのARP学習を説明する。フォワーディングテーブル123が図14に示す状態で、サーバS1からのARPパケットをVRF間転送装置411がレイヤ3インタフェースAで受信すると、ARP処理部112では、学習レイヤ3インタフェース:A、学習IPアドレス:10.1.1.1、および学習MACアドレス:S1を確定し、フォワーディングテーブルにある転送先が一致するエントリの転送先MACの書き換えと、学習したARP情報の導入を行う。
詳細には、まず、フォワーディングテーブル123上にある転送先レイヤ3インタフェースおよび転送先IPアドレスが、学習レイヤ3インタフェースおよび学習IPアドレスと一致するエントリを検索し、一致する各エントリの転送先MACアドレスを学習MACアドレスで書き換える。図14に例示のフォワーディングテーブル123には上記条件を満たすエントリが存在しないので、どのエントリも転送先MACアドレス書き換え対象とならない。次いで、学習したARP情報をフォワーディングテーブル123へ導入する。まず、インタフェースVRFテーブルを検索して学習レイヤ3インタフェースのVRFを求める。学習レイヤ3インタフェースA(415)はVRF1(412)のインタフェースなので、VRF1が求まる。次いで、パケット条件VRFとして学習レイヤ3インタフェースのVRF、宛先IPアドレスとして学習IPアドレス、転送先レイヤ3インタフェースとして学習レイヤ3インタフェース、転送先IPアドレスとして学習IPアドレス、転送先MACアドレスとして学習MACアドレスを用いて、フォワーディングテーブル123にARP情報を導入する。
図15は、ARP情報の導入後のフォワーディングテーブル123を示す説明図である。図中において701が、サーバS1(407)のARP情報に基づいて導入したフォワーディングテーブルエントリである。
フォワーディングテーブル123が図15に示す状態で、レイヤ3インタフェースC(417)から10.1.1.1宛のパケットを受信した場合、レイヤ3インタフェースC(417)はVRF3(414)に所属しているので、VRF3と10.1.1.1をキーとしてフォワーディングテーブル123を検索し、検索の結果、VRF3のエクストラネット直結経路509に基づくエントリ602に従って転送先MACアドレス:未解決を得る。このため、上記パケットを転送できない状態になる。すなわち、図12にあるVRF3からLAN11へのエクストラネット通信2(419)に対して、VRF3(414)の備えるルーティングテーブル503に経路509が存在し(図13)、フォワーディングテーブル123に経路509に対応するエントリ602が存在し(図15)、サーバS1(407)についてのARP学習済みであるにもかかわらず、上記パケットを転送できない。
したがって、上記参考例では、図12から図15を用いて説明して来たとおり、エクストラネット直結経路による通信を考慮した場合、レイヤ2・レイヤ3統合フォワーディングテーブルによる通信を実現できない。
B−4−2.第1実施例の作用・効果(図16−図17):
前述した図12のVPNネットワークに前記第1実施例のVRF間転送装置600を、適用した場合を次に考えてみる。すなわち、図12のVRF間転送装置411は、第1実施例のVRF間転送装置600に相当することになる。
図16は、経路導入部607によりフォワーディングテーブル701および直結経路VRFテーブル802がどのように修正されるかを示す説明図である。図中の左側のルーティングテーブル501〜503は、図13に示したルーティングテーブルである。図示するように、経路導入部607は、ルーティングテーブル501〜503を元に、経路をフォワーディングテーブル701に導入し、かつ直結経路およびエクストラネット直結経路を直結経路VRFテーブル802に導入している。
図中のフォワーディングテーブル701は、VRF1〜VRF3のルーティングテーブル501〜503に示す経路を導入した直後のものである。このフォワーディングテーブル701における種別708以外の項目は、図14で示した参考例のフォワーディングテーブル123と同一であり、種別708は、どのエントリも経路導入部607が導入したエントリなので「経路」と全てなっている。
また、経路導入部607は、前述したように、経路をフォワーディングテーブル701へ導入する際、該経路が直結経路またはエクストラネット直結経路である場合、該経路の転送先レイヤ3インタフェースと宛先IPアドレスとルーティングテーブルが所属するVRFの識別子を取り出し、その識別子を直結経路VRFテーブル802に記録する。転送先レイヤ3インタフェース・宛先IPアドレスの組み合わせによるエントリが直結経路VRFテーブル802に既に記録されている場合、VRF識別子を該エントリのVRFリストに追記する。
図中のフォワーディングテーブル701においては、VRF1にあるレイヤ3インタフェースAについての直結経路504の導入結果でありエントリ1701と、VRF3にあるレイヤ3インタフェースAについてのエクストラネット直結経路509との導入結果であるエントリ1702とが記録されているが、直結経路VRFテーブル802においては、レイヤ3インタフェースAについてのエントリ1703が記録され、上記直結経路504の導入に対するVRF1とエクストラネット直結経路509の導入に対するVRF3との両方、前記エントリ1703のVRFリスト1103に記録される。
図17は、VRF間転送装置600がサーバS1(407)からARPパケットを受信した時のARP学習処理を例示する説明図である。図中の直結経路VRFテーブル802は、図16で示したものである。VRF間転送装置600は、サーバS1(407)からARPパケットを受信すると、転送先判定部124により、ARP処理・複数導入部803へARPパケット受信通知を通知し、同時に前記受信ARPパケットとパケット受信レイヤ3インタフェースAを通知する。
ARP処理・複数導入部803では、前記ARPパケットとパケット受信レイヤ3インタフェースから、学習IPアドレス:10.1.1.1、学習MACアドレス:S1、および学習レイヤ3インタフェース:Aを確定する(図8のステップS10)。次に、フォワーディングテーブル701から転送先レイヤ3インタフェース・IPアドレスが学習したARP情報と一致するエントリを検索し、転送先MACアドレスを書き換える処理を行う(図8のステップS20)が、ここでは、該当するフォワーディングテーブルエントリが存在しないのでどのエントリも書き換わらない。次いで、学習レイヤ3インタフェース:Aと学習IPアドレス:10.1.1.1で直結経路VRFテーブル802を検索することにより、エントリ1703がヒットし、VRFリスト:VRF1とVRF3を得る(図8のステップS30)。
次いで、VRF1に関して、ARP導入カウンタ801の「装置全体」のエントリ1811と、インタフェースAについてのエントリ1812と、VRF1についてのエントリ1813とを選択し(図8のステップS50)、数が上限以上のカウンタが存在するかどうかを判定する(図8のステップS60)。どのカウンタも数が上限以上ではないので、各カウンタの値を1だけ加算し(図8のステップS70)、VRF1について学習したARP情報をフォワーディングテーブル701へ導入する(図8のステップS80)。導入したエントリは、図17中の1801である。
次にVRF3に関して、ARP導入カウンタ801の「装置全体」のエントリ1811と、インタフェースAについてのエントリ1812と、VRF3についてのエントリ1814とを選択し(図8のステップS50)、数が上限以上のカウンタが存在するかどうかを確認する(図8のステップS60)。どのカウンタも数が上限以上ではないので、各カウンタの値を1だけ加算し(図8のステップS70)、VRF3について学習したARP情報をフォワーディングテーブル701へ導入する(図8のステップS80)。導入したエントリは図17中の1802である。
上記ARP導入処理の結果、VRF1で受信した10.1.1.1宛のパケットはフォワーディングテーブル701を検索してフォワーディングテーブルエントリ1801にマッチし、転送先レイヤ3インタフェース:A、MACアドレス:S1を得て、サーバS1(407)へ送信される。
また、VRF3で受信した10.1.1.1宛のパケットはフォワーディングテーブル701を検索してフォワーディングテーブルエントリ1802にマッチし、転送先レイヤ3インタフェース:A、MACアドレス:S1を得て、同様にサーバS1(407)へ送信される。なお、このVRF3で受信した10.1.1.1宛のパケットは、前述したように、参考例では、送信することができなかった。
したがって、図12で示したVPNネットワークにおいて、参考例のVRF間転送装置100では、VRF3からLAN11へのエクストラネット直結経路419に従うパケット転送を実現することができなかったのに対して、本実施例のVRF間転送装置600では、エクストラネット直結経路419に従うパケット転送を実現することができる。この結果、直収装置へのエクストラネット通信をサポートするVRF間転送装置600のパケット転送部の構成を単純にできるので、装置を安価にし、パケット転送を高速にし、または消費電力を低く抑えることができる。
また、隣接装置レイヤ3アドレス・レイヤ2アドレス対応情報に基づくフォワーディングテーブルエントリの数を、装置単位・レイヤ3インタフェース単位・VRF単位のそれぞれについて、装置管理者が上限を設定し制限をすることができる。このために、装置単位の隣接装置レイヤ3アドレス・レイヤ2アドレス対応情報に基づくエントリ数の制限により、隣接装置レイヤ3アドレス・レイヤ2アドレス対応情報に基づくエントリ導入でフォワーディングテーブルエントリが枯渇し、新たな経路を導入できない状態を防ぐことができる。
さらに、レイヤ3インタフェース単位の隣接装置レイヤ3アドレス・レイヤ2アドレス対応情報に基づくエントリ数の制限により、特定のインタフェースの隣接装置レイヤ3アドレス・レイヤ2アドレス対応情報でフォワーディングテーブルエントリが枯渇し、別のインタフェースのARP情報を導入できない状態を防ぐことができる。
また、VRF単位の隣接装置レイヤ3アドレス・レイヤ2アドレス対応情報に基づくエントリ数の制限により、特定VRFをパケット条件VRFとする隣接装置レイヤ3アドレス・レイヤ2アドレス対応情報でフォワーディングテーブルエントリが枯渇し、別のVRFをパケット条件VRFとする隣接装置レイヤ3アドレス・レイヤ2アドレス対応情報を導入できない状態を防ぐことができる。
さらに、装置単位・転送先レイヤ3インタフェース単位・VRF単位の隣接装置レイヤ3アドレス・レイヤ2アドレス対応情報に基づくフォワーディングテーブルエントリ数とその上限を装置管理者に提示することにより、前記エントリ枯渇の危険や枯渇の原因になっているVRF・レイヤ3インタフェースを装置管理者が特定することを可能とする。
また、本実施例のVRF間転送装置600によれば、隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が無効になった時に、その対応が導入される前のレイヤ2・レイヤ3統合フォワーディングテーブルの状態に容易に復帰することができる。
C.第2実施例:
本発明の第2実施例としてのVRF間転送装置を次に説明する。
C−1.全体構成(図18):
図18は、第2実施例としてのVRF間転送装置900の全体構成図である。VRF間転送装置900は、経路制御部901と、ARP制御部911と、パケット転送部921と、複数のレイヤ3インタフェース931と、ユーザインタフェース処理部941とを備える。VRF間転送装置900と前述した参考例(図1)とを比較すると、ユーザインタフェース処理部941の有無を除いて両者は同様のユニットから構成されていることが判る。ユニット毎の相違点・一致点は次の通りである。
VRF間転送装置900の経路制御部901は、参考例の経路制御部101と同一である。VRF間転送装置900のパケット転送部921は、参考例に換えて第1実施例のパケット転送部621と同一である。図中、同一の部分には同一の符号を付した。すなわち、パケット転送部921の備えるフォワーディングテーブル701は、第1実施例のフォワーディングテーブルと同一である。
VRF間転送装置900のARP制御部911と参考例のARP制御部111とを比較すると、ARP制御部911はARP導入カウンタ801とARP処理・コピー導入部913とを備えるのに対して、参考例のARP制御部111はARP処理部112だけを備えることが相違する。なお、ARP導入カウンタ801は、第1実施例のARP制御部611に設けられたARP導入カウンタと同じものであることから、同一の符号を付けた。ARP処理・コピー導入部913は、本発明の備える「アドレス解決部」に対応している。
ARP制御部911において、ARP処理・コピー導入部913はARP導入カウンタ801に接続している。また、ARP処理・コピー導入部913は、パケット転送部621のフォワーディングテーブル701とインタフェースVRFテーブル122と転送先判定部124に接続している。
VRF間転送装置600のレイヤ3インタフェース631は、参考例のレイヤ3インタフェース131と同一である。
また、VRF間転送装置900は、ユーザインタフェース処理部941を備えるのに対して、参考例はこうした構成を備えない。ユーザインタフェース処理部641は、装置管理者が使用する端末装置と接続しており、端末装置からの命令を解釈し、命令の結果を端末装置へ送信する。ユーザインタフェース処理部641は、ARP制御部911のARP導入カウンタ801に接続している。
C−2.各部の処理(図19−図23):
ARP処理・コピー導入部913は、参考例のARP処理部112に対して、ARP解決処理に新しい処理を追加したものである。VRF間転送装置900がパケットを受信し、転送先判定部124がフォワーディングテーブル701を検索した結果、転送先MACアドレスが未解決である場合に転送先判定部124が出す未解決通知をARP処理・コピー導入部913が受け取ったら、ARP処理・コピー導入部913はARP解決処理を実行する。
図19は、ARP処理・コピー導入部913により実行されるARP学習処理の手順を示すフローチャートである。VRF間転送装置900のCPUは、図示するように、まず、転送先判定部124から未解決通知を受けて、転送先レイヤ3インタフェース、転送先IPアドレス、パケット宛先IPアドレス、およびパケット受信VRFを取得する(ステップS210)。次に、CPUは、転送先レイヤ3インタフェースをキーにインタフェースVRF122を検索し、転送先レイヤ3インタフェースのVRFを得る(ステップS220)。
次いで、CPUは、未解決通知の原因となった受信パケットについて転送先判定部124がフォワーディングテーブル701を検索した結果ヒットしたフォワーディングテーブルエントリがエクストラネット直結経路かどうかを判定する(ステップS230)。具体的には、通知にある転送先IPアドレスが直結である場合が直結経路であり、パケット受信VRFと転送先レイヤ3インタフェースのVRFが異なる場合がエクストラネット経路である。両方を満たした場合、エクストラネット直結経路と判定する。
ステップS230でエクストラネット直結経路ではないと判定された場合、通常のARP解決処理として、転送先レイヤ3インタフェースについて転送先IPアドレスを解決するためにARPリクエストパケットを送信し(ステップS240)、この処理ルーチンを一旦終了する。一方、ステップS230でエクストラネット直結経路であると判定された場合、学習済みARP情報を検索するために、転送先レイヤ3インタフェースのVRFとパケット宛先IPアドレスをキーにフォワーディングテーブル701を検索する(ステップS250)。ステップS250の処理によりARP情報を発見したかどうかを、該エントリの種別がARPかどうかで判定し(ステップS260)、ARPである場合には取得したエントリが該当転送先のARP情報であるとみなす。
一方、ステップS260によりARP情報を発見したと判定された場合、ARP導入カウンタ801から装置全体・パケット受信VRF・転送先レイヤ3インタフェースについての各エントリを取得する(ステップS270)。次いで、CPUは、各エントリについて数が上限以上かどうかを確認する(ステップS280)。数が上限以上であるエントリが存在している場合、続くステップS290およびS300の処理を行わず、処理を終了する。
ステップS280でどのエントリも数が上限未満であると判定された場合には、CPUは、各エントリの数を1だけ加算する(ステップS290)。次いで、CPUは、パケット受信VRFをパケット条件VRFとして該ARP情報をフォワーディングテーブル701へ導入する(ステップS300)。ステップS300の実行後、この処理ルーチンを一旦終了する。
また、ステップS260によりARP情報を発見しなかったと判定された場合、ARP導入カウンタ801から装置全体・パケット受信VRF・転送先レイヤ3インタフェースについての各エントリを取得する(ステップS310)。次いで、CPUは、各エントリについて数が上限以上かどうかを確認する(ステップS320)。ここで、数が上限以上であるエントリが存在すると判定された場合、続くステップS330、S340、およびS350の処理を行わず、この処理ルーチンを一旦終了する。
一方、ステップS320で数が上限以上であるエントリが存在しないと判定された場合には、各エントリの数を1だけ加算する(ステップS330)。次いで、CPUは、転送先レイヤ3インタフェースおよび転送先IPアドレスに対して転送先MACアドレスを未解決とする情報を、パケット受信VRFをパケット条件VRFとしてフォワーディングテーブル701へ導入する(ステップS340)。その後、転送先レイヤ3インタフェースについて転送先IPアドレスを解決するためにARPリクエストパケットを送信する(ステップS350)。ステップS350の実行後、この処理ルーチンを一旦終了する。
なお、ステップS350の実行後、転送先装置からARPリクエストの応答であるARPパケットを受信した時、ARP処理・コピー導入部913がARP学習処理を実施し、学習したARP情報のレイヤ3インタフェース・IPアドレスと転送先レイヤ3インタフェース・転送先IPアドレスが一致するフォワーディングテーブル701上の全てのエントリについて、転送先MACアドレスを学習MACアドレスで書き換える。このとき、ステップS340で導入された転送先MACアドレスが未解決のエントリも転送先が学習したARP情報のMACアドレスに書き換えられる。
転送先判定部124からARPパケット受信通知を受けた場合、ARP処理・コピー導入部913ではARP学習処理をする。ARP学習処理では、フォワーディングテーブル701の既存のエントリの転送先書き換えと、学習したARP情報のフォワーディングテーブル701への導入を行う。具体的には、フォワーディングテーブル701にある、転送先レイヤ3インタフェース305(図5)が該ARPパケットの受信レイヤ3インタフェースと一致し、かつ転送先IPアドレス306(図5)が該ARPパケットの学習IPアドレスと一致する全エントリについて、該エントリの転送先MACアドレスを学習MACアドレスで書き換え、次いで該ARPパケットの受信レイヤ3インタフェースでインタフェースVRFテーブル122を検索し、得たVRFをパケット条件VRF302として該ARP情報をフォワーディングテーブル701へ導入する。
図18に戻り、また、ARP処理・コピー導入部913は、第1実施例と同一のARP削除処理を実行する。
ユーザインタフェース処理部941は、第1実施例と同様に、ARP導入数表示コマンド1501(図10)を実行し管理者端末に情報を送信する処理を行うとともに、上限設定コマンド1601(図11)を実行し管理者端末に情報を送信する処理も行う。
前述した図12のVPNネットワークに前記第1実施例のVRF間転送装置600を、適用した場合を次に考えてみる。すなわち、図12のVRF間転送装置411は、第2実施例のVRF間転送装置900に相当することになる。
図20は、VRF間転送装置900において図13のルーティングテーブルを元に、経路導入部107が経路を導入したフォワーディングテーブル701を例示する説明図である。フォワーディングテーブル701の各エントリは、第1実施例の図16と同一である。各エントリの種別を全て経路とする。
次に、フォワーディングテーブル701が図20に示す状態の時に、サーバS1(407)のARP情報をVRF間転送装置900が学習し、その後で端末T3(410)からサーバS1への通信が発生した場合の動作例を、ARP学習、通信の最初のパケット受信、通信の2個目以降のパケット受信の順に示す。
まずVRF間転送装置900によるARP学習を説明する。フォワーディングテーブル701が図20に示す状態で、VRF間転送装置900がサーバS1(407)からARPパケットを受信したら、ARP処理・コピー導入部913では、ARPパケットから学習IPアドレス:10.1.1.1と学習MACアドレス:S1、パケット受信レイヤ3インタフェースから学習レイヤ3インタフェース:Aを確定する。
次いで、フォワーディングテーブル701にある該ARP情報を転送先とするエントリ全ての転送先MACを、学習MACアドレスで書き換える。図20のフォワーディングテーブル701中で学習レイヤ3インタフェース:A・学習IPアドレス:10.1.1.1を転送先レイヤ3インタフェース・転送先IPアドレスとするエントリは存在しない。このため、どのエントリの転送先MACアドレスも書き換えない。
次いで、学習したARP情報を学習レイヤ3インタフェースのVRFについてフォワーディングテーブル701へ導入する。学習レイヤ3インタフェースAをキーにインタフェースVRFテーブル122を検索して、VRF:1を得る。該VRFについて、学習したARP情報をフォワーディングテーブル701に導入する。導入結果のフォワーディングテーブル701を図21に示す。導入したエントリは2101である。
次いで通信の最初のパケットを受信した時のVRF間転送装置900の処理を説明する。フォワーディングテーブル701が図21に示す状態で、VRF間転送装置900が端末T3(410)からサーバS1(407)宛のパケットを受信すると、転送先判定部124では、パケット受信レイヤ3インタフェースCをキーにインタフェースVRFテーブル122を検索してVRF:3を得て、次いでパケット受信VRF:3とパケット宛先IPアドレス:10.1.1.1をキーにして図21の状態のフォワーディングテーブル701を検索した結果、フォワーディングエントリ(2002)にヒットし、転送先MACアドレス:未解決を得て、ARP処理・コピー導入部913へ未解決を通知する。
ARP処理・コピー導入部913では、転送先判定部124から未解決通知を受けたら、図19に従って処理をする。まず転送先判定部124から、転送先レイヤ3インタフェース:A・転送先IPアドレス:直結・パケット宛先IPアドレス:10.1.1.1・パケット受信VRF:3を取得する(ステップS210)。次に転送先レイヤ3インタフェース:AをキーにインタフェースVRFテーブル122を検索し、VRF:1を得る(ステップS220)。次に、未解決通知の原因となった受信パケットについて転送先判定部124がフォワーディングテーブル701を検索した結果ヒットしたフォワーディングテーブルエントリがエクストラネット直結経路かどうかを判定する(ステップS230)。具体的には、転送先IPアドレスが直結であるので直結経路であり、パケット受信VRF:3と転送先レイヤ3インタフェースのVRF:1が異なるので、エクストラネット直結経路と判定する。
エクストラネット直結経路と判定した場合、転送先レイヤ3インタフェースのVRF:1とパケット宛先IPアドレス:10.1.1.1をキーに図21の状態のフォワーディングテーブル701を検索し、エントリ2101を取得する(ステップS250)。ステップS250で取得したエントリの種別を判定し(ステップS260)、種別がARPなので、ARP導入カウンタ801からカウント対象がそれぞれ装置全体・パケット受信VRF:3・転送先レイヤ3インタフェース:Aであるエントリを取得し(ステップS270)、数が条件以上であるエントリが存在するかどうかを確認する(ステップS280)。ステップS280の条件を満たすエントリは存在しないので、各エントリの数を1加算し(ステップS290)、パケット受信VRF:3をパケット条件VRFとして該ARP情報をフォワーディングテーブル701へ導入する(ステップS300)。
図22は、導入結果のフォワーディングテーブル701を示す説明図である。導入したエントリは2201である。
次いで通信の2個目以降のパケットを受信した時のVRF間転送装置900の処理を説明する。フォワーディングテーブル701が図22に示す状態で、VRF間転送装置900が端末T3(410)からサーバS1(407)宛のパケットを受信すると、転送先判定部124では、パケット受信レイヤ3インタフェースCをキーにインタフェースVRFテーブル122を検索してVRF:3を得て、次いでパケット受信VRF:3とパケット宛先IPアドレス:10.1.1.1をキーにして図22の状態のフォワーディングテーブル701を検索した結果、フォワーディングエントリ2201にヒットし、転送先レイヤ3インタフェース:Aと転送先MACアドレス:S1を得る。この結果、該パケットはレイヤ3インタフェースA(415)からMACアドレスS1宛に送信され、サーバS1に到達する。
以上の説明により、第2実施例で説明した図12の構成によるVRF間転送装置により、ARP学習後にエクストラネット直結経路による通信が実現できることを示した。
次に、フォワーディングテーブル701が図20に示す状態の時に、VRF間転送装置900がサーバS1(407)のARP情報を未解決である状態で、端末T3(410)からサーバS1への通信が発生した場合の動作例を、通信の最初のパケット受信、ARP学習、通信の2個目以降のパケット受信の順に示す。まず通信の最初のパケットを受信した時のVRF間転送装置(411)の処理を説明する。
フォワーディングテーブル701が図20に示す状態で、VRF間転送装置900が端末T3(410)からサーバS1(407)宛のパケットを受信すると、転送先判定部124では、パケット受信レイヤ3インタフェースCをキーにインタフェースVRFテーブル122を検索してVRF:3を得て、次いでパケット受信VRF:3とパケット宛先IPアドレス:10.1.1.1をキーにして図21の状態のフォワーディングテーブル701を検索した結果、フォワーディングエントリ(2002)にヒットし、転送先MACアドレス:未解決を得て、ARP処理・コピー導入部913へ未解決を通知する。
ARP処理・コピー導入部913では、転送先判定部124から未解決通知を受けたら、図19に従って処理をする。まず転送先判定部124から、転送先レイヤ3インタフェース:A・転送先IPアドレス:直結・パケット宛先IPアドレス:10.1.1.1・パケット受信VRF:3を取得する(ステップS210)。次に転送先レイヤ3インタフェース:AをキーにインタフェースVRFテーブル(112)を検索し、VRF:1を得る(ステップS220)。
次に未解決通知の原因となった受信パケットについて転送先判定部124がフォワーディングテーブル701を検索した結果ヒットしたフォワーディングテーブルエントリがエクストラネット直結経路かどうかを判定する(ステップS230)。具体的には、転送先IPアドレスが直結であるので直結経路であり、パケット受信VRF:3と転送先レイヤ3インタフェースのVRF:1が異なるので、エクストラネット直結経路と判定する。
エクストラネット直結経路と判定した場合、転送先レイヤ3インタフェースのVRF:1とパケット宛先IPアドレス:10.1.1.1をキーに図20の状態のフォワーディングテーブル701を検索し、エントリ2001を取得する(ステップS250)。ステップS250で取得したエントリの種別を判定し(ステップS260)、種別が経路なので、ステップS310以下の処理を実施する。ARP導入カウンタ801からカウント対象がそれぞれ装置全体・パケット受信VRF:3・転送先レイヤ3インタフェース:Aであるエントリを取得し(ステップS310)、数が条件以上であるエントリが存在するかどうかを確認する(ステップS320)。ステップS320の条件を満たすエントリは存在しないので、各エントリの数を1加算し(ステップS330)、次いでレイヤ3インタフェース:A・IPアドレス:10.1.1.1に対して転送先MACアドレスを未解決とするARP情報を、パケット受信VRF:3をパケット条件VRFとしてフォワーディングテーブル701へ導入し(ステップS340)、インタフェース:AからIPアドレス:10.1.1.1を問い合わせるARPリクエストを送信する(ステップS350)。
図23は、上記処理結果のフォワーディングテーブル701を示す説明図である。ステップS340で導入したフォワーディングテーブルエントリは2301である。
次にVRF間転送装置900によるARP学習を説明する。フォワーディングテーブル701が図23に示す状態で、上記ARPリクエスト送信の結果、サーバS1(407)がARPパケットを送信しVRF間転送装置900が受信したら、ARP処理・コピー導入部913では、ARPパケットから学習IPアドレス:10.1.1.1と学習MACアドレス:S1、ARPパケット受信インタフェースから学習レイヤ3インタフェース:Aを確定する。
次いで、フォワーディングテーブル701にある該ARP情報を転送先とするエントリ全ての転送先MACを、学習MACアドレスで書き換える。図23のフォワーディングテーブル中で学習レイヤ3インタフェース:A・学習IPアドレス:10.1.1.1を転送先レイヤ3インタフェース・転送先IPアドレスとするエントリは、エントリ2301のみである。該エントリの転送先MACアドレスを学習MACアドレス:S1に書き換える。
次いで、学習したARP情報を学習レイヤ3インタフェースのVRFについてフォワーディングテーブル701へ導入する。学習レイヤ3インタフェースAをキーにインタフェースVRFテーブル122を検索して、VRF:1を得る。該VRFについて、学習したARP情報をフォワーディングテーブル701に導入する。
上記処理の結果のフォワーディングテーブル701を図22に示す。転送先MAC書き換え処理により書き換わったエントリは2201であり、ARP情報導入処理で導入されたエントリは2101である。
次いで通信の2個目以降のパケットを受信した時のVRF間転送装置900の処理を説明する。フォワーディングテーブル701が図22に示す状態で、VRF間転送装置(411)が端末T3(410)からサーバS1(407)宛のパケットを受信すると、転送先判定部124では、パケット受信レイヤ3インタフェースCをキーにインタフェースVRFテーブル122を検索してVRF:3を得て、次いでパケット受信VRF:3とパケット宛先IPアドレス:10.1.1.1をキーにして図22の状態のフォワーディングテーブル701を検索した結果、フォワーディングエントリ(2201)にヒットし、転送先レイヤ3インタフェース:Aと転送先MACアドレス:S1を得る。この結果、該パケットはレイヤ3インタフェースA(415)からMACアドレスS1宛に送信され、サーバS1に到達する。
以上の説明により、実施例2で説明した図12の構成によるVRF間転送装置により、ARP情報が未解決状態の場合にエクストラネット直結経路による通信が発生しても、ARP学習後すぐにエクストラネット直結経路による通信が実現できることを示した。
C−3.作用・効果:
以上のように構成された第2実施例のVRF間転送装置900によれば、ARP処理・コピー導入部913のARP解決処理によって、ARP学習済みの状態であれば、該ARPを転送先として必要とするエクストラネット直結経路による通信を開始すると、該通信の最初のパケット転送時に学習済みARP情報を該通信のパケット受信VRFについてフォワーディングテーブル701へ導入する(ステップS300)ことにより、エクストラネット直結経路に基づく通信が実現可能となる。
また、第2実施例のVRF間転送装置900によれば、ARP情報が未解決であっても、エクストラネット直結経路による通信を開始すると、該通信の最初のパケット転送時に転送先MACアドレスを未解決とするARP情報を該通信のパケット受信VRFについてフォワーディングテーブル701へ導入しARPリクエストを送信し(ステップS340、S350)、ARPの応答が戻ってきた時のARP学習処理により、ステップS340で導入したフォワーディングテーブルエントリの転送先MACアドレスが学習したARP情報にしたがって書き換えられることにより、ARPを学習次第、エクストラネット直結経路に基づく通信が実現可能となる。
また、第2実施例のVRF間転送装置900によれば、フォワーディングテーブル701へのARP情報の導入にあたり、ARP導入カウンタ801にある条件が一致するカウンタの値を1だけ加算する。この処理により、装置全体・レイヤ3インタフェース別・VRF別のARP処理・コピー導入部913が導入したフォワーディングテーブルエントリ数を管理することができる。さらに、各VRFへのARP情報の導入にあたり、ARP導入カウンタ801にある条件が一致するエントリの数が上限未満であることをチェックし、上限以上である場合には導入処理を中止することにより、装置全体・レイヤ3インタフェース別・VRF別のARP処理・コピー導入部913が導入したフォワーディングテーブルエントリ数が、装置管理者が指定した上限を超えないことを保証することができる。
なお、この第2実施例でも、ARP処理・コピー導入部913は、第1実施例と同一のARP削除処理を実行する。このために、削除対象ARP情報に基づく全フォワーディングテーブルエントリを削除することができる。またARP導入カウン801のエントリ数を管理し、装置管理者の命令があった時に正しい数を提示することができる。
また、第2実施例でも、ユーザインタフェース処理部941は、第1実施例と同様に、ARP導入数表示コマンド1501(図10)を実行し管理者端末に情報を送信する処理を行う。この処理により、装置全体、レイヤ3インタフェース別・VRF別に、種別がARPであるフォワーディングテーブルエントリ数を装置管理者へ表示することができる。また、ユーザインタフェース処理部941は、第1実施例と同様に、上限設定コマンド1601(図11)を実行し管理者端末に情報を送信する処理も行う。この処理により、装置管理者が装置全体・レイヤ3インタフェース別・VRF別に、種別がARPであるフォワーディングテーブルエントリ数の上限を装置に設定することができる。
D.第3実施例:
次に、レイヤ3プロトコルにIPv6を用いるVRF間転送装置に本発明を適用する第3実施例を、発明を実施するための最良の形態を基にして説明する。
本実施例でのVRF間転送装置の構成は、第1実勢例と同じ構成とする。ただし、ARP制御部111に代えてNDP制御部を備える。NDP制御部にはARP処理・複数導入部803に代えてNDP処理・複数導入部が存在する。また、ARP導入カウンタに代えてNDP導入カウンタを備える。
パケット転送部121の構成は、第1実施例と同じ構成である。ただし、転送先判定部(124)がパケットを受信し、フォワーディングテーブル123を検索した結果、転送先MACアドレスが未解決である場合、NDP処理・複数導入部へ未解決通知を通知し、同時に該フォワーディングエントリの転送先レイヤ3インタフェース・転送先IPアドレスとパケット宛先IPアドレスを通知する。また、転送先判定部124がNDPパケットを受信した場合、NDP処理・複数導入部へNDPパケット受信通知を通知し、同時に受信NDPパケットとパケット受信レイヤ3インタフェースを通知する。
NDP処理・複数導入部においてのNDP解決処理・NDP学習処理・NDP削除処理は、ARP処理・複数導入部803においてのARP解決処理・ARP学習処理・ARP削除処理と同じものとする。ただし、パケットフォーマットとパケット交換手順はNDPプロトコルに従うものとする。また、NDP処理・複数導入部においてNDP情報をフォワーディングテーブルに導入および削除する時には、ARP導入カウンタではなくNDP導入カウンタを参照するものとする。
上記で説明しなかった各テーブル・処理・通知内容について、IPアドレスを用いている箇所を、IPv6アドレスを使用するよう変更する。また、処理に用いるARPをNDPに置き換える。
以上で説明した構成および処理により、IPv6を用いたVRF間転送装置についても第1実施例と同様に、エクストラネット直結経路による転送が可能であること、NDP情報に基づくフォワーディングテーブルエントリ数を装置管理者へ提示可能であること、NDP情報に基づくフォワーディングテーブルエントリ数の上限を装置管理者が設定可能であること、設定した上限を超えるNDP情報に基づくフォワーディングテーブルエントリの導入を禁止できることを示した。
E.第4実施例:
次に、レイヤ3プロトコルにIPv6を用いるVRF間転送装置に本発明の第2実施例を適用する実施例を、第2実施例を基にして説明する。
本実施例でのVRF間転送装置の構成は、第2実施例と同じ構成とする。ただし、ARP制御部111に代えてNDP制御部を備える。NDP制御部にはARP処理・コピー導入部913に代えてNDP処理・コピー導入部が存在する。また、ARP導入カウンタに代えてNDP導入カウンタを備える。
パケット転送部121の構成も第2実施例と同じ構成である。ただし、転送先判定部(124)がパケットを受信し、フォワーディングテーブル123を検索した結果、転送先MACアドレスが未解決である場合、NDP処理・コピー導入部へ未解決通知を通知し、同時に該フォワーディングエントリの転送先レイヤ3インタフェース・転送先IPv6アドレスとパケット宛先IPv6アドレスを通知する。また、転送先判定部(124)がNDPパケットを受信した場合、NDP処理・コピー導入部へNDPパケット受信通知を通知し、同時に受信NDPパケットとパケット受信レイヤ3インタフェースを通知する。
NDP処理・コピー導入部においてのNDP解決処理・NDP学習処理・NDP削除処理は、ARP処理・コピー導入部913においてのARP解決処理・ARP学習処理・ARP削除処理と同じものとする。ただし、パケットフォーマットとパケット交換手順はNDPプロトコルに従うものとする。また、NDP処理・複数導入部においてNDP情報をフォワーディングテーブルに導入および削除する時には、ARP導入カウンタではなくNDP導入カウンタを参照するものとする。
上記で説明しなかった各テーブル・処理・通知内容について、IPアドレスを用いている箇所を、IPv6アドレスを使用するよう変更する。また、処理に用いるARPをNDPに置き換える。
以上で説明した構成および処理により、IPv6を用いたVRF間転送装置についても第2実施例と同様に、エクストラネット直結経路による転送が可能であること、NDP情報に基づくフォワーディングテーブルエントリ数を装置管理者へ提示可能であること、NDP情報に基づくフォワーディングテーブルエントリ数の上限を装置管理者が設定可能であること、設定した上限を超えるNDP情報に基づくフォワーディングテーブルエントリの導入を禁止できることを示した。
さらに、第2実施例と同様に、エクストラネット直結経路を使用する通信を行う時に該エクストラネット直結経路に対してNDP情報をレイヤ2・レイヤ3統合フォワーディングテーブルへ導入すること、つまりNDP情報を学習済みであっても、通信を行うまで該エクストラネット直結経路に対してNDP情報をレイヤ2・レイヤ3統合フォワーディングテーブルへ導入しない。
F.変形例:
なお、この発明は上記の各実施例や変形例に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
F1.変形例1:
上記各実施例では、ユーザインタフェース処理部641を備える構成であったが、ユーザインタフェース処理部641を省く構成としてもよい。
F2.変形例2:
上記各実施例では、VRF間転送装置として本発明の転送装置を実現しているが、パーソナルコンピュータ等のコンピュータ装置で本発明の転送方法を実現する構成としてもよい。
参考例としてのVRF間転送装置100の全体構成図である。 インタフェースVRFテーブル122を例示する説明図である。 フォワーディングテーブル123の一例を示す説明図である。 第1実施例としてのVRF間転送装置600の全体構成図である。 パケット転送部621のフォワーディングテーブル701の一例を示す説明図である。 直結経路VRFテーブル802の一例を示す説明図である。 ARP導入カウンタ801の一例を示す説明図である。 ARP処理・複数導入部803により実行されるARP学習処理の手順を示すフローチャートである。 ARP処理・複数導入部803により実行されるARP削除処理の手順を示すフローチャートである。 ユーザインタフェース処理部641の処理を図式化した説明図である。 ユーザインタフェース処理部641の他の処理を図式化した説明図である。 前記参考例を適用したVPNネットワークを示す説明図である。 図12に例示したVPNネットワークで得られる各VRFのルーティングテーブルを示す説明図である。 経路を導入した結果のフォワーディングテーブル123を示す説明図である。 ARP情報の導入後のフォワーディングテーブル123を示す説明図である。 経路導入部607によりフォワーディングテーブル701および直結経路VRFテーブル802がどのように修正されるかを示す説明図である。 VRF間転送装置600がサーバS1(407)からARPパケットを受信した時のARP学習処理を例示する説明図である。 第2実施例としてのVRF間転送装置900の全体構成図である。 ARP処理・コピー導入部913により実行されるARP学習処理の手順を示すフローチャートである。 RF間転送装置900において図13のルーティングテーブルを元に、経路導入部107が経路を導入したフォワーディングテーブル701を例示する説明図である。 導入結果のフォワーディングテーブル701の一例を示す説明図である。 導入結果のフォワーディングテーブル701の一例を示す説明図である。 処理結果のフォワーディングテーブル701の一例を示す説明図である。
符号の説明
100…VRF間単相装置
101…経路制御部
102…VRF
103…ルーティングテーブル
104…経路生成部
105…エクストラネット経路ポリシー
106…エクストラネット経路作成部
107…経路導入部
111…ARP制御部
112…ARP処理部
121…パケット転送部
122…インタフェースVRFテーブル
123…フォワーディングテーブル
124…転送先判定部
131…レイヤ3インタフェース
419…エクストラネット通信
420…経路
501〜503…ルーティングテーブル
600…VRF間単相装置
601…経路制御部
607…経路導入部
611…ARP制御部
621…パケット転送部
631…レイヤ3インタフェース
641…ユーザインタフェース処理部
701…フォワーディングテーブル
801…ARP導入カウンタ
802…直結経路VRFテーブル
803…ARP処理・複数導入部
900…VRF間転送装置
901…経路制御部
911…ARP制御部
913…ARP処理コピー導入部
921…パケット転送部
931…レイヤ3インタフェース
941…ユーザインタフェース処理部
1502…ディスプレイ
S1…サーバ
R1…ルータ
T2…端末
T3…端末

Claims (17)

  1. 仮想専用網(VPN)毎のルーティングテーブルを個別に有する複数のVRF(VPN Routing and Forwarding)を備える転送装置において、
    前記ルーティングテーブルは、
    通信するパケットの宛先を定めたレイヤ3アドレスと、当該ルーティングテーブルが存在する前記VRFを所属VRFとして該所属VRFからの転送先を定めたレイヤ3アドレスとに基づいて、前記通信の経路を定めるテーブルであって、前記所属VRFから他の前記VRFへ前記パケットを転送するエクストラネット通信の経路も併せて定め得る構成であり、
    前記パケットの転送先を求めるための検索条件としてのVRF情報およびレイヤ3アドレスと、前記検索の結果としての転送先レイヤ3インタフェース、転送先レイヤ3アドレスおよび転送先レイヤ2アドレスとを備えるエントリを記録するためのテーブルであって、前記エントリのそれぞれにおいて前記転送先レイヤ3アドレスと前記転送先レイヤ2アドレスについての対応が未解決である場合には前記転送先レイヤ2アドレスを未解決であることを示す旨のデータにて示すレイヤ2・レイヤ3統合フォワーディングテーブル、を格納する第1の記憶部と、
    前記複数のルーティングテーブルにそれぞれ記録された各経路を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する経路導入部と、
    前記レイヤ2・レイヤ3統合フォワーディングテーブルに記録されているエントリの前記転送先レイヤ3インタフェースにおいて、隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入するアドレス解決部と、
    前記パケットに記録された宛先を定めたレイヤ3アドレスをキーとして前記レイヤ2・レイヤ3統合フォワーディングテーブルを検索することにより前記パケットの転送先を判定する転送先判定部と
    を備え、
    前記アドレス解決部は、
    転送先レイヤ3アドレスとしてパケットの宛先レイヤ3アドレスを使用する直結経路であり、かつパケット転送先を求めるための検索条件であるVRF情報と転送先レイヤ3インタフェースが所属するVRFとが異なるエントリが前記レイヤ2・レイヤ3統合フォワーディングテーブルに存在する場合に、前記検索条件であるVRF情報と同一のVRF情報を使用して、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する構成を備える、転送装置。
  2. 請求項1に記載の転送装置であって、
    レイヤ3インタフェースとレイヤ3アドレスに対するVRF識別子の集合との対応をエントリとする直結経路VRFテーブルを格納する第2の記憶部を備え、
    前記アドレス解決部は、
    隣接装置が接続しているレイヤ3インタフェースと隣接装置のレイヤ3アドレスをキーに前記直結経路VRFテーブルを検索し、該検索により得られるVRF識別子の集合の各VRF識別子について、パケット転送先を求めるための検索条件であるVRFとして前記VRF識別子を使用して、前記レイヤ2・レイヤ3統合フォワーディングテーブルへの前記レイヤ3アドレスとレイヤ2アドレスとの対応の導入を行う構成である、転送装置。
  3. 請求項2に記載の転送装置であって、
    転送先レイヤ3アドレスとしてパケットの宛先レイヤ3アドレスを使用する直結経路を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する際、前記直結経路の転送先レイヤ3インタフェースと前記直結経路の宛先レイヤ3アドレスに対する前記直結経路のVRFを、前記直結経路VRFテーブルに記録する直結経路VRFテーブル更新部を備え、
    前記直結経路VRFテーブル更新部は、
    転送先レイヤ3アドレスとしてパケット宛先レイヤ3アドレスを使用し、かつ転送先レイヤ3インタフェース・宛先レイヤ3アドレスが同一である直結経路が複数あり各経路を前記レイヤ2・レイヤ3統合フォワーディングテーブルへ導入する場合に、前記直結経路VRFテーブルの該レイヤ3インタフェースと宛先レイヤ3アドレスによるエントリに前記レイヤ2・レイヤ3統合フォワーディングテーブルへ導入した各経路のVRF識別子の集合を記録する構成を備える転送装置。
  4. 請求項2または3に記載の転送装置であって、
    前記レイヤ2・レイヤ3統合フォワーディングテーブルは、
    経路の導入が前記経路導入部と前記アドレス解決部とのいずれによるものかを示す種別を格納するフィールドを備え、
    隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が無効になった時に、前記レイヤ2・レイヤ3統合フォワーディングテーブルの転送先レイヤ3インタフェースと転送先レイヤ3アドレスが前記隣接装置のレイヤ3インタフェースとレイヤ3アドレスに一致するエントリ全てについて前記種別の内容を確認し、前記種別の内容が前記経路導入部によるものを示す場合に、前記エントリの転送先レイヤ2アドレスを未解決とし、前記種別の内容が前記アドレス解決部によるものを示す場合に、前記エントリを削除する削除部を備える、転送装置。
  5. 請求項4に記載の転送装置であって、
    装置全体、VRF別、およびレイヤ3インタフェース別に対応する複数のカウンタと、
    隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応をフォワーディングテーブルに導入する場合には、前記装置全体のカウンタ、導入エントリのパケット転送先を求めるための検索条件であるVRFに対応する前記VRF別のカウンタ、および導入エントリの転送先レイヤ3インタフェースに対応する前記レイヤ3インタフェース別のカウンタの値を、1だけそれぞれ加算するカウンタ加算部と、
    隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を導入したことによるエントリをフォワーディングテーブルから削除する場合には、装置全体のカウンタ、削除エントリのパケット転送先を求めるための検索条件であるVRFに対応するVRF別のカウンタ、削除エントリの転送先レイヤ3インタフェースに対応するレイヤ3インタフェース別のカウンタの各カウンタを、1だけそれぞれ減算するカウンタ減算部と
    を備える転送装置。
  6. 請求項5に記載の転送装置であって、
    操作者の操作する端末装置との間で情報のやり取りを行うユーザインタフェース処理部を備え、
    前記ユーザインタフェース処理部は、
    前記複数のカウンタの計数値を取得する命令を前記端末装置から受信した場合に、前記カウンタの値を前記端末装置へ送信するカウンタ値送信部を備える、転送装置。
  7. 請求項5に記載の転送装置であって、
    前記複数のカウンタのそれぞれに対して予め定められた上限値を記憶する上限記憶部を備え、
    前記アドレス解決部は、
    前記複数のカウンタのうちの少なくとも一つにおいて、各カウンタの計数値が、前記カウンタに対応する前記上限値以上である場合に、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応をフォワーディングテーブルに導入を禁止する導入禁止部を備える、転送装置。
  8. 請求項7に記載の転送装置であって、
    操作者の操作する端末装置との間で情報のやり取りを行うユーザインタフェース処理部を備え、
    前記ユーザインタフェース処理部は、
    前記上限記憶部に記憶された各上限値の少なくとも一つを変更する命令を前記端末装置から受信する上限変更命令受信部を備え、
    前記上限設定命令受信部により受信した命令に従って、前記上限記憶部に記憶された各上限値の少なくとも一つの上限値を変更する上限変更部を備える、転送装置。
  9. 請求項1に記載の転送装置であって、
    前記アドレス解決部は、
    前記転送先判定部により前記レイヤ2・レイヤ3統合フォワーディングテーブルを検索した結果として得た転送先レイヤ2アドレスが未解決である場合に、当該検索で見つかったエントリが、転送先レイヤ3アドレスとしてパケット宛先レイヤ3アドレスを使用する直結経路に基づくものであり、かつパケット転送先を求めるための検索条件であるVRFと転送先レイヤ3インタフェースが所属するVRFが異なるものであるかを判定する判定部と、
    前記判定部により肯定判定された場合に、前記肯定判定されたエントリの転送先レイヤ3インタフェースについて前記パケット宛先レイヤ3アドレスで示した隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を検索する検索部と、
    前記検索部により、前記条件を満たす隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が学習済みである場合に、パケット転送先を求めるための検索条件であるVRFとして前記パケットを受信したVRFを使用して、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応をフォワーディングテーブルに導入する第1導入部と
    を備える転送装置。
  10. 請求項9に記載の転送装置であって、
    前記検索部により、前記条件を満たす隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が未解決である場合に、パケット転送先を求めるための検索条件であるVRFとして前記パケットを受信したVRFを使用し、前記検索条件であるレイヤ3アドレスとして前記パケットの宛先レイヤ3アドレスを使用し、前記転送先レイヤ3インタフェースとして前記エントリの転送先レイヤ3インタフェースを使用し、前記転送先レイヤ3アドレスとして前記パケットの宛先レイヤ3アドレスを使用し前記転送先レイヤ2アドレスとして未解決であることを示す値を使用したエントリをフォワーディングテーブルに導入する第2導入部と
    を備える転送装置。
  11. 請求項9または10に記載の転送装置であって、
    前記レイヤ2・レイヤ3統合フォワーディングテーブルは、
    経路の導入が前記経路導入部と前記アドレス解決部とのいずれによるものかを示す種別を格納するフィールドを備え、
    隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応が無効になった時に、前記レイヤ2・レイヤ3統合フォワーディングテーブルの転送先レイヤ3インタフェースと転送先レイヤ3アドレスが前記隣接装置のレイヤ3インタフェースとレイヤ3アドレスに一致するエントリ全てについて前記種別の内容を確認し、前記種別の内容が前記経路導入部によるものを示す場合に、前記エントリの転送先レイヤ2アドレスを未解決とし、前記種別の内容が前記アドレス解決部によるものを示す場合に、前記エントリを削除する、転送装置。
  12. 請求項11に記載の転送装置であって、
    装置全体、VRF別、およびレイヤ3インタフェース別に対応する複数のカウンタと、
    隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応をフォワーディングテーブルに導入する場合には、前記装置全体のカウンタ、導入エントリのパケット転送先を求めるための検索条件であるVRFに対応する前記VRF別のカウンタ、および導入エントリの転送先レイヤ3インタフェースに対応する前記レイヤ3インタフェース別のカウンタの値を、1だけそれぞれ加算するカウンタ加算部と、
    隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を導入したことによるエントリをフォワーディングテーブルから削除する場合には、装置全体のカウンタ、削除エントリのパケット転送先を求めるための検索条件であるVRFに対応するVRF別のカウンタ、削除エントリの転送先レイヤ3インタフェースに対応するレイヤ3インタフェース別のカウンタの各カウンタを、1だけそれぞれ減算するカウンタ減算部と
    を備える転送装置。
  13. 請求項12に記載の転送装置であって、
    操作者の操作する端末装置との間で情報のやり取りを行うユーザインタフェース処理部を備え、
    前記ユーザインタフェース処理部は、
    前記複数のカウンタの計数値を取得する命令を前記端末装置から受信した場合に、前記カウンタの値を前記端末装置へ送信するカウンタ値送信部を備える、転送装置。
  14. 請求項12に記載の転送装置であって、
    前記複数のカウンタのそれぞれに対して予め定められた上限値を記憶する上限記憶部を備え、
    前記アドレス解決部は、
    前記複数のカウンタのうちの少なくとも一つにおいて、各カウンタの計数値が、前記カウンタに対応する前記上限値以上である場合に、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応をフォワーディングテーブルに導入を禁止する導入禁止部を備える、転送装置。
  15. 請求項14に記載の転送装置であって、
    操作者の操作する端末装置との間で情報のやり取りを行うユーザインタフェース処理部を備え、
    前記ユーザインタフェース処理部は、
    前記上限記憶部に記憶された各上限値の少なくとも一つを変更する命令を前記端末装置から受信する上限変更命令受信部を備え、
    前記上限設定命令受信部により受信した命令に従って、前記上限記憶部に記憶された各上限値の少なくとも一つの上限値を変更する上限変更部を備える、転送装置。
  16. 仮想専用網(VPN)毎のルーティングテーブルを個別に有する複数のVRF(VPN Routing and Forwarding)間でパケットの転送を行う転送方法であって、
    前記ルーティングテーブルは、
    通信するパケットの宛先を定めたレイヤ3アドレスと、当該ルーティングテーブルが存在する前記VRFを所属VRFとして該所属VRFからの転送先を定めたレイヤ3アドレスとに基づいて、前記通信の経路を定めるテーブルであって、前記所属VRFから他の前記VRFへ前記パケットを転送するエクストラネット通信の経路も併せて定め得る構成であり、
    (a)前記パケットの転送先を求めるための検索条件としてのVRF情報およびレイヤ3アドレスと、前記検索の結果としての転送先レイヤ3インタフェース、転送先レイヤ3アドレスおよび転送先レイヤ2アドレスとを備えるエントリを記録するためのテーブルであって、前記エントリのそれぞれにおいて前記転送先レイヤ3アドレスと前記転送先レイヤ2アドレスについての対応が未解決である場合には前記転送先レイヤ2アドレスを未解決であることを示す旨のデータにて示すレイヤ2・レイヤ3統合フォワーディングテーブルを用意し、前記複数のルーティングテーブルにそれぞれ記録された各経路を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する工程と、
    (b)前記レイヤ2・レイヤ3統合フォワーディングテーブルに記録されているエントリの前記転送先レイヤ3インタフェースにおいて、隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する工程と、
    (c)前記パケットに記録された宛先を定めたレイヤ3アドレスをキーとして前記レイヤ2・レイヤ3統合フォワーディングテーブルを検索することにより前記パケットの転送先を判定する工程と
    を備え、
    前記工程(c)は、
    (c−1)転送先レイヤ3アドレスとしてパケットの宛先レイヤ3アドレスを使用する直結経路であり、かつパケット転送先を求めるための検索条件であるVRF情報と転送先レイヤ3インタフェースが所属するVRFとが異なるエントリが前記レイヤ2・レイヤ3統合フォワーディングテーブルに存在する場合に、前記検索条件であるVRF情報と同一のVRF情報を使用して、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する工程を備える、転送方法。
  17. 仮想専用網(VPN)毎のルーティングテーブルを個別に有する複数のVRF(VPN Routing and Forwarding)間でパケットの転送を行うためのコンピュータプログラムであって、
    前記ルーティングテーブルは、
    通信するパケットの宛先を定めたレイヤ3アドレスと、当該ルーティングテーブルが存在する前記VRFを所属VRFとして該所属VRFからの転送先を定めたレイヤ3アドレスとに基づいて、前記通信の経路を定めるテーブルであって、前記所属VRFから他の前記VRFへ前記パケットを転送するエクストラネット通信の経路も併せて定め得る構成であり、
    コンピュータに、
    (a)前記パケットの転送先を求めるための検索条件としてのVRF情報およびレイヤ3アドレスと、前記検索の結果としての転送先レイヤ3インタフェース、転送先レイヤ3アドレスおよび転送先レイヤ2アドレスとを備えるエントリを記録するためのテーブルであって、前記エントリのそれぞれにおいて前記転送先レイヤ3アドレスと前記転送先レイヤ2アドレスについての対応が未解決である場合には前記転送先レイヤ2アドレスを未解決であることを示す旨のデータにて示すレイヤ2・レイヤ3統合フォワーディングテーブルを用意し、前記複数のルーティングテーブルにそれぞれ記録された各経路を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する機能と、
    (b)前記レイヤ2・レイヤ3統合フォワーディングテーブルに記録されているエントリの前記転送先レイヤ3インタフェースにおいて、隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する機能と、
    (c)前記パケットに記録された宛先を定めたレイヤ3アドレスをキーとして前記レイヤ2・レイヤ3統合フォワーディングテーブルを検索することにより前記パケットの転送先を判定する機能と
    を実現させるとともに、
    前記機能(c)は、
    (c−1)転送先レイヤ3アドレスとしてパケットの宛先レイヤ3アドレスを使用する直結経路であり、かつパケット転送先を求めるための検索条件であるVRF情報と転送先レイヤ3インタフェースが所属するVRFとが異なるエントリが前記レイヤ2・レイヤ3統合フォワーディングテーブルに存在する場合に、前記検索条件であるVRF情報と同一のVRF情報を使用して、前記隣接装置のレイヤ3アドレスとレイヤ2アドレスとの対応を前記レイヤ2・レイヤ3統合フォワーディングテーブルに導入する機能を備える、コンピュータプログラム。
JP2008251280A 2008-09-29 2008-09-29 転送装置、転送方法、およびコンピュータプログラム Active JP4931888B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008251280A JP4931888B2 (ja) 2008-09-29 2008-09-29 転送装置、転送方法、およびコンピュータプログラム
US12/493,360 US8379649B2 (en) 2008-09-29 2009-06-29 Arrangements for constructing a virtual private network (VPN) using forwarding techniques

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008251280A JP4931888B2 (ja) 2008-09-29 2008-09-29 転送装置、転送方法、およびコンピュータプログラム

Publications (3)

Publication Number Publication Date
JP2010087585A true JP2010087585A (ja) 2010-04-15
JP2010087585A5 JP2010087585A5 (ja) 2011-01-20
JP4931888B2 JP4931888B2 (ja) 2012-05-16

Family

ID=42057426

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008251280A Active JP4931888B2 (ja) 2008-09-29 2008-09-29 転送装置、転送方法、およびコンピュータプログラム

Country Status (2)

Country Link
US (1) US8379649B2 (ja)
JP (1) JP4931888B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013009049A (ja) * 2011-06-22 2013-01-10 Alaxala Networks Corp 仮想ネットワーク接続方法、ネットワークシステム及び装置
JP2021508212A (ja) * 2017-12-29 2021-02-25 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited ネットワーク通信方法および装置
JP7366283B2 (ja) 2020-02-28 2023-10-20 新華三技術有限公司 ルート更新方法及び装置

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8565247B2 (en) * 2009-08-19 2013-10-22 Brocade Communications Systems, Inc. Techniques for efficiently updating routing information upon shortest path tree computation
JP5476857B2 (ja) * 2009-08-24 2014-04-23 富士通株式会社 通信装置および統計情報収集方法
US8873563B2 (en) * 2009-09-21 2014-10-28 Brocade Communications Systems, Inc. Techniques for next-hop optimization
US8503464B2 (en) 2011-05-20 2013-08-06 Brocade Communications Systems, Inc. Techniques for efficiently updating routing information
US9100213B1 (en) * 2011-06-08 2015-08-04 Juniper Networks, Inc. Synchronizing VPLS gateway MAC addresses
US8953599B1 (en) * 2012-06-29 2015-02-10 Juniper Networks, Inc. Traffic cut-through within network device having multiple virtual network devices
CN103229468B (zh) * 2012-11-19 2016-05-25 华为技术有限公司 分组交换资源分配方法及设备
DE102013206661A1 (de) * 2013-04-15 2014-10-16 Robert Bosch Gmbh Kommunikationsverfahren zum Übertragen von Nutzdaten sowie entsprechendes Kommunikationssystem
US20160065503A1 (en) * 2014-08-29 2016-03-03 Extreme Networks, Inc. Methods, systems, and computer readable media for virtual fabric routing
CN107211483B (zh) * 2015-01-19 2020-07-24 华为技术有限公司 一种数据通信方法及终端
US10362113B2 (en) * 2015-07-02 2019-07-23 Prasenjit Bhadra Cognitive intelligence platform for distributed M2M/ IoT systems
US10819630B1 (en) 2016-04-20 2020-10-27 Equinix, Inc. Layer three instances for a cloud-based services exchange
US10057162B1 (en) * 2016-06-27 2018-08-21 Amazon Technologies, Inc. Extending Virtual Routing and Forwarding at edge of VRF-aware network
US10129144B1 (en) 2016-06-27 2018-11-13 Amazon Technologies, Inc. Extending virtual routing and forwarding using source identifiers
CN106506372B (zh) * 2016-11-21 2019-07-05 赛特斯信息科技股份有限公司 虚拟化设备中转发表项的编排方法
US10979351B2 (en) * 2017-05-19 2021-04-13 Cisco Technology, Inc. Managing routing tables
US20190116119A1 (en) * 2017-10-17 2019-04-18 Huawei Technologies Co., Ltd. Inter-vrf routing using normal network operation model
US11588731B1 (en) 2020-01-17 2023-02-21 Equinix, Inc. Cloud-to-cloud interface
US11218407B2 (en) * 2020-04-28 2022-01-04 Ciena Corporation Populating capacity-limited forwarding tables in routers to maintain loop-free routing

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001099354A1 (fr) * 2000-06-16 2001-12-27 Fujitsu Limited Dispositif de communication comprenant une fonction d'amenagement vpn
JP2004064182A (ja) * 2002-07-25 2004-02-26 Nippon Telegr & Teleph Corp <Ntt> プライベート網間接続方法およびゲートウェイ制御装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7519731B1 (en) * 2000-12-01 2009-04-14 Juniper Networks, Inc. Comparing configuration information for a data forwarding device
JP4236398B2 (ja) * 2001-08-15 2009-03-11 富士通株式会社 通信方法、通信システム及び通信接続プログラム
US7574738B2 (en) * 2002-11-06 2009-08-11 At&T Intellectual Property Ii, L.P. Virtual private network crossovers based on certificates
US20040223497A1 (en) * 2003-05-08 2004-11-11 Onvoy Inc. Communications network with converged services
KR100546762B1 (ko) * 2003-11-28 2006-01-26 한국전자통신연구원 멀티 프로토콜 레이블 교환망에서 정책 정보를 이용한가상 사이트 설정 장치 및 방법
US7756998B2 (en) * 2004-02-11 2010-07-13 Alcatel Lucent Managing L3 VPN virtual routing tables
US7623535B2 (en) * 2004-09-09 2009-11-24 Cisco Technology, Inc. Routing protocol support for half duplex virtual routing and forwarding instance
US7720031B1 (en) * 2004-10-15 2010-05-18 Cisco Technology, Inc. Methods and devices to support mobility of a client across VLANs and subnets, while preserving the client's assigned IP address
US7551551B2 (en) * 2004-12-10 2009-06-23 Cisco Technology, Inc. Fast reroute (FRR) protection at the edge of a RFC 2547 network
US7688829B2 (en) * 2005-09-14 2010-03-30 Cisco Technology, Inc. System and methods for network segmentation
US7742477B1 (en) * 2006-02-03 2010-06-22 Cisco Technology, Inc. Interconnectivity between autonomous systems
US7616643B2 (en) * 2006-04-19 2009-11-10 Cisco Technology, Inc. Techniques for integrated routing of call circuit signaling and the internet protocol
US7643488B2 (en) * 2006-09-29 2010-01-05 Nortel Networks Limited Method and apparatus for supporting multiple customer provisioned IPSec VPNs
DE602007006447D1 (de) * 2007-05-29 2010-06-24 Packetfront Systems Ab Verfahren zum Verbinden von VLAN-Systemen an andere Netze über einen Router
WO2009124591A1 (en) * 2008-04-10 2009-10-15 Telefonaktiebolaget Lm Ericsson (Publ) Setting up a virtual private network using virtual lan identifiers

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001099354A1 (fr) * 2000-06-16 2001-12-27 Fujitsu Limited Dispositif de communication comprenant une fonction d'amenagement vpn
JP2004064182A (ja) * 2002-07-25 2004-02-26 Nippon Telegr & Teleph Corp <Ntt> プライベート網間接続方法およびゲートウェイ制御装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013009049A (ja) * 2011-06-22 2013-01-10 Alaxala Networks Corp 仮想ネットワーク接続方法、ネットワークシステム及び装置
JP2021508212A (ja) * 2017-12-29 2021-02-25 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited ネットワーク通信方法および装置
JP7289303B2 (ja) 2017-12-29 2023-06-09 アリババ・グループ・ホールディング・リミテッド ネットワーク通信方法および装置
US12010008B2 (en) 2017-12-29 2024-06-11 Alibaba Group Holding Limited Network communication method and apparatus
JP7366283B2 (ja) 2020-02-28 2023-10-20 新華三技術有限公司 ルート更新方法及び装置
US12015587B2 (en) 2020-02-28 2024-06-18 New H3C Technologies Co., Ltd. Methods for updating route, access device, and convergence device

Also Published As

Publication number Publication date
US8379649B2 (en) 2013-02-19
JP4931888B2 (ja) 2012-05-16
US20100080235A1 (en) 2010-04-01

Similar Documents

Publication Publication Date Title
JP4931888B2 (ja) 転送装置、転送方法、およびコンピュータプログラム
JP5398410B2 (ja) ネットワークシステム,パケット転送装置,パケット転送方法及びコンピュータプログラム
EP3401783B1 (en) Method and apparatus for determining virtual machine migration
CN109587065B (zh) 转发报文的方法、装置、交换机、设备及存储介质
EP2214357B1 (en) Method and system for facilitating forwarding a packet in a content-centric network
JP5498102B2 (ja) ネットワークシステム、ネットワーク中継装置、それらの制御方法
CA3104756C (en) Loop avoidance communications method, device, and system
CN104852840A (zh) 一种控制虚拟机之间互访的方法及装置
WO2017028398A1 (zh) 通信处理方法和装置
US20220124024A1 (en) Establishment of method and apparatus for implementing entry backup
WO2017080440A1 (zh) 一种路由表更新方法、evpn控制设备及evpn***
US10897422B2 (en) Hybrid routing table for routing network traffic
US10546018B2 (en) System and method of coalescing writes to a hardware table in a non-disruptive fashion
US8811158B1 (en) Fast reroute for common network routes
JP2845208B2 (ja) アドレス解決装置
US8254383B2 (en) Method and system for routing using multi-stage route entry lookup
JP2008072519A (ja) 機器検索装置、機器検索方法及びプログラム
JP5350333B2 (ja) パケット中継装置及びネットワークシステム
JP4365869B2 (ja) 経路情報変更方法、経路情報変更装置および経路情報変更プログラム
CN113472699A (zh) 一种网络表项同步方法及装置
JP4783751B2 (ja) 中継装置、中継方法および中継プログラム
WO2011064923A1 (ja) 中継装置
JP2018152683A (ja) グループ化装置、通信システム、通信方法、及びプログラム
WO2015146215A1 (ja) ネットワークアドレス変換装置、ネットワークアドレス変換システム、ネットワークアドレス変換方法、及びコンピュータ読み取り可能な記録媒体
JP4558571B2 (ja) 属性通信経路制御装置及び属性通信システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101129

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111226

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120117

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120214

R150 Certificate of patent or registration of utility model

Ref document number: 4931888

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150224

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250