本発明の実施形態の目的、技術的解決策、および利点をより明確にするために、以下で、本発明の実施形態における添付の図面に関連して本発明の実施形態における技術的解決策を明確かつ十分に説明する。明らかに、説明される実施形態は本発明の実施形態の全部ではなく一部にすぎない。本発明の実施形態に基づいて当業者によって難なく得られる他の全ての実施形態は、本発明の保護範囲内に含まれるものとする。
本発明の実施形態は、仮想サブネット内のホストルートの処理方法、関連デバイスおよび通信システムを提供して、複数のPEデバイスが仮想サブネットのいくつかのサイトに存在するシナリオにおいてCEホストルーティングループの形成を最大限まで回避し、これによって、CEホスト間のデータパケット伝送の効率を向上させる。
本発明の実施形態の発明の目的、特徴および利点をより明白にし、かつ、理解することを容易にするために、本発明の実施形態の技術的解決策の明確かつ十分な説明を、本発明の実施形態における添付の図面と組み合わせて以下に述べる。明らかに、以下に説明される実施形態は、本発明の実施形態の全部ではなく、一部であるにすぎない。発明の実施形態に基づいて発明的努力なしで当業者によって得られる他の実施形態の全ては、本発明の保護範囲内に含まれる。
明細書、特許請求の範囲および上述の添付の図面における「第1」、「第2」、「第3」、および「第4」などの用語は、異なる目的を区別するためにのみ使用され、特定の配列を説明するものではない。さらに、「含む」、「有する」という用語、およびこれらの任意の他の変形は、非排他的包含を対象とすべきことを意図されている。例えば、一連のステップまたはユニットを含む処理、方法、システム、製品またはデバイスは、記載されたステップまたはユニットに限定されるものではなく、記載されていないステップまたはユニットを含んでもよい。
詳細な説明を、以下にそれぞれ述べる。
本発明の実施形態の技術的解決策に関わるいくつかの可能な適用シナリオを、まず図1に関連して以下に例示するための一例として挙げる。図1は、本発明の一実施形態において提供されるネットワークアーキテクチャの概略図である。
図1に示すように、例えば、仮想サブネットサイトAは、PEデバイスPE−1と、PEデバイスPE−2と、スイッチングデバイスT1と、CEホスト#001と、CEホスト#002とを含み、ここで、CEホスト#001およびCEホスト#002は、スイッチングデバイスT1を介してPEデバイスPE−1およびPEデバイスPE−2と相互接続される。仮想サブネットサイトBは、PEデバイスPE−4と、スイッチングデバイスT2と、CEホスト#004とを含み、ここで、CEホスト#004は、スイッチングデバイスT2を介してPEデバイスPE−4と相互接続される。仮想サブネットサイトCは、PEデバイスPE−3と、スイッチングデバイスT3と、CEホスト#003とを含み、ここで、CEホスト#003は、スイッチングデバイスT3を介してPEデバイスPE−3と相互接続される。
PEデバイスPE−1、PEデバイスPE−2、PEデバイスPE−3およびPEデバイスPE−4は、インターネットワークを介して相互接続される。
スイッチングデバイスは、スイッチやハブなどであってもよい。
図1に示すアーキテクチャに基づいて、本発明の発明者たちが分析および研究したホストルーティングループの形成のシナリオを以下に説明する。ARPシナリオを、主に例示のために以下に一例として挙げ、NDプロトコルシナリオを同様に行うことができる。
PE−1はARPプロキシ機能を有しているものと仮定する。PE−1は、(例えばPE−4から)CEホスト#004のIPアドレスに対応するCEホストルートを学習した。PE−1が、リモートCEホスト#004のMACアドレスを問い合わせるためにARP要求パケットをローカルCEホスト#001から受信した場合、PE−1はCEホスト#004のIPアドレスに対応するCEホストルートを学習したので、PEデバイスは上述のARP要求パケットに応答するARP応答パケットを送信して、ARP応答パケットを介して、PE−1と関連付けられた仮想ルータに対応するVMACアドレスをCEホスト#001へ返信するARPプロキシとして働くことができる(ここで、PE−1に対応するVMACは、上述のARP応答パケットの送信元MACアドレスとする)。スイッチングデバイスT1が、受信されたARP応答パケットを大量に送信する場合、PE−2は、上述のARP応答パケットを受信することができる。先行技術では、PE−2は、CEホストルーティングテーブルエントリ内の上述のARP応答パケットに収容された送信元IPアドレス(本明細書の送信元IPアドレスはCEホスト#004のIPアドレスである)に対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを直接保存する(すなわち、PE−2は、仮想サブネットサイトA内のローカルCEホストにCEホスト#004を誤ってデフォルトする)。PE−2は、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内の上述の送信元IPアドレスに対応するローカルCEホストルートをさらに分配することができ、PE−2が仮想サブネット内の上述のローカルCEホストルートを分配する挙動は、その他のPEデバイス(例えば、PE−3、PE−5)が誤ったCEホストルートを学習可能にする可能性がある。
PE−2の一連の誤った挙動は、CEホストルーティングループの形成をもたらし、例えば、PE−3(PE−3は上述の誤ったCEホストルートを学習したと仮定する)は、CEホスト#003からCEホスト#004へ送信されるデータパケットをPE−2へ転送する可能性があり、(PE−2は誤ったローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するので)PE−2は、データパケットをスイッチングデバイスT1へ転送する可能性があり、スイッチングデバイスT1は、データパケットをPE−1へ転送し、その後、PE−1はデータパケットをPE−4へ転送し、PE−4は最終的にデータパケットをCEホスト#004へ転送し、データパケットは、数ホップ後にCEホスト#004に到達する。データパケットの最適経路は一般に、データパケットが(PE−1およびPE−2を通過する必要がなく)PE−3を介してPE−4へ直接経路指定され、CEホスト#004に迅速に到達する経路である。データパケットのルーティング経路の長さは、CEホストルーティングループが形成された後に大きく増大する可能性があり、これによってCEホスト間のデータパケット伝送の効率に大きく影響することが分かる。
本発明の実施形態の技術的解決策は、複数のPEデバイスが仮想サブネットのいくつかのノードに存在するシナリオにおいて、CEホストルーティングループの形成を回避し、CEホスト間のデータパケット伝送の転送経路長を最大限まで短縮することによって、CEホスト間のデータパケット伝送の効率を向上させる方法に焦点を当てている。
本発明における仮想サブネット内のホストルートの処理方法の実施形態では、仮想サブネット内のホストルートの処理方法は、第1PEデバイスがアドレス解決のためにパケットを受信し、ここで、第1PEデバイスが存在する仮想サブネットサイトは少なくとも1つの第2PEデバイスをさらに含み、第1PEデバイスが、パケットに収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定し、送信元MACアドレスが仮想MACアドレスであると決定された場合、第1PEデバイスが、パケットに収容された送信元インターネットプロトコルIPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、レイヤ3仮想プライベートネットワークVPNのルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略することを含むことができる。
図2を参照して、図2は、本発明の一実施形態において提供される仮想サブネット内のホストルートの処理方法の概略的流れ図である。本発明の実施形態において提供される仮想サブネット内のホストルートの処理方法は、以下の内容を含むことができる。
201.第1PEデバイスは、アドレス解決のためにパケットを受信し、ここで、第1PEデバイスが存在する仮想サブネットサイトは、少なくとも1つの第2PEデバイスをさらに含む。
第1PEデバイスが受信したアドレス解決のためのパケットは、第2PEデバイスからのパケットであってもよく、また、第1PEデバイスが存在する仮想サブネットサイト内のCEデバイスからのパケットであってもよいことが理解できる。
アドレス解決のためのパケットは、ARPパケットまたはNDプロトコルパケットであってもよく、アドレス解決のためのその他のパケットであってもよい。
202.第1PEデバイスは、パケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定し、送信元MACアドレスが仮想MACアドレスであると決定された場合、パケットに収容された送信元インターネットプロトコルIPアドレスに対応するローカル・カスタマ・エッジ・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、レイヤ3仮想プライベートネットワークVPNのルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略する。
本発明のいくつかの実施形態では、上述のARPパケットは、ARP要求パケットまたはARP応答パケットであってもよい。上述のNDプロトコルパケットは、近隣要請(NS,Neighbor Solicitation)パケット、または近隣広告(NA,Neighbor Advertisement)パケットであってもよい。
さらに、上述の送信元MACアドレスが仮想MACアドレスであると決定された場合、第1PEデバイスは、ARPエントリまたはNDプロトコルエントリを保存しなくてもよく、ここで、上述のARPパケットに収容された送信元IPアドレスと送信元MACアドレスとの間のマッピング関係が、ARPエントリに記録される。送信元IPアドレスと上述のNDプロトコルパケットに収容された送信元MACアドレスとのマッピング関係は、NDプロトコルエントリに記録される。
上述から分かるように、本発明の実施形態の技術的解決策において、アドレス解決のためにパケットを受信するステップの後、第1PEデバイスは、アドレス解決のためにパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかをまず決定し、送信元MACアドレスが仮想MACアドレスであると決定された場合、上述のARPパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリは保存されず、および/または、上述のIPアドレスに対応するローカルCEホストルートは、レイヤ3VPNのルーティングプロトコルに基づく上述の仮想サブネット内に分配されず、そして、第1PEデバイスが存在する仮想サブネットサイトは、少なくとも1つの第2PEデバイスをさらに含む。研究により、送信元MACアドレスが仮想MACであるアドレス解決のためのパケットは、一般に、第1PEデバイスが存在する仮想サブネットサイト内にあって、アドレス解決プロキシとして働く別のPEデバイスによって送信されることが発見された。したがって、第1PEデバイスは、アドレス解決のために受信したパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかを識別かつ決定して、アドレス解決のためのパケットが、第1PEデバイスが存在する仮想サブネットサイト内にあってアドレス解決プロキシとして働く別のPEデバイスによって送信されたかどうかの状況を識別し、このような場合(すなわち、上述の送信元MACアドレスは仮想MACアドレスであると決定された場合)に対応して、第1PEデバイスは、アドレス解決のために上述のパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、上述のIPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく上述の仮想サブネット内に分配しない。このようにして、複数のPEデバイスが仮想サブネットのいくつかのサイトに存在するシナリオにおいてCEホストルーティングループの形成を最大限まで回避することができるように、PEデバイスが誤ったCEホストルートを根本的に保存および/または分配しないようにすることは有用であり、これによって、CEホスト間のデータパケット伝送の効率を向上させ、かつ、ネットワークリソースの浪費を低減する。
本発明のいくつかの実施形態では、PEデバイス(例えば、第1PEデバイスまたは第2PEデバイス)に対応する仮想MACアドレスは、具体的には、PEデバイスと関連付けられた仮想ルータに対応する仮想MACアドレスであってもよい。
PEデバイスが保存したローカル・CE・ホスト・ルーティング・テーブル・エントリは、PEデバイスが存在するサイト内のCEホストを示していることが理解できる。PEデバイスが分配したローカルCEホストルートは、PEデバイスが存在するサイト内のCEホストを示している。本発明の実施形態では、PEデバイスによって保存されたローカル・CE・ホスト・ルーティング・テーブル・エントリは、CEホストのIPアドレスとネクストホップアドレスとを含んでもよい。本発明の実施形態では、PEデバイスによって分配されたローカルCEホストルートは、CEホストのIPアドレスとネクストホップアドレスとを含んでもよい。
本発明のいくつかの実施形態では、仮想サブネット内のホストルートの処理方法は、送信元MACアドレスが仮想MACアドレスではないと決定された場合、上述の第1PEデバイスが、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、またはルーティングプロトコルに基づく仮想サブネット内で、レイヤ3VPNのIPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行することをさらに含むことができる。
本発明のいくつかの他の実施形態では、仮想サブネット内のホストルートの処理方法は、送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがホワイトリストに記録されたMACアドレスのうちのいずれとも異なると決定された場合、上述の第1PEデバイスが、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、レイヤ3VPNのIPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略すること、および/または、送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがホワイトリストに記録されたMACアドレスのうちの1つと同じであると決定された場合、上述の第1PEデバイスが、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、レイヤ3VPNのIPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行することをさらに含むことができる。
ホワイトリスト制御機構がさらに導入されるので、経路分配制御をより柔軟に実施するのに有用であることが理解できる。さらに、上述の第1PEデバイスはまた、命令に従ってホワイトリストを更新する。
本発明のさらにいくつかの他の実施形態では、仮想サブネット内のホストルートの処理方法は、送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがブラックリストに記録されたMACアドレスのうちのいずれとも異なると決定された場合、上述の第1PEデバイスが、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行すること、および/または、送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがブラックリストに記録されたMACアドレスのうちの1つと同じであると決定された場合、上述の第1PEデバイスが、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略することをさらに含むことができる。
ブラックリスト制御機構がさらに導入されるので、経路分配制御をより柔軟に実施するのに有用であることが理解できる。さらに、上述の第1PEデバイスもまた、命令に従ってブラックリストを更新する。
本発明のいくつかの実施形態では、パケットに収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、パケットに収容された送信元MACアドレスが第1PEデバイスに対応する仮想MACアドレスと同じである場合に送信元MACアドレスは仮想MACアドレスであると決定するステップと、送信元MACアドレスが第1PEデバイスに対応する仮想MACアドレスと異なる場合に送信元MACアドレスは仮想MACアドレスではないと決定するステップとを含むことができる。このような例示的シナリオでは、同一の仮想サブネットサイト内のPEデバイスが同一の仮想MACアドレスに対応している(すなわち、同一の仮想ルータと関連付けられた同一の仮想サブネットサイト内のPEデバイス)と仮定されることが、例示のための一例として挙げられる。
本発明のいくつかの他の実施形態では、パケットに収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、上述の第1PEデバイスが少なくとも1つの第2PEデバイスに対応する仮想MACアドレスを問い合わせて、パケットに収容された送信元MACアドレスが少なくとも1つの第2PEデバイスのうちの1つに対応する問い合わせられた仮想MACアドレスと同じである場合に送信元MACアドレスは仮想MACアドレスであると決定し、パケットに収容された送信元MACアドレスが少なくとも1つの第2PEデバイスのうちのいずれか1つに対応する問い合わせられた仮想MACアドレスと異なる場合に送信元MACアドレスは仮想MACアドレスではないと決定することを含むことができる。
第1PEデバイスはまた、その他の方法を介して、パケットに収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定することができると理解できる。
本発明の実施形態の上述の解決策を理解し、かつ実施することを容易にするために、いくつかの具体的な適用シナリオを、以下に例示する一例として挙げる。図3から図8に対応する方法は、図1に示すネットワークアーキテクチャにおいて実施されることを、以下に例示するための一例として挙げる。
図3を参照して、図3は、本発明の別の実施形態において提供される仮想サブネット内のホストルートの処理方法の概略的流れ図である。図3に示すように、本発明の別の実施形態において提供される仮想サブネット内のホストルートの処理方法は、以下の内容を含むことができる。
301.CEホスト#001は、CEホスト#004のMACアドレスを取得するよう要求するために使用されるARP要求パケットq11を送信する。ARP要求パケットq11は、CEホスト#001のIPアドレス(すなわち送信元IPアドレス)およびMACアドレス(すなわち送信元MACアドレス)を収容し、ARP要求パケットq11はまた、CEホスト#004のIPアドレスなどを収容する。
302.PE−1は、ARP要求パケットq11を受信する。本明細書では、PE−1は、CEホスト#004に対応するCEホストルートを現在学習し、その後、PE−1は、ARP要求パケットq11に応答するためのARP応答パケットq12を送信するARPプロキシとして働くことができるものと仮定する。ARP応答パケットq12に収容された送信元MACアドレスは、PE−1と関連付けられた仮想ルータに対応する仮想MACアドレスであり、ARP応答パケットq12に収容された送信元IPアドレスは、CEホスト#004のIPアドレスである。
303.スイッチングデバイスT1は、受信されたARP応答パケットq12を大量に送信する。
PE−2およびCEホスト#001は、上述のARP応答パケットq12を受信してもよい。
304.PE−2は、ARP応答パケットq12に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定する。
ARP応答パケットq12に収容された送信元MACアドレスが仮想MACアドレスであると決定された場合、PE−2は、ARP応答パケットq12に収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、レイヤ3VPNのルーティングプロトコル(例えば、ゲートウェイ・ボーダ・プロトコル)に基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略する。
ARP応答パケットq12に収容された送信元MACアドレスが仮想MACアドレスではないと決定された場合、PE−2は、ARP応答パケットq12に収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行する。
本発明のいくつかの実施形態では、PE−2によって、ARP応答パケットq12に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、ARP応答パケットq12に収容された送信元MACアドレスがPE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと同じである場合に、PE−2が、送信元MACアドレスは仮想MACアドレスであると決定すること、および、送信元MACアドレスがPE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと異なる場合に、PE−2が、送信元MACアドレスは仮想MACアドレスではないと決定することを含むことができる。このようなシナリオでは、同一の仮想サブネットサイト内のPEデバイスが同一の仮想ルータと関連していると仮定されることが、例示のための一例として挙げられる。
本発明のいくつかの他の実施形態では、PE−2によって、ARP応答パケットq12に収容された送信元メディアアクセス制御MACアドレスは仮想MACアドレスであるかどうかを決定するステップは、PE−2が、PE−1と関連付けられた仮想ルータに対応する仮想MACアドレスを問い合わせて、ARP応答パケットq12に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと同じである場合に、PE−2が、ARP応答パケットq12に収容された送信元MACアドレスは仮想MACアドレスであると決定し、ARP応答パケットq12に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと異なる場合に、PE−2が、ARP応答パケットq12に収容された送信元MACアドレスは仮想MACアドレスではないと決定することを含んでもよい。
PE−2はまた、その他の方法を介して、ARP応答パケットq12に収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定することができると理解できる。
上述から分かるように、本発明の実施形態の技術的解決策において、ARP応答パケットを受信するステップの後、PE−2は、ARPパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかをまず決定し、送信元MACアドレスは仮想MACアドレスであると決定した場合、PE−2は、上述のARP応答パケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、上述のIPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配せず、そして、PE−2が存在する仮想サブネットサイトは、少なくとも1つの他のPEデバイスをさらに含む。研究により、送信元MACアドレスが仮想MACであるARP応答パケットは、一般に、PE−2が存在する仮想サブネットサイト内にあって、ARPプロキシとして働く別のPEデバイスによって送信されることが発見された。したがって、PE−2は、受信されたARP応答パケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかを識別かつ決定して、ARP応答パケットが、PE−2が存在する仮想サブネットサイト内にあってARPプロキシとして働く別のPEデバイスによって送信されたかどうかの状況を識別し、このような場合(すなわち、PE−2が、上述の送信元MACアドレスは仮想MACアドレスであると決定した場合)に対応して、PE−2は、上述のARPパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、上述の送信元IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配しない。このようにして、複数のPEデバイスが仮想サブネットのいくつかのサイトに存在するシナリオにおいてCEホストルーティングループの形成を最大限まで回避することができるように、PEデバイスが誤ったCEホストルートを根本的に保存(使用)および/または分配しないようにすることは有用であり、これによって、CEホスト間のデータパケット伝送の効率を向上させ、かつ、ネットワークリソースの浪費を低減する。
図4を参照して、図4は、本発明の別の実施形態において提供される仮想サブネット内のホストルートの処理方法の概略的流れ図である。本発明の別の実施形態において提供される仮想サブネット内のホストルートの処理方法は、以下の内容を含むことができる。
401.PE−1は、ARP要求パケットq21を送信するためのCEホスト#004のARPプロキシとして働く。
ARP要求パケットq21の送信元IPアドレスは、CEホスト#004のIPアドレスである。本明細書では、PE−1は、CEホスト#004に対応するCEホストルートを現在学習し、その後、ARP要求パケットq21に収容された送信元MACアドレスはPE−1に対応する仮想MACアドレスとしてもよいと仮定する。
402.スイッチングデバイスT1は、受信されたARP要求パケットq21を大量に送信する。
PE−2は上述のARP要求パケットq21を受信することができる。
403.PE−2は、ARP要求パケットq21に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定する。
ARP要求パケットq21に収容された送信元MACアドレスは仮想MACアドレスであると決定された場合、PE−2は、ARP要求パケットq21に収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコル(例えば、ゲートウェイ・ボーダ・プロトコル)に基づく仮想サブネット内で分配するステップの少なくとも1つの実行を省略する。
ARP要求パケットq21に収容された送信元MACアドレスは仮想MACアドレスではないと決定された場合、PE−2は、ARP要求パケットq21に収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコル(例えば、ゲートウェイ・ボーダ・プロトコル)に基づく仮想サブネット内で分配するステップの少なくとも1つを実行する。
本発明のいくつかの実施形態では、PE−2によって、ARP要求パケットq21に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、ARP要求パケットq21に収容された送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと同じである場合に、PE−2が、送信元MACアドレスは仮想MACアドレスであると決定することと、送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと異なる場合に、PE−2が、送信元MACアドレスは仮想MACアドレスではないと決定することとを含むことができる。このようなシナリオでは、同一の仮想サブネットサイト内のPEデバイスが同一の仮想ルータと関連していると仮定されることが、例示のための一例として挙げられる。
本発明のいくつかの他の実施形態では、PE−2によって、ARP要求パケットq21に収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、PE−2が、PE−1と関連付けられた仮想ルータに対応する仮想MACアドレスを問い合わせて、ARP要求パケットq21に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと同じである場合に、PE−2が、ARP要求パケットq21に収容された送信元MACアドレスは仮想MACアドレスであると決定し、ARP要求パケットq21に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと異なる場合に、PE−2が、ARP要求パケットq21に収容された送信元MACアドレスは仮想MACアドレスではないと決定することを含むことができる。
PE−2はまた、その他の方法を介して、ARP要求パケットq21に収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定することができると理解できる。
上述から分かるように、本発明の実施形態の技術的解決策において、ARP要求パケットを受信するステップの後、PE−2は、ARPパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかをまず決定し、送信元MACアドレスは仮想MACアドレスであると決定した場合、PE−2は、上述のARP要求パケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、PE−2は、上述のIPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配せず、そして、PE−2が存在する仮想サブネットサイトは、少なくとも1つの他のPEデバイスをさらに含む。研究により、送信元MACアドレスが仮想MACであるARP要求パケットは、一般に、PE−2が存在する仮想サブネットサイト内にあって、ARPプロキシとして働く別のPEデバイスによって送信されることが発見された。したがって、PE−2は、受信されたARP要求パケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかを識別かつ決定して、ARP要求パケットが、PE−2が存在する仮想サブネットサイト内にあってARPプロキシとして働く別のPEデバイスによって送信されたかどうかの状況を識別し、このような場合(すなわち、PE−2が、上述の送信元MACアドレスは仮想MACアドレスであると決定した場合)に対応して、PE−2は、上述のARPパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、上述の送信元IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配しない。このようにして、複数のPEデバイスが仮想サブネットのいくつかのサイトに存在するシナリオにおいてCEホストルーティングループの形成を最大限まで回避することができるように、PEデバイスが誤ったCEホストルートを根本的に保存(使用)および/または分配しないようにすることは有用であり、これによって、CEホスト間のデータパケット伝送の効率を向上させ、かつ、ネットワークリソースの浪費を低減する。
図5を参照して、図5は、本発明の別の実施形態において提供される仮想サブネット内のホストルートの処理方法の概略的流れ図である。本発明の別の実施形態において提供される仮想サブネット内のホストルートの処理方法は、以下の内容を含むことができる。
501.CEホスト#002は、CEホスト#004のMACアドレスを取得するよう要求するために使用されるARP要求パケットq31を送信する。ARP要求パケットq31は、CEホスト#002のIPアドレス(すなわち送信元IPアドレス)およびMACアドレス(すなわち送信元MACアドレス)を収容し、ARP要求パケットq31はまた、CEホスト#004のIPアドレスなどを収容する。
502.スイッチングデバイスT1は、受信されたARP要求パケットq31を大量に送信する。
PE−1およびPE−2は上述のARP要求パケットq31を受信することができる。
503.PE−2は、ARP要求パケットq31に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定する。
ARP要求パケットq31に収容された送信元MACアドレスは仮想MACアドレスであると決定された場合、PE−2は、ARP要求パケットq31に収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコル(例えば、ゲートウェイ・ボーダ・プロトコル)に基づく仮想サブネット内で分配するステップの少なくとも1つの実行を省略する。
ARP要求パケットq31に収容された送信元MACアドレスは仮想MACアドレスではないと決定された場合、PE−2は、ARP要求パケットq31に収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコル(例えば、ゲートウェイ・ボーダ・プロトコル)に基づく仮想サブネット内で分配するステップの少なくとも1つを実行する。
本発明のいくつかの実施形態では、PE−2によって、ARP要求パケットq31に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、ARP要求パケットq31に収容された送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと同じである場合に、PE−2が、送信元MACアドレスは仮想MACアドレスであると決定することと、送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと異なる場合に、PE−2が、送信元MACアドレスは仮想MACアドレスではないと決定することとを含むことができる。このようなシナリオでは、同一の仮想サブネットサイト内のPEデバイスが同一の仮想ルータと関連していると仮定されることが、例示のための一例として挙げられる。
本発明のいくつかの他の実施形態では、PE−2によって、ARP要求パケットq31に収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、PE−2が、PE−1と関連付けられた仮想ルータに対応する仮想MACアドレスを問い合わせて、ARP要求パケットq31に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと同じである場合に、PE−2が、ARP要求パケットq31に収容された送信元MACアドレスは仮想MACアドレスであると決定し、ARP要求パケットq31に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと異なる場合に、PE−2が、ARP要求パケットq31に収容された送信元MACアドレスは仮想MACアドレスではないと決定することを含むことができる。
PE−2はまた、その他の方法を介して、ARP要求パケットq31に収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定することができると理解できる。
504.PE−1は、ARP要求パケットq31を受信する。本明細書では、PE−1は、CEホスト#004に対応するCEホストルートを現在学習し、その後、PE−1は、ARP要求パケットq31に応答するためのARP応答パケットq32を送信するARPプロキシとして働くことができるものと仮定する。ARP応答パケットq32に収容された送信元MACアドレスは、PE−1と関連付けられた仮想ルータに対応する仮想MACアドレスであり、ARP応答パケットq32に収容された送信元IPアドレスは、CEホスト#004のIPアドレスである。
505.スイッチングデバイスT1は、受信されたARP応答パケットq32を大量に送信する。
PE−2およびCEホスト#002は、上述のARP応答パケットq32を受信してもよい。
506.PE−2は、ARP応答パケットq32に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定する。
ARP応答パケットq32に収容された送信元MACアドレスが仮想MACアドレスであると決定された場合、PE−2は、ARP応答パケットq32に収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、レイヤ3VPNのルーティングプロトコル(例えば、ゲートウェイ・ボーダ・プロトコル)に基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略する。
ARP応答パケットq32に収容された送信元MACアドレスが仮想MACアドレスではないと決定された場合、PE−2は、ARP応答パケットq32に収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、レイヤ3VPNのルーティングプロトコル(例えば、ゲートウェイ・ボーダ・プロトコル)に基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行する。
本発明のいくつかの実施形態では、PE−2によって、ARP要求パケットq31に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、ARP要求パケットq31に収容された送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと同じである場合に、PE−2が、送信元MACアドレスは仮想MACアドレスであると決定することと、送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと異なる場合に、PE−2が、送信元MACアドレスは仮想MACアドレスではないと決定することとを含むことができる。このようなシナリオでは、同一の仮想サブネットサイト内のPEデバイスが同一の仮想ルータと関連していると仮定されることが、例示のための一例として挙げられる。
本発明のいくつかの他の実施形態では、PE−2によって、ARP応答パケットq32に収容された送信元メディアアクセス制御MACアドレスは仮想MACアドレスであるかどうかを決定するステップは、PE−2が、PE−1と関連付けられた仮想ルータに対応する仮想MACアドレスを問い合わせて、ARP応答パケットq32に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと同じである場合に、PE−2が、ARP応答パケットq32に収容された送信元MACアドレスは仮想MACアドレスであると決定し、ARP応答パケットq32に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと異なる場合に、PE−2が、ARP応答パケットq32に収容された送信元MACアドレスは仮想MACアドレスではないと決定することを含んでもよい。
PE−2はまた、その他の方法を介して、ARP応答パケットq32に収容された送信元メディアアクセス制御MACアドレスが、仮想MACアドレスであるかどうかを決定することができると理解できる。
上述から分かるように、本発明の実施形態の技術的解決策において、ARPパケットを受信するステップの後、PE−2は、ARPパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかをまず決定し、送信元MACアドレスは仮想MACアドレスであると決定した場合、PE−2は、上述のARPパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、PE−2は、上述のIPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配せず、そして、PE−2が存在する仮想サブネットサイトは、少なくとも1つの他のPEデバイスをさらに含む。研究により、送信元MACアドレスが仮想MACであるARPパケットは、一般に、PE−2が存在する仮想サブネットサイト内にあって、ARPプロキシとして働く別のPEデバイスによって送信されることが発見された。したがって、PE−2は、受信されたARPパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかを識別かつ決定して、ARPパケットが、PE−2が存在する仮想サブネットサイト内でARPプロキシとして働く別のPEデバイスによって送信されたかどうかの状況を識別し、このような場合(すなわち、PE−2が、上述の送信元MACアドレスは仮想MACアドレスであると決定する)に対応して、PE−2は、上述のARPパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、上述の送信元IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配しない。このようにして、複数のPEデバイスが仮想サブネットのいくつかのサイトに存在するシナリオにおいてCEホストルーティングループの形成を最大限まで回避することができるように、PEデバイスが誤ったCEホストルートを根本的に保存(使用)および/または分配しないようにすることは有用であり、これによって、CEホスト間のデータパケット伝送の効率を向上させ、かつ、ネットワークリソースの浪費を低減する。
図6を参照して、図6は、本発明の別の実施形態において提供される仮想サブネット内のホストルートの処理方法の概略的流れ図である。図6に示すように、本発明の別の実施形態において提供される仮想サブネット内のホストルートの処理方法は、以下の内容を含むことができる。
601.CEホスト#001は、CEホスト#004のMACアドレスを取得するよう要求するために使用されるARP要求パケットq11を送信する。ARP要求パケットq11は、CEホスト#001のIPアドレス(すなわち送信元IPアドレス)およびMACアドレス(すなわち送信元MACアドレス)を収容し、ARP要求パケットq11はまた、CEホスト#004のIPアドレスなどを収容する。
602.PE−1は、ARP要求パケットq11を受信する。本明細書では、PE−1は、CEホスト#004に対応するCEホストルートを現在学習し、その後、PE−1は、ARP要求パケットq11に応答するためのARP応答パケットq12を送信するARPプロキシとして働くことができるものと仮定する。ARP応答パケットq12に収容された送信元MACアドレスは、PE−1と関連付けられた仮想ルータに対応する仮想MACアドレスであり、ARP応答パケットq12に収容された送信元IPアドレスは、CEホスト#004のIPアドレスである。
603.スイッチングデバイスT1は、受信されたARP応答パケットq12を大量に送信する。
PE−2およびCEホスト#001は、上述のARP応答パケットq12を受信してもよい。
604.PE−2は、ARP応答パケットq12に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定する。
そうでない場合、ステップ605が行われる。
ARP応答パケットq12に収容された送信元MACアドレスが仮想MACアドレスであると決定された場合、PE−2は、ARP応答パケットq12に収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、レイヤ3VPNのルーティングプロトコル(例えば、ゲートウェイ・ボーダ・プロトコル)に基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略する。
605.ARP応答パケットq12に収容された送信元MACアドレスが仮想MACアドレスではないと決定された場合、PE−2は、ARP応答パケットq12に収容された送信元MACアドレスが、ホワイトリストに記録されたMACアドレスのうちのいずれとも異なるかどうかを決定する。
ARP応答パケットq12に収容された送信元MACアドレスが、ホワイトリストに記録されたMACアドレスのうちのいずれとも異なると決定された場合、PE−2は、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネットで分配するステップの少なくとも1つの実行を省略することができる。
ARP応答パケットq12に収容された送信元MACアドレスが、ホワイトリストに記録されたMACアドレスのうちのいずれか1つと同じであると決定された場合、PE−2は、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネットで分配するステップの少なくとも1つを実行することができる。
ホワイトリスト制御機構がさらに導入されるので、経路分配制御をより柔軟に実施するのに有用であることが理解できる。さらに、上述のPE−2はまた、命令に従ってホワイトリストを更新する。
本発明のいくつかの実施形態では、PE−2によって、ARP要求パケットq21に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、ARP要求パケットq21に収容された送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと同じである場合に、PE−2が、送信元MACアドレスは仮想MACアドレスであると決定することと、送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと異なる場合に、PE−2が、送信元MACアドレスは仮想MACアドレスではないと決定することとを含むことができる。このようなシナリオでは、同一の仮想サブネットサイト内のPEデバイスが同一の仮想ルータと関連していると仮定されることが、例示のための一例として挙げられる。
本発明のいくつかの他の実施形態では、PE−2によって、ARP要求パケットq21に収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、PE−2が、PE−1と関連付けられた仮想ルータに対応する仮想MACアドレスを問い合わせて、ARP要求パケットq21に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと同じである場合に、PE−2が、ARP要求パケットq21に収容された送信元MACアドレスは仮想MACアドレスであると決定し、ARP要求パケットq21に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと異なる場合に、PE−2が、ARP要求パケットq21に収容された送信元MACアドレスは仮想MACアドレスではないと決定することを含むことができる。
PE−2はまた、その他の方法を介して、ARP要求パケットq21に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定することができると理解できる。
上述から分かるように、本発明の実施形態の技術的解決策において、ARP応答パケットを受信するステップの後、PE−2は、ARPパケットに収容された送信元MACアドレス仮想MACアドレスであるかどうかをまず決定し、送信元MACアドレスは仮想MACアドレスであると決定した場合、PE−2は、上述のARP応答パケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、PE−2は、上述のIPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配せず、そして、PE−2が存在する仮想サブネットサイトは、少なくとも1つの他のPEデバイスをさらに含む。研究により、送信元MACアドレスが仮想MACであるARP応答パケットは、一般に、PE−2が存在する仮想サブネットサイト内にあって、ARPプロキシとして働く別のPEデバイスによって送信されることが発見された。したがって、PE−2は、受信されたARP応答パケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかを識別かつ決定して、ARP応答パケットが、PE−2が存在する仮想サブネットサイト内でARPプロキシとして働く別のPEデバイスによって送信されたかどうかの状況を識別し、このような場合(すなわち、PE−2が、上述の送信元MACアドレスは仮想MACアドレスであると決定した場合)に対応して、PE−2は、上述のARPパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、上述の送信元IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配しない。このようにして、複数のPEデバイスが仮想サブネットのいくつかのサイトに存在するシナリオにおいてCEホストルーティングループの形成を最大限まで回避することができるように、PEデバイスが誤ったCEホストルートを根本的に保存(使用)および/または分配しないようにすることは有用であり、これによって、CEホスト間のデータパケット伝送の効率を向上させ、かつ、ネットワークリソースの浪費を低減する。
図7を参照して、図7は、本発明の別の実施形態において提供される仮想サブネット内のホストルートの処理方法の概略的流れ図である。本発明の別の実施形態において提供される仮想サブネット内のホストルートの処理方法は、以下の内容を含むことができる。
701.PE−1は、ARP要求パケットq21を送信するためのCEホスト#004のARPプロキシとして働く。
ARP要求パケットq21の送信元IPアドレスは、CEホスト#004のIPアドレスである。本明細書では、PE−1は、CEホスト#004に対応するCEホストルートを現在学習し、その後、ARP要求パケットq21に収容された送信元MACアドレスはPE−1に対応する仮想MACアドレスとしてもよいと仮定する。
702.スイッチングデバイスT1は、受信されたARP要求パケットq21を大量に送信する。
PE−2は上述のARP要求パケットq21を受信することができる。
703.PE−2は、ARP要求パケットq21に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定する。
そうでない場合、ステップ704が行われる。
ARP要求パケットq21に収容された送信元MACアドレスが仮想MACアドレスであると決定された場合、PE−2は、ARP応答パケットq12に収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、レイヤ3VPNのルーティングプロトコル(例えば、ゲートウェイ・ボーダ・プロトコル)に基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略する。
704.ARP要求パケットq21に収容された送信元MACアドレスが仮想MACアドレスではないと決定された場合、PE−2は、ARP要求パケットq21に収容された送信元MACアドレスが、ホワイトリストに記録されたMACアドレスのうちのいずれとも異なるかどうかを決定する。
ARP要求パケットq21に収容された送信元MACアドレスが、ホワイトリストに記録されたMACアドレスのうちのいずれとも異なると決定された場合、PE−2は、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネットで分配するステップの少なくとも1つの実行を省略することができる。
ARP要求パケットq21に収容された送信元MACアドレスが、ホワイトリストに記録されたMACアドレスのうちのいずれか1つと同じであると決定された場合、PE−2は、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネットで分配するステップの少なくとも1つを実行することができる。
ホワイトリスト制御機構がさらに導入されるので、経路分配制御をより柔軟に実施するのに有用であることが理解できる。さらに、上述のPE−2はまた、命令に従ってホワイトリストを更新する。
本発明のいくつかの実施形態では、PE−2によって、ARP要求パケットq21に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、ARP要求パケットq21に収容された送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと同じである場合に、PE−2が、送信元MACアドレスは仮想MACアドレスであると決定することと、送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと異なる場合に、PE−2が、送信元MACアドレスは仮想MACアドレスではないと決定することとを含むことができる。このようなシナリオでは、同一の仮想サブネットサイト内のPEデバイスが同一の仮想ルータと関連していると仮定されることが、例示のための一例として挙げられる。
本発明のいくつかの他の実施形態では、PE−2によって、ARP要求パケットq21に収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、PE−2が、PE−1と関連付けられた仮想ルータに対応する仮想MACアドレスを問い合わせて、ARP要求パケットq21に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと同じである場合に、PE−2が、ARP要求パケットq21に収容された送信元MACアドレスは仮想MACアドレスであると決定し、ARP要求パケットq21に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと異なる場合に、PE−2が、ARP要求パケットq21に収容された送信元MACアドレスは仮想MACアドレスではないと決定することを含むことができる。
PE−2はまた、その他の方法を介して、ARP要求パケットq21に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定することができると理解できる。
上述から分かるように、本発明の実施形態の技術的解決策において、ARP要求パケットを受信するステップの後、PE−2は、ARPパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかをまず決定し、送信元MACアドレスは仮想MACアドレスであると決定した場合、PE−2は、上述のARP要求パケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、PE−2は、上述のIPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配せず、そして、PE−2が存在する仮想サブネットサイトは、少なくとも1つの他のPEデバイスをさらに含む。研究により、送信元MACアドレスが仮想MACであるARP要求パケットは、一般に、PE−2が存在する仮想サブネットサイト内にあって、ARPプロキシとして働く別のPEデバイスによって送信されることが発見された。したがって、PE−2は、受信されたARP要求パケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかを識別かつ決定して、ARP要求パケットが、PE−2が存在する仮想サブネットサイト内にあってARPプロキシとして働く別のPEデバイスによって送信されたかどうかの状況を識別し、このような場合(すなわち、PE−2が、上述の送信元MACアドレスは仮想MACアドレスであると決定した場合)に対応して、PE−2は、上述のARPパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、上述の送信元IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配しない。このようにして、複数のPEデバイスが仮想サブネットのいくつかのサイトに存在するシナリオにおいてCEホストルーティングループの形成を最大限まで回避することができるように、PEデバイスが誤ったCEホストルートを根本的に保存(使用)および/または分配しないようにすることは有用であり、これによって、CEホスト間のデータパケット伝送の効率を向上させ、かつ、ネットワークリソースの浪費を低減する。
図8を参照して、図8は、本発明の別の実施形態において提供される仮想サブネット内のホストルートの処理方法の概略的流れ図である。本発明の別の実施形態において提供される仮想サブネット内のホストルートの処理方法は、以下の内容を含むことができる。
801.CEホスト#002は、CEホスト#004のMACアドレスを取得するよう要求するために使用されるARP要求パケットq31を送信する。ARP要求パケットq31は、CEホスト#002のIPアドレス(すなわち送信元IPアドレス)およびMACアドレス(すなわち送信元MACアドレス)を収容し、ARP要求パケットq31はまた、CEホスト#004のIPアドレスなどを収容する。
802.スイッチングデバイスT1は、受信されたARP要求パケットq31を大量に送信する。
PE−1およびPE−2は上述のARP要求パケットq31を受信することができる。
803.PE−2は、ARP要求パケットq31に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定する。
そうでない場合、ステップ804が行われる。
ARP応答パケットq31に収容された送信元MACアドレスが仮想MACアドレスであると決定された場合、PE−2は、ARP応答パケットq31に収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、レイヤ3VPNのルーティングプロトコル(例えば、ゲートウェイ・ボーダ・プロトコル)に基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略する。
804.ARP要求パケットq31に収容された送信元MACアドレスが仮想MACアドレスではないと決定された場合、PE−2は、ARP要求パケットq31に収容された送信元MACアドレスが、ホワイトリストに記録されたMACアドレスのうちのいずれとも異なるかどうかを決定する。
ARP要求パケットq31に収容された送信元MACアドレスが、ホワイトリストに記録されたMACアドレスのうちのいずれとも異なると決定された場合、PE−2は、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネットで分配するステップの少なくとも1つの実行を省略することができる。
ARP要求パケットq31に収容された送信元MACアドレスが、ホワイトリストに記録されたMACアドレスのうちのいずれか1つと同じであると決定された場合、PE−2は、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネットで分配するステップの少なくとも1つを実行することができる。
ホワイトリスト制御機構がさらに導入されるので、経路分配制御をより柔軟に実施するのに有用であることが理解できる。さらに、上述のPE−2はまた、命令に従ってホワイトリストを更新する。
本発明のいくつかの実施形態では、PE−2によって、ARP要求パケットq31に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、ARP要求パケットq31に収容された送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと同じである場合に、PE−2が、送信元MACアドレスは仮想MACアドレスであると決定することと、送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと異なる場合に、PE−2が、送信元MACアドレスは仮想MACアドレスではないと決定することとを含むことができる。このようなシナリオでは、同一の仮想サブネットサイト内のPEデバイスが同一の仮想ルータと関連していると仮定されることが、例示のための一例として挙げられる。
本発明のいくつかの他の実施形態では、PE−2によって、ARP要求パケットq31に収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、PE−2が、PE−1と関連付けられた仮想ルータに対応する仮想MACアドレスを問い合わせて、ARP要求パケットq31に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと同じである場合に、PE−2が、ARP要求パケットq31に収容された送信元MACアドレスは仮想MACアドレスであると決定し、ARP要求パケットq31に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと異なる場合に、PE−2が、ARP要求パケットq31に収容された送信元MACアドレスは仮想MACアドレスではないと決定することを含むことができる。
PE−2はまた、その他の方法を介して、ARP要求パケットq31に収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定することができると理解できる。
805.PE−1は、ARP要求パケットq31を受信する。本明細書では、PE−1は、CEホスト#004に対応するCEホストルートを現在学習し、その後、PE−1は、ARP要求パケットq31に応答するためのARP応答パケットq32を送信するARPプロキシとして働くことができるものと仮定する。ARP応答パケットq32に収容された送信元MACアドレスは、PE−1と関連付けられた仮想ルータに対応する仮想MACアドレスであり、ARP応答パケットq32に収容された送信元IPアドレスは、CEホスト#004のIPアドレスである。
806.スイッチングデバイスT1は、受信されたARP応答パケットq32を大量に送信する。
PE−2およびCEホスト#002は、上述のARP応答パケットq32を受信してもよい。
807.PE−2は、ARP応答パケットq32に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定する。
そうでない場合、ステップ808が行われる。
ARP応答パケットq31に収容された送信元MACアドレスが仮想MACアドレスであると決定された場合、PE−2は、ARP応答パケットq31に収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、レイヤ3VPNのルーティングプロトコル(例えば、ゲートウェイ・ボーダ・プロトコル)に基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略する。
808.ARP応答パケットq32に収容された送信元MACアドレスが仮想MACアドレスではないと決定された場合、PE−2は、ARP応答パケットq32に収容された送信元MACアドレスが、ホワイトリストに記録されたMACアドレスのうちのいずれとも異なるかどうかを決定する。
ARP応答パケットq32に収容された送信元MACアドレスが、ホワイトリストに記録されたMACアドレスのうちのいずれとも異なると決定された場合、PE−2は、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネットで分配するステップの少なくとも1つの実行を省略することができる。
ARP応答パケットq32に収容された送信元MACアドレスが、ホワイトリストに記録されたMACアドレスのうちのいずれか1つと同じであると決定された場合、PE−2は、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネットで分配するステップの少なくとも1つを実行することができる。
本発明のいくつかの実施形態では、PE−2によって、ARP応答パケットq32に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定するステップは、ARP応答パケットq32に収容された送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと同じである場合に、PE−2が、送信元MACアドレスは仮想MACアドレスであると決定すること、および、送信元MACアドレスが、PE−2と関連付けられた仮想ルータに対応する仮想MACアドレスと異なる場合に、PE−2が、送信元MACアドレスは仮想MACアドレスではないと決定することを含むことができる。このようなシナリオでは、同一の仮想サブネットサイト内のPEデバイスが同一の仮想ルータと関連していると仮定されることが、例示のための一例として挙げられる。
本発明のいくつかの他の実施形態では、PE−2によって、ARP応答パケットq32に収容された送信元メディアアクセス制御MACアドレスは仮想MACアドレスであるかどうかを決定するステップは、PE−2が、PE−1と関連付けられた仮想ルータに対応する仮想MACアドレスを問い合わせて、ARP応答パケットq32に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと同じである場合に、PE−2が、ARP応答パケットq32に収容された送信元MACアドレスは仮想MACアドレスであると決定し、ARP応答パケットq32に収容された送信元MACアドレスが、PE−1と関連付けられた仮想ルータに対応する問い合わせられた仮想MACアドレスと異なる場合に、PE−2が、ARP応答パケットq32に収容された送信元MACアドレスは仮想MACアドレスではないと決定することを含んでもよい。
PE−2はまた、その他の方法を介して、ARP応答パケットq32に収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定することができると理解できる。
上述から分かるように、本発明の実施形態の技術的解決策において、ARPパケットを受信するステップの後、PE−2は、ARPパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかをまず決定し、送信元MACアドレスは仮想MACアドレスであると決定した場合、PE−2は、上述のARPパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、PE−2は、上述の送信元IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配せず、そして、PE−2が存在する仮想サブネットサイトは、少なくとも1つの他のPEデバイスをさらに含む。研究により、送信元MACアドレスが仮想MACであるARPパケットは、一般に、第1PEが存在する仮想サブネットサイト内にあって、ARPプロキシとして働く別のPEデバイスによって送信されることが発見された。したがって、PE−2は、受信されたARPパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかを識別かつ決定して、ARPパケットが、PE−2が存在する仮想サブネットサイト内にあってARPプロキシとして働く別のPEデバイスによって送信されたかどうかの状況を識別し、このような場合(すなわち、PE−2が、上述の送信元MACアドレスは仮想MACアドレスであると決定する)に対応して、PE−2は、上述のARPパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、上述の送信元IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配しない。このようにして、複数のPEデバイスが仮想サブネットのいくつかのサイトに存在するシナリオにおいてCEホストルーティングループの形成を最大限まで回避することができるように、PEデバイスが誤ったCEホストルートを根本的に保存(使用)および/または分配しないようにすることは有用であり、これによって、CEホスト間のデータパケット伝送の効率を向上させ、かつ、ネットワークリソースの浪費を低減する。
ARPシナリオを、主に図3から図8に対応する実施形態における例示のために以下に一例として挙げ、NDプロトコルシナリオを同様に行うことができることが理解できる。NSパケットはARP要求パケットと同様であり、NAパケットはARP応答パケットと同様である。図3から図8に対応する実施形態におけるPE−2は、図2に対応する実施形態における第1PEデバイスと同様である。
本発明の実施形態はまた、上述の解決策を実施するための関連デバイスを提供している。
図9を参照して、本発明の実施形態は、受信部910と処理部920とを含むプロバイダエッジデバイス900を提供している。
受信部910は、アドレス解決のためにパケットを受信するように構成され、ここで、プロバイダエッジデバイスが存在する仮想サブネットサイトは、少なくとも1つの第2プロバイダエッジデバイスをさらに含む。
受信部910が受信したアドレス解決のためのパケットは、第2PEデバイスからのパケットであってもよく、また、プロバイダエッジデバイス900が存在する仮想サブネットサイト内のCEデバイスからのパケットであってもよいことが理解できる。
アドレス解決のためのパケットは、ARPパケットまたはNDプロトコルパケットであってもよく、アドレス解決のためのその他のパケットであってもよい。
本発明のいくつかの実施形態では、上述のARPパケットは、ARP要求パケットまたはARP応答パケットであってもよい。上述のNDプロトコルパケットは、NSパケットまたはNAパケットであってもよい。
処理部920は、パケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかを決定し、送信元MACアドレスが仮想MACアドレスであると決定された場合、パケットに収容された送信元IPアドレスに対応するローカル・カスタマ・エッジ・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、および、IPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内で分配するステップの少なくとも1つの実行を省略するように構成される。
さらに、上述の送信元MACアドレスが仮想MACアドレスであると決定された場合、処理部920は、ARPエントリまたはNDプロトコルエントリを保存しなくてもよく、ここで、上述のARPパケットに収容された送信元IPアドレスと送信元MACアドレスとの間のマッピング関係が、ARPエントリに記録される。送信元IPアドレスと上述のNDプロトコルパケットに収容された送信元MACアドレスとのマッピング関係は、NDプロトコルエントリに記録される。
本発明のいくつかの実施形態では、処理部920は、送信元MACアドレスが仮想MACアドレスではないと決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、レイヤ3VPNのIPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行するようにさらに構成される。
本発明のいくつかの実施形態では、処理部920は、
送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがホワイトリストに記録されたMACアドレスのうちのいずれとも異なると決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略し、
および/または
送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがホワイトリストに記録されたMACアドレスのうちの1つと同じであると決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行する
ようにさらに構成される。
本発明のいくつかの実施形態では、処理部920は、
送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがブラックリストに記録されたMACアドレスのうちのいずれとも異なると決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行する、
および/または
送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがブラックリストに記録されたMACアドレスのうちの1つと同じであると決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略する
ようにさらに構成される。
本発明のいくつかの実施形態では、パケットに収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定することの態様において、処理部920は、具体的には、パケットに収容された送信元MACアドレスがプロバイダエッジデバイスに対応する仮想MACアドレスと同じである場合に、送信元MACアドレスは仮想MACアドレスであると決定し、送信元MACアドレスがプロバイダエッジデバイスに対応する仮想MACアドレスと異なる場合に、送信元MACアドレスは仮想MACアドレスではないと決定するように構成される。
本発明のいくつかの実施形態では、パケットに収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定することの態様において、処理部920は、具体的には、少なくとも1つの第2プロバイダエッジデバイスに対応する仮想MACアドレスを問い合わせて、パケットに収容された送信元MACアドレスが、少なくとも1つの第2プロバイダエッジデバイスのうちの1つに対応する問い合わせられた仮想MACアドレスと同じである場合に、送信元MACアドレスは仮想MACアドレスであると決定し、パケットに収容された送信元MACアドレスが、少なくとも1つの第2プロバイダエッジデバイスのうちのいずれか1つに対応する問い合わせられた仮想MACアドレスと異なる場合に、送信元MACアドレスは仮想MACアドレスではないと決定するように構成される。
本発明のいくつかの実施形態では、PEデバイス(例えば、プロバイダエッジデバイス900または第2PEデバイス)に対応する仮想MACアドレスは、具体的には、PEデバイスと関連付けられた仮想ルータに対応する仮想MACアドレスであってもよい。
PEデバイスが保存したローカル・CE・ホスト・ルーティング・テーブル・エントリは、PEデバイスが存在するサイト内のCEホストを示していることが理解できる。PEデバイスが分配したローカルCEホストルートは、PEデバイスが存在するサイト内のCEホストを示している。本発明の実施形態では、PEデバイスによって保存されたローカル・CE・ホスト・ルーティング・テーブル・エントリは、CEホストのIPアドレスとネクストホップアドレスとを含んでもよい。本発明の実施形態では、PEデバイスによって分配されたローカルCEホストルートは、CEホストのIPアドレスとネクストホップアドレスとを含んでもよい。
本実施形態のプロバイダエッジデバイス900の機能モジュールの機能は、具体的には、上述の方法実施形態における方法によって実施されてもよく、その具体的な実施プロセスは、上述の方法実施形態の関連する説明を参照することができ、本明細書において詳細に述べることはないことが理解できる。
上述から分かるように、本発明の実施形態の技術的解決策において、アドレス解決のためにパケットを受信するステップの後、PEデバイス900は、アドレス解決のためにパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかをまず決定し、送信元MACアドレスが仮想MACアドレスであると決定された場合、上述のARPパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリは保存されず、および/または、上述のIPアドレスに対応するローカルCEホストルートは、レイヤ3VPNのルーティングプロトコルに基づく上述の仮想サブネット内に分配されず、そして、PEデバイス900が存在する仮想サブネットサイトは、少なくとも1つの第2PEデバイスをさらに含む。研究により、送信元MACアドレスが仮想MACであるアドレス解決のためのパケットは、一般に、第1PEが存在する仮想サブネットサイト内にあって、アドレス解決プロキシとして働く別のPEデバイスによって送信されることが発見された。したがって、PEデバイス900は、アドレス解決のために受信したパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかを識別かつ決定して、アドレス解決のためのパケットが、第1PEデバイスが存在する仮想サブネットサイト内にあってアドレス解決プロキシとして働く別のPEデバイスによって送信されたかどうかの状況を識別し、このような場合(すなわち、上述の送信元MACアドレスは仮想MACアドレスであると決定された場合)に対応して、PEデバイス900は、アドレス解決のために上述のパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、上述のIPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配しない。このようにして、複数のPEデバイスが仮想サブネットのいくつかのサイトに存在するシナリオにおいてCEホストルーティングループの形成を最大限まで回避することができるように、PEデバイスが誤ったCEホストルートを根本的に保存および/または分配しないようにすることは有用であり、これによって、CEホスト間のデータパケット伝送の効率を向上させ、かつ、ネットワークリソースの浪費を低減する。
図10を参照して、図10は、本発明の一実施形態において提供されるPEデバイス1000の概略図である。PEデバイス1000は、少なくとも1つのバス1001と、バス1001と接続された少なくとも1つのプロセッサ1002と、バス1001と接続された少なくとも1つのメモリ1003とを含むことができる。
プロセッサ1002は、アドレス解決のためにパケットを受信するために、メモリ1003に記憶されたコードをバス1001を介して呼び出し、パケットに収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定し、送信元MACアドレスが仮想MACアドレスであると決定された場合、パケットに収容された送信元インターネットプロトコルIPアドレスに対応するローカル・カスタマ・エッジ・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、レイヤ3仮想プライベートネットワークVPNのルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略する。PEデバイス1000が存在する仮想サブネットサイトは、少なくとも1つの第2プロバイダエッジデバイスをさらに含む。
アドレス解決のためのパケットは、ARPパケットまたはNDプロトコルパケットであってもよく、アドレス解決のためのその他のパケットであってもよい。
さらに、上述の送信元MACアドレスが仮想MACアドレスであると決定された場合、プロセッサ1002は、ARPエントリまたはNDプロトコルエントリを保存しなくてもよく、ここで、上述のARPパケットに収容された送信元IPアドレスと送信元MACアドレスとの間のマッピング関係が、ARPエントリに記録される。送信元IPアドレスと上述のNDプロトコルパケットに収容された送信元MACアドレスとのマッピング関係は、NDプロトコルエントリに記録される。
本発明のいくつかの実施形態では、プロセッサ1002は、送信元MACアドレスが仮想MACアドレスではないと決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行するようにさらに構成される。
本発明のいくつかの実施形態では、プロセッサ1002は、
送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがホワイトリストに記録されたMACアドレスのうちのいずれとも異なると決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略し、
および/または
送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがホワイトリストに記録されたMACアドレスのうちの1つと同じであると決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行する
ようにさらに構成される。
本発明のいくつかの実施形態では、プロセッサ1002は、
送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがブラックリストに記録されたMACアドレスのうちのいずれとも異なると決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行する、
および/または
送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがブラックリストに記録されたMACアドレスのうちの1つと同じであると決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略する
ようにさらに構成される。
本発明のいくつかの実施形態では、パケットに収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定するステップの態様において、プロセッサ1002は、具体的には、パケットに収容された送信元MACアドレスがプロバイダエッジデバイスに対応する仮想MACアドレスと同じである場合に、送信元MACアドレスは仮想MACアドレスであると決定し、送信元MACアドレスがプロバイダエッジデバイスに対応する仮想MACアドレスと異なる場合に、送信元MACアドレスは仮想MACアドレスではないと決定するように構成される。
本発明のいくつかの実施形態では、パケットに収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定するステップの態様において、プロセッサ1002は、具体的には、少なくとも1つの第2プロバイダエッジデバイスに対応する仮想MACアドレスを問い合わせて、パケットに収容された送信元MACアドレスが、少なくとも1つの第2プロバイダエッジデバイスのうちの1つに対応する問い合わせられた仮想MACアドレスと同じである場合に、送信元MACアドレスは仮想MACアドレスであると決定し、パケットに収容された送信元MACアドレスが、少なくとも1つの第2プロバイダエッジデバイスのうちのいずれか1つに対応する問い合わせられた仮想MACアドレスと異なる場合に、送信元MACアドレスは仮想MACアドレスではないと決定するように構成される。
本発明のいくつかの実施形態では、PEデバイス(例えば、プロバイダエッジデバイス1000または第2PEデバイス)に対応する仮想MACアドレスは、具体的には、PEデバイスと関連付けられた仮想ルータに対応する仮想MACアドレスであってもよい。
PEデバイスが保存したローカル・CE・ホスト・ルーティング・テーブル・エントリは、PEデバイスが存在するサイト内のCEホストを示していることが理解できる。PEデバイスが分配したローカルCEホストルートは、PEデバイスが存在するサイト内のCEホストを示している。本発明の実施形態では、PEデバイスによって保存されたローカル・CE・ホスト・ルーティング・テーブル・エントリは、CEホストのIPアドレスとネクストホップアドレスとを含んでもよい。本発明の実施形態では、PEデバイスによって分配されたローカルCEホストルートは、CEホストのIPアドレスとネクストホップアドレスとを含んでもよい。
本実施形態のプロバイダエッジデバイス1000の機能モジュールの機能は、具体的には、上述の方法実施形態における方法によって実施されてもよく、その具体的な実施プロセスは、上述の方法実施形態の関連する説明を参照することができ、本明細書において詳細に述べることはないことが理解できる。
上述から分かるように、本発明の実施形態の技術的解決策において、アドレス解決のためにパケットを受信するステップの後、PEデバイス1000は、アドレス解決のためにパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかをまず決定し、送信元MACアドレスが仮想MACアドレスであると決定された場合、上述のARPパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリは保存されず、および/または、上述のIPアドレスに対応するローカルCEホストルートは、レイヤ3VPNのルーティングプロトコルに基づく上述の仮想サブネット内に分配されず、そして、PEデバイス1000が存在する仮想サブネットサイトは、少なくとも1つの第2PEデバイスをさらに含む。研究により、送信元MACアドレスが仮想MACであるアドレス解決のためのパケットは、一般に、第1PEが存在する仮想サブネットサイト内にあって、アドレス解決プロキシとして働く別のPEデバイスによって送信されることが発見された。したがって、PEデバイス1000は、アドレス解決のために受信したパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかを識別かつ決定して、アドレス解決のためのパケットが、第1PEデバイスが存在する仮想サブネットサイト内にあってアドレス解決プロキシとして働く別のPEデバイスによって送信されたかどうかの状況を識別し、このような場合(すなわち、上述の送信元MACアドレスは仮想MACアドレスであると決定された場合)に対応して、PEデバイス1000は、アドレス解決のために上述のパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、PEデバイス1000は、上述のIPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配しない。このようにして、複数のPEデバイスが仮想サブネットのいくつかのサイトに存在するシナリオにおいてCEホストルーティングループの形成を最大限まで回避することができるように、PEデバイスが誤ったCEホストルートを根本的に保存および/または分配しないようにすることは有用であり、これによって、CEホスト間のデータパケット伝送の効率を向上させ、かつ、ネットワークリソースの浪費を低減する。
図11を参照して、図11は、本発明の別の実施形態において提供されるPEデバイス1100の構造のブロック図である。PEデバイス1100は、少なくとも1つのプロセッサ1101と、少なくとも1つのネットワークインタフェース1104または他のユーザインタフェース1103と、メモリ1105と、少なくとも1つの通信バス1102とを含むことができる。通信バス1102は、これらの構成要素間の接続通信を実施するように構成されている。任意選択で、PEデバイス1100はユーザインタフェース1103を含み、ユーザインタフェース1103は、ディスプレイ(例えば、タッチスクリーン、LCD、CRT、ホログラフィック(Holographic)またはプロジェクタ(Projector))、クリックデバイス(例えば、マウス、トラックボール(trackball)、タッチパネルまたはタッチスクリーン)、カメラおよび/または撮像装置などを含む。
メモリ1102は、読取り専用メモリおよびランダム・アクセス・メモリを含むことができ、プロセッサ1101に命令およびデータを提供する。メモリ1102の一部は、不揮発性ランダム・アクセス・メモリ(NVRAM)をさらに含むことができる。
いくつかの実施態様において、メモリ1105は、以下の要素、実行可能モジュールもしくはデータ構造、またはそのサブセット、またはその拡張セットを記憶する。
様々な基本サービスを実施し、ハードウェアベースのタスクを処理するために使用される様々なシステムプログラムを含む、オペレーティングシステム11051。
様々なアプリケーションサービスを実施するように使用される様々なアプリケーションプログラムを含む、アプリケーションプログラムモジュール11052。
アプリケーションプログラムモジュール11052は、受信部910および処理部920などを含むが、これらに限定されない。
本実施形態の実施形態では、メモリ1105に記憶されたプログラムまたは命令の呼び出しを介して、プロセッサ1101は、アドレス解決のためにパケットを受信し、パケットに収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定し、送信元MACアドレスが仮想MACアドレスであると決定された場合、パケットに収容された送信元インターネットプロトコルIPアドレスに対応するローカル・カスタマ・エッジ・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、レイヤ3仮想プライベートネットワークVPNのルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略するように構成される。PEデバイス1100が存在する仮想サブネットサイトは、少なくとも1つの第2プロバイダエッジデバイスをさらに含む。
アドレス解決のためのパケットは、ARPパケットまたはNDプロトコルパケットであってもよく、アドレス解決のためのその他のパケットであってもよい。
さらに、上述の送信元MACアドレスが仮想MACアドレスであると決定された場合、プロセッサ1101は、ARPエントリまたはNDプロトコルエントリを保存しなくてもよく、ここで、上述のARPパケットに収容された送信元IPアドレスと送信元MACアドレスとの間のマッピング関係が、ARPエントリに記録される。送信元IPアドレスと上述のNDプロトコルパケットに収容された送信元MACアドレスとのマッピング関係は、NDプロトコルエントリに記録される。
本発明のいくつかの実施形態では、プロセッサ1101は、送信元MACアドレスが仮想MACアドレスではないと決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行するようにさらに構成される。
本発明のいくつかの実施形態では、プロセッサ1101は、
送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがホワイトリストに記録されたMACアドレスのうちのいずれとも異なると決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略し、
および/または
送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがホワイトリストに記録されたMACアドレスのうちの1つと同じであると決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行する
ようにさらに構成される。
本発明のいくつかの実施形態では、プロセッサ1101は、
送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがブラックリストに記録されたMACアドレスのうちのいずれとも異なると決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つを実行する、
および/または
送信元MACアドレスが仮想MACアドレスではなく、かつ、送信元MACアドレスがブラックリストに記録されたMACアドレスのうちの1つと同じであると決定された場合、送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存するステップ、または、ルーティングプロトコルに基づく仮想サブネット内で、IPアドレスに対応するローカルCEホストルートを分配するステップの少なくとも1つの実行を省略する
ようにさらに構成される。
本発明のいくつかの実施形態では、パケットに収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定するステップの態様において、プロセッサ1101は、具体的には、パケットに収容された送信元MACアドレスがプロバイダエッジデバイスに対応する仮想MACアドレスと同じである場合に、送信元MACアドレスは仮想MACアドレスであると決定し、送信元MACアドレスがプロバイダエッジデバイスに対応する仮想MACアドレスと異なる場合に、送信元MACアドレスは仮想MACアドレスではないと決定するように構成される。
本発明のいくつかの実施形態では、パケットに収容された送信元メディアアクセス制御MACアドレスが仮想MACアドレスであるかどうかを決定するステップの態様において、プロセッサ1101は、具体的には、少なくとも1つの第2プロバイダエッジデバイスに対応する仮想MACアドレスを問い合わせて、パケットに収容された送信元MACアドレスが、少なくとも1つの第2プロバイダエッジデバイスのうちの1つに対応する問い合わせられた仮想MACアドレスと同じである場合に、送信元MACアドレスは仮想MACアドレスであると決定し、パケットに収容された送信元MACアドレスが、少なくとも1つの第2プロバイダエッジデバイスのうちのいずれか1つに対応する問い合わせられた仮想MACアドレスと異なる場合に、送信元MACアドレスは仮想MACアドレスではないと決定するように構成される。
本発明のいくつかの実施形態では、PEデバイス(例えば、プロバイダエッジデバイス1100または第2PEデバイス)に対応する仮想MACアドレスは、具体的には、PEデバイスと関連付けられた仮想ルータに対応する仮想MACアドレスであってもよい。
PEデバイスが保存したローカル・CE・ホスト・ルーティング・テーブル・エントリは、PEデバイスが存在するサイト内のCEホストを示していることが理解できる。PEデバイスが分配したローカルCEホストルートは、PEデバイスが存在するサイト内のCEホストを示している。本発明の実施形態では、PEデバイスによって保存されたローカル・CE・ホスト・ルーティング・テーブル・エントリは、CEホストのIPアドレスとネクストホップアドレスとを含んでもよい。本発明の実施形態では、PEデバイスによって分配されたローカルCEホストルートは、CEホストのIPアドレスとネクストホップアドレスとを含んでもよい。
本実施形態のプロバイダエッジデバイス1100の機能モジュールの機能は、具体的には、上述の方法実施形態における方法によって実施されてもよく、その具体的な実施プロセスは、上述の方法実施形態の関連する説明を参照することができ、本明細書において詳細に述べることはないことが理解できる。
上述から分かるように、本発明の実施形態の技術的解決策において、アドレス解決のためにパケットを受信するステップの後、PEデバイス1100は、アドレス解決のためにパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかをまず決定し、送信元MACアドレスが仮想MACアドレスであると決定された場合、上述のARPパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリは保存されず、および/または、上述のIPアドレスに対応するローカルCEホストルートは、レイヤ3VPNのルーティングプロトコルに基づく上述の仮想サブネット内に分配されず、そして、PEデバイス1100が存在する仮想サブネットサイトは、少なくとも1つの第2PEデバイスをさらに含む。研究により、送信元MACアドレスが仮想MACであるアドレス解決のためのパケットは、一般に、第1PEが存在する仮想サブネットサイト内にあって、アドレス解決プロキシとして働く別のPEデバイスによって送信されることが発見された。したがって、PEデバイス1100は、アドレス解決のために受信したパケットに収容された送信元MACアドレスが仮想MACアドレスであるかどうかを識別かつ決定して、アドレス解決のためのパケットが、第1PEデバイスが存在する仮想サブネットサイト内にあってアドレス解決プロキシとして働く別のPEデバイスによって送信されたかどうかの状況を識別し、このような場合(すなわち、上述の送信元MACアドレスは仮想MACアドレスであると決定された場合)に対応して、PEデバイス1100は、アドレス解決のために上述のパケットに収容された送信元IPアドレスに対応するローカル・CE・ホスト・ルーティング・テーブル・エントリを保存せず、および/または、PEデバイス1100は、上述のIPアドレスに対応するローカルCEホストルートを、レイヤ3VPNのルーティングプロトコルに基づく仮想サブネット内に分配しない。このようにして、複数のPEデバイスが仮想サブネットのいくつかのサイトに存在するシナリオにおいてCEホストルーティングループの形成を最大限まで回避することができるように、PEデバイスが誤ったCEホストルートを根本的に保存および/または分配しないようにすることは有用であり、これによって、CEホスト間のデータパケット伝送の効率を向上させ、かつ、ネットワークリソースの浪費を低減する。
図12を参照すると、本発明の実施形態は通信システムをさらに提供し、この通信システムは、複数のプロバイダエッジデバイス1210を含むことができ、ここで、複数のプロバイダエッジデバイス1210のうち少なくとも1つは、プロバイダエッジデバイス900、またはプロバイダエッジデバイス1100、あるいはプロバイダエッジデバイス1100であってもよい。
本発明の実施形態は、コンピュータ記憶媒体がプログラムを記憶することができるコンピュータ記憶媒体をさらに提供する。プログラムは、実行される場合、上述の方法実施形態で開示された仮想サブネット内のホストルートの処理方法のステップの一部分または全てを含む。
簡単な説明のために、前述の方法実施形態は一連の動作の組み合わせとして示されていることが留意されるべきであるが、本発明によれば、いくつかのステップをその他の順序または同時に実施することができるので、当業者は、本発明が記載の動作順序に限定されないことを理解すべきである。加えて、当業者は、本明細書で説明された実施形態は全て、好ましい実施形態に属しており、関与する動作およびモジュールは、必ずしも本発明が必要とするものではないことを理解すべきである。
上述の実施形態では、実施形態の説明は様々な強調をしており、特定の実施形態の一部に対して詳細な説明がなされない場合は、他の実施形態の関連する説明を参照することができる。
本出願で提供されるいくつかの実施形態においては、開示の装置をその他の方法で実現することができることを理解すべきである。例えば、上述のデバイスの実施形態は例示にすぎず、例えば、ユニットの分割は論理機能的分割にすぎず、その他の分割方法を実際に適用してもよく、例えば、複数のユニットまたは構成要素を組み合わせるか別のシステムに統合してもよく、または、いくつかの特徴を省略するか実行しなくてもよい。別の観点からは、示されたまたは論じられた相互結合または直接結合あるいは通信接続は、いくつかのインタフェースを介したデバイスまたはユニットの間接結合または通信接続であってもよく、電気的またはその他の形態であってもよい。
別々の構成要素として示されたユニットは、物理的に分離していてもそうでなくてもよく、ユニットとして表示された構成要素は、物理的ユニットであってもそうでなくてもよく、すなわち、構成要素は、一箇所に位置決めされてもよく、または、複数のネットワークユニット上で分散されてもよい。各実施形態の解決策の目的は、実際の必要に従ってユニットの一部または全部を選択することで果たすことができる。
加えて、本発明の様々な実施形態において、機能ユニットを1つの処理部へ統合することができ、機能ユニットが個別かつ物理的に存在していてもよく、または、2つ以上のユニットを1つのユニットへ統合することができる。上述の統合ユニットは、ハードウェアの形態で実現することもでき、ソフトウェア機能ユニットの形態で実現することもできる。
統合ユニットがソフトウェア機能ユニットの形態で実現され、独立した製品として販売され、または使用される場合に、その統合ユニットはコンピュータ可読記憶媒体に記憶することができる。このような理解に基づいて、本発明の技術的解決策、または先行技術に寄与する本発明の一部、あるいは技術的解決策の全部または一部を、ソフトウェア製品の形態で具体化することができ、コンピュータ機器(パーソナルコンピュータ、サーバ、ネットワーク機器などであってもよく、具体的には、コンピュータ機器内のプロセッサであってもよい)が、本発明の実施形態の方法においてステップの全部または一部を実行することを可能にする複数の命令を含むコンピュータソフトウェア製品は、記憶媒体に記憶される。前述の記憶媒体は、USBディスク、磁気ディスク、ランダム・アクセス・メモリ(RAM,random access memory)、読取り専用メモリ(ROM,read−only memory)、またはモバイル用ハードディスクあるいは光ディスクなど、プログラムコードを記憶することが可能な様々な媒体を含んでもよい。
上述の実施形態は、単に本発明の解決策を説明するために用いられるにすぎず、これらを限定するためのものではない。本発明は上述の実施形態に関連して詳細に説明されているが、当業者は、上述の実施形態に記述されている技術的解決策をさらに改変し、あるいは、その技術的特徴の一部と等価的に置換することができ、このような改変および置換によって、対応する技術的解決策の性質は、本発明の実施形態の技術的解決策趣旨および範囲を逸脱しないことを理解するはずである。