(58)【調査した分野】(Int.Cl.,DB名)
交換設備であって、プロセッサと、機械可読記憶媒体とを含み、前記機械可読記憶媒体は、前記プロセッサにより実行可能な機械実行可能命令が記憶されており、前記プロセッサは、前記機械実行可能命令により、
ポートを介してパケットを受信し、
パケットが第2層パケットである時、
前記ポートの所属するマルチテナントデバイスコンテキスト(MDC)の識別子(ID)及び前記パケットの所属する仮想ローカルエリアネットワーク(VLAN)のIDに基づいて仮想転送インスタンス(VSI)を確定し、
前記ポートが位置するチップに記憶され且つ前記VSI及び前記パケットの宛先メディアアクセス制御(MAC)アドレスとマッチする第2層エントリを検索し、
マッチした第2層エントリに基づいてパケットを転送し、
パケットが第3層パケットである時、
前記ポートの所属するMDCのID及び前記パケットの所属する第1VPNルーティング転送インスタンス(VRF)のIDに基づいて第2VRFを確定し、
前記ポートが位置するチップに記憶され且つ第2VRF及び前記パケットの宛先インターネットプロトコル(IP)アドレスとマッチする第3層エントリを検索し、
マッチする第3層エントリに基づいてパケットを転送することを特徴とする設備。
【発明を実施するための形態】
【0005】
本開示の目的、技術方案及び利点をより明らかにするために、以下では図面及び実施例と併せて本開示を詳細に説明する。
【0006】
仮想設備環境において、異なるMDCの間には、互いに衝突するMDC配置が存在する。互いに衝突するMDCが同一チップに設置されるのを回避するために、チップに基づいて仮想化されたMDCの交換設備において、各チップの外部ポートは、一つのMDCに属し、当該MDCのMDC配置は当該チップ上に設置される。但し、チップに基づいて仮想化されたMDCの応用範囲が制限されている。
【0007】
本開示が提供する方法によれば、交換設備は、ポートに基づいてMDCを仮想化し、サービス需要に基づいて、交換設備のポートを対応するMDCに配分する。以下、
図1を通じて本開示が提供する方法を説明する。
【0008】
図1を参照すると、
図1は、本開示が提供するパケット転送方法のフローチャートである。当該方法は、交換設備に応用される。
図1に示すように、当該方法は、下記のステップを含む。
【0009】
ステップ101で、交換設備は、ポートを介してパケットを受信する。パケットが第2層パケットとして確定された時、ステップ102を実行する。パケットが第3層パケットとして確定された時、ステップ103を実行する。
【0010】
ステップ102で、交換設備は、ポートの所属するMDCの識別子(ID)及びパケットの所属するVLANの識別子(ID)に基づいてパケットの所属する仮想転送インスタンス(VSI:Virtual Switch Instance)を確定し、ポートが位置するチップ上でVSI及びパケットのMACアドレスとマッチする第2層エントリを検索し、VSIとマッチする第2層エントリに基づいてパケットを転送する。
【0011】
ステップ103で、交換設備は、ポートの所属するMDCのID及びパケットの所属する第1VRFのIDに基づいて第2VRFを確定し、ポートが位置するチップ上で第2VRF及びパケットの宛先IPアドレスとマッチする第3層エントリを検索し、マッチする第3層エントリに基づいてパケットを転送する。
【0012】
図1に示すフローから分かるように、ポートが位置するMDCは、第2層エントリのマッチングフィールド及び第3層エントリのマッチングフィールドの両方ともに関わっている。これは、MDCの配置において、第2層エントリ及び第3層エントリは、いずれもMDCに関連する。ポートに基づいて仮想化された一つのMDCの配置は、ポートに基づいて仮想化された別の一つのMDCの配置と衝突する可能性がある。
【0013】
以下、実施例を通じて
図1に示すフローを説明する。
【0014】
図2を参照すると、
図2は、本開示が提供する一実施例の実現模式図である。
図2において、交換設備10のホスト1に接続するポートはPort1_1で表示され、交換設備10のホスト2に接続するポートはPort2_2で表示され、交換設備10のホスト3に接続するポートはPort3_3で表示され、交換設備10のホスト4に接続するポートはPort4_4で表示されている。ポートPort1_1、Port2_2、Port3_3、Port4_4は、同一チップChip1_1に位置する。Port1_1及びPort4_4はMDC1_1に属し、Port2_2及びPort3_3はMDC2_2に属する。
【0015】
図2において、Port1_1、Port2_2、Port3_3、Port4_4は、同じくVLAN1_1に属する。
【0016】
例えば、ホスト1は、第2層を通じてホスト4にアクセスする。
【0017】
図2に示すように、交換設備10は、Port1_1を介して第2層パケット(データリンク層)としてのパケット1_1を受信する。パケット1_1のソースMACアドレスは、ホスト1のMACアドレスMAC1_1であり、宛先MACアドレスは、ホスト4のMACアドレスMAC4_4である。
【0018】
交換設備10は、Port1_1の所属するMDC1_1とPort1_1の所属するVLAN1_1とを一つのVSIにマッピングする。
図2に示す実施例におけるポートに基づいてMDCを仮想化する方式に基づいて、一つのチップ上の少なくとも二つのポート、例えば、Port1_1とPort2_2とは、異なるMDCに属するが、同じく同一のVLANに属する。この場合に対して、既存のチップに基づいてMDCを仮想化する方式に従ってVLAN IDとVSIの一対一対応を設定するのは、異なるMDCが同一VSIに対応すること、及び同一VLANにおける異なるMDCにより別々に転送される第2層パケットがMDCを越えて転送されることを招くことになる。同一VLANにおける異なるMDCにより別々に転送される第2層パケットがMDCを越えて転送されるのを回避するために、
図2に示すような例に基づいて、MDC IDとVLAN IDとは、一つのVSIにマッピングされる。MDC IDとVLAN IDとを一つのVSIにマッピングすることで、具体的に、MDC ID+VLAN ID--->VSI IDで表されるマッピング関係を設定する。当該マッピング関係に基づいて、Port1_1の所属するMDC1_1とPort1_1の所属するVLAN1_1とが一つのVSIにマッピングされる。MDC IDとVLAN IDとをVSIにマッピングするマッピング関係により、同一VLANにおける異なるMDCにより別々転送される第2層パケットはMDCを越えて転送されず、これにより、チップ上の一つのMDCの第2層ポートは別のMDC上の第2層ポートと隔離される。
【0019】
記述の便宜上、ここで、MDC1_1及びVLAN1_1がマッピングされたVSIをVSI1_1で表示する。
【0020】
交換設備10は、Chip1_1により記憶されたVSI1_1及びパケット1_1の宛先MACアドレスMAC4_4とマッチする第2層エントリを検索する。一実施例として、ここでの第2層エントリは、MACエントリ等を含むが、これらに限定されない。記述の便宜上、ここで、VSI1_1及びパケット1_1の宛先MACアドレスMAC4_4とマッチする第2層エントリをエントリ1_1で表示する。表1は、例としてエントリ1_1を示す。
【表1】
【0021】
Chip1_1でエントリ1_1を見つけた時、エントリ1_1に記録されたPort4_4を介してパケット1_1を転送する。最終的には、パケット1_1はホスト4に到達し、ホスト1がホスト4にアクセスすることを実現する。
【0022】
Chip1_1でChip1_1に記憶され且つパケット1_1のソースMACアドレスMAC1_1及びVSI1_1とマッチする第2層エントリを見つけられなかった時、パケット1_1を受信するポートPort1_1及びパケット1_1のソースMACアドレスMAC1_1に基づいてMAC1_1及びVSI1_1とマッチする第2層エントリを学習する。記述の便宜上、ここで、VSI1_1及びパケット1_1のソースMACアドレスMAC1_1とマッチする第2層エントリをエントリ2_2で表示する。表2は、例としてエントリ2_2を示す。
【表2】
【0023】
その後、ホスト4が第2層を通じてホスト1にアクセスしようとする時、交換設備10は、Port4_4を介して第2層(データリンク層)パケット2_2を受信する。パケット2_2のソースMACアドレスは、ホスト4のMACアドレスMAC4_4であり、宛先MACアドレスは、ホスト1のMACアドレスMAC1_1である。
【0024】
交換設備10は、Port4_4の所属するMDC1_1とPort4_4の所属するVLAN1_1とを一つのVSIにマッピングする。マッピングされたVSIは、上記のVSI1_1である。
【0025】
交換設備10は、Chip1_1に記憶され且つVSI1_1及びパケット2_2の宛先MACアドレスMAC1_1とマッチする第2層エントリを検索する。当該第2層エントリは、上記のエントリ2_2である。
【0026】
交換設備10は、エントリ2_2に記録されたポートPort1_1を介してパケット2_2を転送する。最終的には、パケット2_2はホスト1に到達し、ホスト4がホスト1にアクセスすることを実現する。
【0027】
以上、ホスト4とホスト1の間の第2層を通じた相互アクセスを説明した。
【0028】
次に、ホスト3がホスト2にアクセルする場合を例とする。
【0029】
図2に示すように、交換設備10は、Port3_3を介して第2層(データリンク層)パケット3_3を受信する。パケット3_3のソースMACアドレスはホスト3のMACアドレスMAC3_3であり、宛先MACアドレスはホスト2のMACアドレスMAC2_2である。
【0030】
交換設備10は、Port3_3の所属するMDC2_2とPort3_3の所属するVLAN1_1とを一つのVSIにマッピングする。記述の便宜上、ここで、MDC2_2及びVLAN1_1がマッピングされたVSIをVSI3_3で表示する。
【0031】
交換設備10は、Chip1_1に記憶され且つVSI3_3及びパケット3_3の宛先MACアドレスMAC2_2とマッチする第2層エントリを検索する。記述の便宜上、ここで、VSI3_3及びパケット3_3の宛先MACアドレスMAC2_2とマッチする第2層エントリをエントリ3_3と示す。
【0032】
表3は、例としてエントリ3_3を示す。
【表3】
【0033】
Chip1_1でエントリ3_3を見つけた時、エントリ3_3におけるPort2_2を介してパケット3_3を転送する。最終的には、パケット3_3はホスト2に到達し、ホスト3はホスト2にアクセスする。
【0034】
Chip1_1に記憶され且つパケット3_3のソースMACアドレスMAC3_3及びVSI3_3とマッチする第2層エントリを見つけられなかった時、パケット3_3を受信するポートPort3_3及びパケット3_3のソースMACアドレスMAC3_3に基づいてMAC3_3及びVSI3_3とマッチする第2層エントリを学習する。記述の便宜上、ここで、VSI3_3及びパケット3_3のソースMACアドレスMAC3_3とマッチする第2層エントリをエントリ4_4で表示する。
【0035】
表4は、例としてエントリ4_4を示す。
【表4】
【0036】
その後、ホスト2がホスト3にアクセスしようとする時、交換設備10は、Port2_2を介して第2層(データリンク層)パケット4_4を受信する。パケット4_4のソースMACアドレスは、ホスト2のMACアドレスMAC2_2であり、宛先MACアドレスは、ホスト4のMACアドレスMAC4_4である。
【0037】
交換設備10は、Port2_2の所属するMDC2_2とPort2_2の所属するVLAN1_1とを一つのVSIにマッピングする。マッピングされたVSIは、上記のVSI3_3である。
【0038】
交換設備10は、Chip1_1に記憶され且つVSI3_3及びパケット4_4の宛先MACアドレスMAC3_3とマッチする第2層エントリを検索する。当該第2層エントリは、上記のエントリ4_4である。
【0039】
交換設備10は、エントリ4_4のポートPort3_3を介してパケット4_4を転送し、パケット4_4はホスト3に到達し、ホスト2がホスト3にアクセスすることを実現する。
【0040】
上記の説明において、エントリ1_1及びエントリ2_2は、いずれもMDC1_1のMDC配置であり、エントリ3_3及びエントリ4_4は、いずれもMDC2_2のMDC配置である。エントリ2_2及びエントリ4_4を例として、エントリ2_2とエントリ4_4を比較することにより、たとえPort1_1、Port3_3が同じくVLAN1_1に属するとしても、Port1_1とPort3_3とがそれぞれ異なるMDCに属するため、学習された第2層エントリも異なることが見出される。これは、同一チップ上の異なるMDCのMDC配置が衝突せず、且つ同一VLANにおいて異なるMDCにより別々に転送される第2層パケットもMDCを越えて転送されないことを保証する。
【0041】
図3を参照すると、
図3は、本開示が提供する別の実施例の実現模式図である。
図3において、交換設備10のポートPort1_1、Port2_2、Port3_3、Port4_4は、同一チップChip1_1に位置する。Port1_1及びPort4_4は、MDC1_1に属し、Port2_2及びPort3_3は、MDC2_2に属する。
【0042】
図3において、Port1_1、Port2_2、Port3_3、Port4_4は、同じくVLAN1_1に属する。
【0043】
例えば、ホスト1は、第3層を通じてホスト4にアクセスする。
【0044】
図3に示すように、交換設備10は、Port1_1を介して第3層(ネットワーク層)パケット5_5を受信する。パケット5_5は、ホスト1からホスト4に送信されたものであり、ソースIPアドレスはIP1_1であり、宛先IPアドレスはIP4_4である。
【0045】
交換設備10は、Port1_1の所属するMDC1_1とパケット5_5の所属するVRF1_1とを一つのVPNルーティング転送(VPN Routing and Forwarding)インスタンス(以下、VRFと称する)にマッピングする。MDC IDとVRF IDとを一つの新しいVRF IDにマッピングすることで、具体的に、MDC ID+ VRF ID---> VRF ID’で表されるマッピング関係を予め設定する。チップは、異なる新しいVRFにマッピングされたエントリに基づいて、同一VRFに属し且つ異なるMDCにより別々に転送される第3層パケットを識別し、これらの同一VRFに属し且つ異なるMDCにより別々に転送される第3層パケットは、MDCを越えて転送されない。
【0046】
記述の便宜上、ここで、MDC1_1及びVRF1_1がマッピングされた新しいVRFをVRF2_2で表示する。
【0047】
交換設備10は、Chip1_1に記憶され且つVRF2_2及びパケットの宛先IPアドレスIP4_4とマッチする第3層エントリを見つける。一実施例として、ここでの第3層エントリは、ユニキャストルーティングエントリ、マルチキャストルーティングエントリ、ARPエントリ、MPLSエントリ等を含むが、これらに限定されない。記述の便宜上、ここで、VRF2_2及びパケットの宛先IPアドレスIP4_4とマッチする第3層エントリをエントリ5_5で表示する。
【0048】
Chip1_1でエントリ5_5を見つけた時、直接エントリ5_5に基づいてパケット5_5を転送する。最終的には、パケット5_5はホスト4に転送される。
【0049】
Chip1_1に記憶されたエントリの中でパケット5_5のソースIPアドレスIP1_1及びVRF2_2とマッチする第3層エントリを見つけられなかった時、パケット5_5を受信するPort1_1及びパケット5_5のソースIPアドレスIP1_1に基づいて、マッチングフィールドがパケット5_5のソースIPアドレスIP1_1とVRF2_2とを含む第3層エントリを学習する。記述の便宜上、ここで、IP1_1及びVRF2_2とマッチする第3層エントリをエントリ6_6で表示する。表5は、第3層エントリをユニキャストルーティングエントリとする場合を例としてエントリ6_6を示す。
【表5】
【0050】
その後、ホスト4が第3層を通じてホスト1にアクセスしようとする時、交換設備は、Port4_4を介して第3層パケット6_6を受信する。パケット6_6は、ホスト4からホスト1に送信されたものであり、ソースIPアドレスはIP4_4であり、宛先IPアドレスはIP1_1である。
【0051】
交換設備10は、Port4_4の所属するMDC1_1とパケット6_6の所属するVRF1_1とを一つの新しいVRFにマッピングする。マッピングされたVRFは、上記のVRF2_2である。
【0052】
交換設備10は、Chip1_1に記憶され且つVRF2_2及びパケットの宛先IPアドレスIP1_1とマッチする第3層エントリを検索する。当該第3層エントリは、上記のエントリ6_6である。
【0053】
交換設備10は、エントリ6_6のポートPort1_1を介してパケット6_6を転送し、最終的には、パケット6_6はホスト1に到達し、ホスト4が第3層を通じてホスト1にアクセスすることを実現する。
【0054】
以上、ホスト4とホスト1の間の第3層を通じた相互アクセスを説明した。
【0055】
例えば、ホスト2は、第3層を通じてホスト3にアクセスする。
【0056】
図3に示すように、交換設備10は、Port2_2を介して第3層(ネットワーク層)のパケット7_7を受信する。パケット7_7は、ホスト2からホスト3に送信されたものであり、ソースIPアドレスはIP2_2であり、宛先IPアドレスはIP3_3である。
【0057】
交換設備10は、Port2_2の所属するMDC2_2とパケット7_7の所属するVRF1_1とを一つの新しいVRFにマッピングする。記述の便宜上、ここで、MDC2_2及びVRF1_1がマッピングされたVRFをVRF3_3で表示する。
【0058】
交換設備10は、Chip1_1に記憶され且つVRF3_3及びパケット7_7の宛先IPアドレスIP3_3とマッチする第3層エントリを見つける。記述の便宜上、ここで、VRF3_3及びパケット7_7の宛先IPアドレスIP3_3とマッチする第3層エントリをエントリ7_7で表示する。
【0059】
Chip1_1に記憶されたエントリ7_7を見つけた時、直接エントリ7_7に基づいてパケット7_7を転送する。パケット7_7は、ホスト3に転送される。
【0060】
Chip1_1に記憶されたエントリの中でパケット7_7のソースIPアドレスIP2_2及びVRF3_3とマッチする第3層エントリを見つけられなかった時、パケット7_7を受信するPort2_2及びパケット7_7のソースIPアドレスIP2_2に基づいて、パケット7_7のソースIPアドレスIP2_2及びVRF3_3とマッチする第3層エントリを学習する。記述の便宜上、ここで、IP2_2及びVRF3_3とマッチする第3層エントリをエントリ8_8で表示する。表6は、第3層エントリがユニキャストルーティングエントリである場合を例としてエントリ8_8を示す。
【表6】
【0061】
その後、ホスト3が第3層を通じてホスト2にアクセスしようとする時、交換設備は、Port3_3を介して第3層パケット8_8を受信する。パケット8_8は、ホスト3からホスト2に送信されたものであり、ソースIPアドレスはIP3_3であり、宛先IPアドレスはIP2_2である。
【0062】
交換設備10は、Port3_3の所属するMDC2_2とパケット8_8の所属するVRF1_1とを一つのVRFにマッピングする。新たにマッピングされたVRFは、上記のVRF3_3である。
【0063】
交換設備10は、Chip1_1に記憶され且つVRF3_3及びパケットの宛先IPアドレスIP2_2とマッチする第3層エントリを検索する。当該第3層エントリは、上記のエントリ8_8である。
【0064】
交換設備10は、エントリ8_8のポートPort2_2を介してパケット8_8を転送し、最終的には、パケット8_8はホスト2に到達し、ホスト3が第3層を通じてホスト2にアクセスすることを実現する。
【0065】
以上、ホスト3とホスト2の間の第3層を通じた相互アクセスを説明した。
【0066】
上記の説明において、MDC1_1のMDC配置は、エントリ5_5とエントリ6_6とを含み、MDC2_2のMDC配置は、エントリ7_7とエントリ8_8とを含み、MDC1_1のMDC配置とMDC2_2の配置とは、チップ1_1に記憶され、同一VRFに属し且つ異なるMDCにより別々に転送される第3層パケットは、異なる新しいVRFにマッピングされたエントリに基づいてチップ1_1により識別される、且つMDCを越えて転送されない。
【0067】
本開示において、MDC配置は、サービス品質アクセス制御リスト(QACL:Qos ACL)を更に含む。交換設備にとって、ポートを介してパケットが受信された時、ポートが位置するチップ上でアクセス制御を行うためのQACLを見つけ、見つかったQACLに基づいてパケットに対してアクセス制御を行う。
【0068】
本開示において、QACLは、ポートモード、VLANモード、グローバルモードであって良い。QACLがポートモードである時、ポートに基づいてMDCを仮想化し、パケットを受信するポートに基づいてマッチしたQACLを見つける。QACLがVLANモードである時、上記のマッピングされたVSIの説明と同様である。ここで、先ず、パケットを受信するポートの所属するMDCのID及びVLANのIDに基づいて一つのVSIを確定し、ポートが位置するチップに記憶され且つVSIとマッチするQACLを見つける。QACLがグローバルモードである時、パケットを受信するポートの所属するMDCに割り当てられたポートクラス識別子(Port Class ID)に基づいてチップに記憶されたマッチしたQACLを見つける。本開示において、異なるMDCに異なるPort Class IDを予め割り当て、MDCに割り当てられたPort Class IDは、MDCのQACLとマッチする。MDCにPort Class IDを割り当てることで、パケットが異なるMDCのグローバルQACLとマッチすることを回避する。
【0069】
本開示において、チップのグローバル資源及び上記のVRFは、いずれも制限されている。複数のMDCが使用中である時、資源管理及び割り当てを行うべきである。例えば、先使用先占用の方式にしたがって動的に割り当てるか、或いは、各々のMDCに対して一部の資源を予め配分し、各々のMDCはその配分された資源範囲内で資源を使用する。本開示は、これに対して具体的に限定しない。
【0070】
以上、本開示が提供する方法を説明した。以下、本開示が提供する装置を説明する。
【0071】
図4を参照すると、
図4は、本開示が提供する交換設備の構造図である。当該交換設備は、受信ユニット401と、第2層転送ユニット402と、第3層転送ユニット403とを含む。
【0072】
受信ユニット401は、ポートを介してパケットを受信するために用いられる。
【0073】
第2層転送ユニット402は、パケットが第2層パケットである時、ポートの所属するMDCの識別子ID及びパケットの所属するVLANの識別子IDに基づいて仮想転送インスタンスVSIを確定し、ポートが位置するチップに記憶され且つVSI及びパケットの宛先MACアドレスとマッチする第2層エントリを検索し、マッチする第2層エントリに基づいてパケットを転送するために用いられる。
【0074】
第3層転送ユニット403は、パケットが第3層パケットである時、ポートの所属するMDCのID及びパケットの所属する第1VRFのIDに基づいて第2VRFを確定し、ポートが位置するチップに記憶され且つ第2VRF及びパケットの宛先IPアドレスとマッチする第3層エントリを検索し、マッチする第3層エントリに基づいてパケットを転送するために用いられる。
【0075】
一例において、第2層転送ユニット402は、さらに、パケットのソースMACアドレス及びVSIとマッチする第2層エントリを学習してチップに記録する。
【0076】
一例において、第3層転送ユニット403は、さらに、第2VRF及びパケットのソースIPアドレスとマッチする第3層エントリを学習してチップに記録する。
【0077】
図4に示すように、当該装置は、アクセス制御ユニット404を更に含む。
アクセス制御ユニット404は、チップに記憶され且つポートとマッチするQACLを検索し、見つかったQACLに基づいてパケットに対してアクセス制御を行うために用いられる。
【0078】
アクセス制御ユニット404がポートとマッチするQACLを検索するステップは、チップに記憶され且つ当該VSIとマッチするQACLを検索するステップ、或いは、ポートの所属するMDCに割り当てられたポートクラス識別子(Port Class ID)に基づいてチップに記憶されたQACLを検索するステップを含む。
【0079】
図5を参照すると、
図5は、本開示が提供する交換設備の構造図である。当該交換設備は、プロセッサ501と、機械実行可能命令が記憶された機械可読記憶媒体502とを含む。プロセッサ501と機械可読記憶媒体502とは、システムバス503を介して通信する。さらに、機械可読記憶媒体502におけるパケット転送制御ロジックに対応する機械実行可能命令を読み取って実行することで、プロセッサ501は、前述したパケット転送方法を実行する。
図5に示すように、当該ハードウェア構造は、当該交換設備の電源管理を実行するように配置された一つの電源アセンブリ504と、当該交換設備をネットワークに接続するように配置された一つのワイヤード又はワイヤレスのネットワークインタフェース505と、一つの入力/出力(I/O)インタフェース506とを更に含む。
【0080】
本文で言及される機械可読記憶媒体502は、いかなる電子、磁気、光学又は他の物理的な記憶装置であって良いし、例えば、実行可能命令、データ等の情報を格納又は記憶する。例えば、機械可読記憶媒体は、RAM(Random Access Memory、ランダムアクセスメモリ)、揮発性メモリ、不揮発性メモリ、フラッシュメモリ、記憶ドライブ(例えば、ハードディスクドライバ)、ソリッドステートドライブ、いかなる類型の記憶ディスクであって良い。
【0081】
機械可読記憶媒体502は、パケット転送制御ロジックに対応する機械実行可能命令を格納するために用いられ、前記機械実行可能命令は、受信ユニット401により実行されるプログラム命令と、第2層転送ユニット402により実行されるプログラム命令と、第3層転送ユニット403により実行されるプログラム命令と、アクセス制御ユニット404により実行されるプログラム命令とを含む。
【0082】
例えば、プロセッサ501が機械可読記憶媒体502における機械実行可能命令を読み取って実行する時、当該プロセッサ501は、以下の操作を実行する。即ち、
ポートを介してパケットを受信し、
パケットが第2層パケットである時、
ポートの所属するマルチテナントデバイスコンテキスト(MDC)の識別子(ID)及びパケットの所属する仮想ローカルエリアネットワーク(VLAN)のIDに基づいて仮想転送インスタンス(VSI)を確定し、
ポートが位置するチップに記憶され且つVSI及びパケットの宛先メディアアクセス制御(MAC)アドレスとマッチする第2層エントリを検索し、
マッチした第2層エントリに基づいてパケットを転送し、
パケットが第3層パケットである時、
ポートの所属するMDCのID及びパケットの所属する第1VPNルーティング転送インスタンス(VRF)のIDに基づいて第2VRFを確定し、
ポートが位置するチップに記憶され且つ第2VRF及びパケットの宛先インターネットプロトコル(IP)アドレスとマッチする第3層エントリを検索し、マッチした第3層エントリに基づいてパケットを転送する。
【0083】
本開示の別の例において、プロセッサ501は、さらに、機械実行可能命令により、
パケットのソースMACアドレス及びVSIとマッチする第2層エントリを学習してチップに記録する。
【0084】
本開示の別の一例において、プロセッサ501は、さらに、被機械実行可能命令により、
第2VRF及びパケットのソースIPアドレスとマッチする第3層エントリを学習してチップに記録する。
【0085】
本開示の別の例において、プロセッサ501は、さらに、機械実行可能命令により、
チップに記憶され且つポートとマッチするサービス品質アクセス制御リスト(QACL)を検索し、
見つかったQACLに基づいてパケットに対してアクセス制御を行う。
【0086】
本開示の別の一例において、ポートとマッチするQACLを検索する時、プロセッサ501は、さらに、機械実行可能命令により、
チップに記憶され且つ当該VSIとマッチするQACLを検索するか、或いは、
ポートの所属するMDCに割り当てられたポートクラス識別子(Port Class ID)に基づいてチップに記憶されたQACLを検索する。
【0087】
プロセッサ501は、機械可読記憶媒体502における機械実行可能命令を読み取って実行することで、本開示に記述されるパケット転送方法を実現する。
【0088】
上記のものは、単に本開示の好ましい実施例であり、本開示を制限するために用いられず、本開示の精神及び原則の範囲内でなされるいかなる修正、均等物による置換、改善等は、いずれも本開示の保護の範囲内に含まれるべきである。