IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ファーウェイ クラウド コンピューティング テクノロジーズ カンパニー リミテッドの特許一覧

特許7231744クラウドコンピューティングデータセンタシステム、ゲートウェイ、サーバ、およびパケット処理方法
<>
  • 特許-クラウドコンピューティングデータセンタシステム、ゲートウェイ、サーバ、およびパケット処理方法 図1
  • 特許-クラウドコンピューティングデータセンタシステム、ゲートウェイ、サーバ、およびパケット処理方法 図2
  • 特許-クラウドコンピューティングデータセンタシステム、ゲートウェイ、サーバ、およびパケット処理方法 図3
  • 特許-クラウドコンピューティングデータセンタシステム、ゲートウェイ、サーバ、およびパケット処理方法 図4
  • 特許-クラウドコンピューティングデータセンタシステム、ゲートウェイ、サーバ、およびパケット処理方法 図5
  • 特許-クラウドコンピューティングデータセンタシステム、ゲートウェイ、サーバ、およびパケット処理方法 図6
  • 特許-クラウドコンピューティングデータセンタシステム、ゲートウェイ、サーバ、およびパケット処理方法 図7
  • 特許-クラウドコンピューティングデータセンタシステム、ゲートウェイ、サーバ、およびパケット処理方法 図8
  • 特許-クラウドコンピューティングデータセンタシステム、ゲートウェイ、サーバ、およびパケット処理方法 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-02-20
(45)【発行日】2023-03-01
(54)【発明の名称】クラウドコンピューティングデータセンタシステム、ゲートウェイ、サーバ、およびパケット処理方法
(51)【国際特許分類】
   H04L 49/25 20220101AFI20230221BHJP
【FI】
H04L49/25
【請求項の数】 10
(21)【出願番号】P 2021537822
(86)(22)【出願日】2019-12-26
(65)【公表番号】
(43)【公表日】2022-02-22
(86)【国際出願番号】 CN2019128497
(87)【国際公開番号】W WO2020135542
(87)【国際公開日】2020-07-02
【審査請求日】2021-07-12
(31)【優先権主張番号】201811602177.3
(32)【優先日】2018-12-26
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】522104026
【氏名又は名称】ファーウェイ クラウド コンピューティング テクノロジーズ カンパニー リミテッド
(74)【代理人】
【識別番号】100132481
【弁理士】
【氏名又は名称】赤澤 克豪
(74)【代理人】
【識別番号】100115635
【弁理士】
【氏名又は名称】窪田 郁大
(72)【発明者】
【氏名】▲張▼ 争▲憲▼
(72)【発明者】
【氏名】▲劉▼ 扶舟
(72)【発明者】
【氏名】姚 博
【審査官】羽岡 さやか
(56)【参考文献】
【文献】特開2014-143560(JP,A)
【文献】米国特許出願公開第2015/0381495(US,A1)
【文献】特開2017-229027(JP,A)
【文献】特開2016-134876(JP,A)
【文献】特表2013-509090(JP,A)
【文献】特開2014-192790(JP,A)
【文献】特表2015-531212(JP,A)
【文献】特開2011-254378(JP,A)
【文献】特表2015-526992(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 49/25
(57)【特許請求の範囲】
【請求項1】
分散ゲートウェイのためのパケット処理方法であって、前記分散ゲートウェイは、第1のペリフェラルコンポーネントインターコネクトエクスプレスPCIeリンクを使用することによって第1のコンピューティングノードに接続され、前記分散ゲートウェイはスイッチに接続され、第1の仮想マシンは第1のコンピューティングノード上に配設され、前記第1の仮想マシンは第1の仮想ローカルエリアネットワークVLANに配置され、前記方法は、
前記分散ゲートウェイによって、クラウド管理プラットフォームによって送信された管理パケットを受信することであって、前記管理パケットは第2のVLANのネットワーク情報を搬送することと、
前記分散ゲートウェイによって、前記第2のVLANのネットワーク情報を記録することと、
前記分散ゲートウェイによって、サービスデータを搬送し、前記第1の仮想マシンによって第2の仮想マシンに送信された第1のサービスパケットを受信することであって、前記第2の仮想マシンは前記第2のVLANに配置されることと、
前記分散ゲートウェイによって、前記第2のVLANに到達するために第2のサービスパケットを生成するために前記第2のVLANの前記ネットワーク情報に基づいて前記第1のサービスパケットを変更することであって、前記第2のサービスパケットは前記サービスデータを搬送することと、
前記分散ゲートウェイによって、前記第2のサービスパケットを前記スイッチに送信することと
を含
前記第1のサービスパケットはVLANパケットであり、前記第1のサービスパケットの宛先アドレスは前記第2の仮想マシンのMACアドレスであり、第1のVLAN識別子は前記第1のVLANネットワークのために設定され、前記第1のVLAN識別子とは異なる第2のVLAN識別子は前記第2のVLANネットワークのために設定され、前記第2のVLANの前記ネットワーク情報は、前記第2の仮想マシンの前記MACアドレスと前記第2のVLAN識別子との間の第1の対応を含み、前記分散ゲートウェイによって、前記第2のVLANに到達することができる第2のサービスパケットを生成するために前記第2のVLANの前記ネットワーク情報に基づいて前記第1のサービスパケットを変更することは、
前記分散ゲートウェイによって、前記第1のサービスパケットの前記宛先MACアドレスに基づいて前記第1の対応から前記第2のVLAN識別子を取得することと、
前記分散ゲートウェイによって、前記第2のサービスパケットを生成するために前記第1のサービスパケットにおいて前記第2のVLAN識別子を設定することと
を含む、方法。
【請求項2】
前記分散ゲートウェイは、ネットワークアダプタコントローラおよびネットワークアダプタを含み、前記ネットワークアダプタは、第1の物理機能(PF)、第1の仮想機能(VF)、および物理ネットワークポートを備え、前記ネットワークアダプタコントローラは前記第1のPFに接続され、前記第1の仮想マシンは前記第1のVFに接続され、前記物理ネットワークポートは前記スイッチに接続される、請求項1に記載の方法。
【請求項3】
前記分散ゲートウェイによって、サービスデータを搬送し、前記第1の仮想マシンによって第2の仮想マシンに送信された第1のサービスパケットを受信することは、
前記ネットワークアダプタによって、前記第1のVFから前記第1のサービスパケットを受信することを含む、請求項2に記載の方法。
【請求項4】
前記分散ゲートウェイによって、前記第2のVLANに到達することができる第2のサービスパケットを生成するために前記第2のVLANの前記ネットワーク情報に基づいて前記第1のサービスパケットを変更することは、
前記ネットワークアダプタによって、前記第1のサービスパケットを前記第1のPFに転送することと、
前記ネットワークアダプタコントローラによって、前記第1のPFから前記第1のサービスパケットを取得し、前記第2のサービスパケットを生成するために前記第2のVLANの前記ネットワーク情報に基づいて前記第1のサービスパケットを変更し、前記第2のサービスパケットを前記第1のPFに送信することと、
前記ネットワークアダプタによって、前記第2のサービスパケットを前記物理ネットワークポートに送信することと
を含む、請求項3に記載の方法。
【請求項5】
前記管理パケットの宛先MACアドレスは前記ネットワークアダプタコントローラのMACアドレスであり、前記ネットワークアダプタは、前記ネットワークアダプタコントローラの前記MACアドレスと前記第1のPFとの間の第3の対応を記録し、前記分散ゲートウェイによって、前記クラウド管理プラットフォームによって送信された管理パケットを受信することは、
前記ネットワークアダプタによって、前記物理ネットワークポートから前記管理パケットを受信し、前記管理パケットの前記宛先MACアドレスに基づいて前記第3の対応から前記第1のPFを選択し、前記管理パケットを前記第1のPFに転送することと、
前記ネットワークアダプタコントローラによって、前記第1のPFから前記管理パケットを受信することと
を含む、請求項2乃至4のいずれか1項に記載の方法。
【請求項6】
前記分散ゲートウェイによって、前記第2のVLANの前記ネットワーク情報を記録することは、
前記ネットワークアダプタコントローラによって、前記管理パケットから前記第2のVLANの前記ネットワーク情報を取得し、前記第2のVLANの前記ネットワーク情報を記録することを含む、請求項5に記載の方法。
【請求項7】
分散ゲートウェイであって、前記分散ゲートウェイは、PCIeインターフェースを使用することによって第1のコンピューティングノードに接続され、前記分散ゲートウェイはスイッチに接続され、第1の仮想マシンは前記第1のコンピューティングノード上に配設され、前記第1の仮想マシンは第1のVLANに配置され、前記分散ゲートウェイは、
クラウド管理プラットフォームによって送信された管理パケットを受信するように構成された受信モジュール(411)であって、前記管理パケットが第2のVLANのネットワーク情報を搬送する、受信モジュールと、
前記第2のVLANの前記ネットワーク情報を記録するように構成された記録モジュール(413)であって、前記受信モジュール(411)が、サービスデータを搬送し、前記第1の仮想マシンによって第2の仮想マシンに送信された第1のサービスパケットを受信するようにさらに構成され、前記第2の仮想マシンが前記第2のVLANに配置される、記録モジュールと、
前記第2のVLANに到達するために第2のサービスパケットを生成するために前記第2のVLANの前記ネットワーク情報に基づいて前記第1のサービスパケットを変更するように構成された変換モジュール(414)であって、前記第2のサービスパケットが前記サービスデータを搬送する、変換モジュールと、
前記第2のサービスパケットを前記スイッチに送信するように構成された送信モジュール(412)と
を含み、
前記第1のサービスパケットはVLANパケットであり、前記第1のサービスパケットの宛先アドレスは前記第2の仮想マシンのMACアドレスであり、第1のVLAN識別子は前記第1のVLANネットワークのために設定され、前記第1のVLAN識別子とは異なる第2のVLAN識別子は前記第2のVLANネットワークのために設定され、
前記変換モジュール(414)は、前記第1のサービスパケットの前記宛先MACアドレスに基づいて第1の対応から前記第2のVLAN識別子を取得し、前記第2のサービスパケットを生成するために前記第1のサービスパケットにおいて前記第2のVLAN識別子を設定するように構成された、分散ゲートウェイ。
【請求項8】
前記第1のサービスパケットはVLANパケットであり、前記第1のサービスパケットの宛先MACアドレスは前記第2の仮想マシンのMACアドレスであり、前記第2のVLANの前記ネットワーク情報は、前記第2の仮想マシンの前記MACアドレスと第2のPCIeリンクを使用することによって第2のコンピューティングノードに接続された別の分散ゲートウェイのIPアドレスとの間の第2の対応を含み、
前記変換モジュール(414)は、前記サービスパケットの前記宛先アドレスに基づいて前記第2の対応から前記IPアドレスを取得し、前記第1のサービスパケットを前記第2のサービスパケットにカプセル化するように構成され、前記第2のサービスパケットはオーバーレイパケットであり、前記第2のサービスパケットの宛先IPアドレスは前記第2のPCIeリンクを使用することによって前記第2のコンピューティングノードに接続された前記別の分散ゲートウェイの前記IPアドレスである、請求項に記載の分散ゲートウェイ。
【請求項9】
命令を含むコンピュータ読み取り可能媒体であって、前記命令は、コンピュータによって実行されると、前記コンピュータに請求項1乃至のいずれか1項に記載された方法を実行させるコンピュータ読み取り可能媒体。
【請求項10】
命令を含むコンピュータプログラムであって、前記命令は、前記プログラムがコンピュータによって実行されると、前記コンピュータに請求項1乃至のいずれか1項に記載された方法を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、ネットワーク通信技術の分野に関し、特に、クラウドコンピューティングデータセンタシステム、ゲートウェイ、サーバ、およびパケット処理方法に関する。
【背景技術】
【0002】
クラウドコンピューティングネットワーク環境では、大量のネットワークトラフィックはゲートウェイを使用することによって分散される必要があり、ゲートウェイはクラウドネットワークのネットワークパフォーマンス、ネットワークスケール、信頼性、システム拡張などに重大な影響を及ぼす。従来技術では、集中型ゲートウェイが通常使用され、具体的には、すべてのコンピューティングノード上の仮想マシンによって送信されたパケットが仮想ローカルエリアネットワークにわたって通信される必要がある場合、パケットは処理のために集中型ゲートウェイに最初に送信される必要がある。これは不十分な信頼性という問題を引き起こす。例えば、集中型ゲートウェイの帯域幅が不十分であるとき、ネットワーク全体の帯域幅が影響を受ける。加えて、集中型ゲートウェイが故障した場合、広範囲のネットワーク麻痺が発生するであろう。
【発明の概要】
【0003】
本出願は、分散ゲートウェイ、パケット処理方法、およびサーバを提供する。分散ゲートウェイはコンピューティングノード上にローカルに配設され、1つの分散ゲートウェイが各コンピューティングノード上に配設され、各コンピューティングノード上の仮想マシンによって送信されたパケットは、サブネット間伝送を実施するために、ローカル分散ゲートウェイを使用することによって処理され得る。ローカル分散ゲートウェイが故障した場合でも、対応するコンピューティングノード上の仮想マシンの通信のみが影響を受け、他のコンピューティングノード上の仮想マシンの通信は影響を受けない。したがって、ネットワークの信頼性が改善される。
【0004】
第1の態様によれば、本出願は、分散ゲートウェイのためのパケット処理方法を提供する。分散ゲートウェイは、第1のペリフェラルコンポーネントインターコネクトエクスプレスPCIeリンクを使用することによって第1のコンピューティングノードに接続される。分散ゲートウェイはスイッチに接続される。第1の仮想マシンは第1のコンピューティングノード上に配設され、第1の仮想マシンは第1の仮想ローカルエリアネットワークVLANに配置される。方法は、以下のステップを含む。分散ゲートウェイは、クラウド管理プラットフォームによって送信された管理パケットを受信し、管理パケットは第2のVLANのネットワーク情報を搬送する。分散ゲートウェイは、第2のVLANのネットワーク情報を記録する。分散ゲートウェイは、サービスデータを搬送し第1の仮想マシンによって第2の仮想マシンに送信された第1のサービスパケットを受信し、第2の仮想マシンは第2のVLANに配置される。分散ゲートウェイは、第2のVLANに到達することができる第2のサービスパケットを生成するために第2のVLANのネットワーク情報に基づいて第1のサービスパケットを変更し、第2のサービスパケットはサービスデータを搬送する。分散ゲートウェイは、第2のサービスパケットをスイッチに送信する。
【0005】
分散ゲートウェイは、クラウド管理プラットフォームによって送信された第2のVLANのネットワーク情報を受信し、ネットワーク情報に基づいて、第1のコンピューティングノードの第1のVLANに配置された第1の仮想マシンによって送信されたサービスパケットを変更するように設定されるので、その結果として、変更されたサービスパケットは第2のVLANに伝送されてよく、次いで、ゲートウェイ機能は第1のコンピューティングノード上でローカルに実装される。
【0006】
第1の態様の第1の可能な実装では、分散ゲートウェイはネットワークアダプタコントローラおよびネットワークアダプタを含む。ネットワークアダプタは、第1の物理機能PF、第1の仮想機能VF、および物理ネットワークポートを備える。ネットワークアダプタコントローラは第1のPFに接続される。第1の仮想マシンは第1のVFに接続される。物理ネットワークポートはスイッチに接続される。
【0007】
ネットワークアダプタパススルー技術を用いて、ネットワークアダプタのPFはネットワークアダプタコントローラにパススルーされ、ネットワークアダプタのVFはコンピューティングノード上の仮想マシンにパススルーされる。このようにして、ネットワークアダプタコントローラの計算能力はパケットを変更するために使用されてよく、コンピューティングノードの計算作業負荷を低減する。
【0008】
任意選択で、ネットワークアダプタコントローラの計算能力はネットワークアダプタの計算能力よりも強力であり、ネットワークアダプタコントローラはパケットを変更することおよびクラウド管理プラットフォームと通信することを担う。ネットワークアダプタは上記の機能をサポートする必要がなく、ネットワークアダプタのパケット転送速度は影響を受けない。
【0009】
第1の態様の第1の可能な実装によれば、第2の可能な実装では、分散ゲートウェイが、サービスデータを搬送し第1の仮想マシンによって第2の仮想マシンに送信された第1のサービスパケットを受信することは、以下の方式で実装される。ネットワークアダプタは、第1のVFから第1のサービスパケットを受信する。
【0010】
ネットワークアダプタは第1の仮想マシンにパススルーされるので、第1の仮想マシンによって送信されたサービスパケットは仮想マシンマネージャをパススルーする必要がない。したがって、パケット伝送速度が改善され得る。
【0011】
第1の態様の第2の可能な実装によれば、第3の可能な実装では、分散ゲートウェイが第2のVLANに到達することができる第2のサービスパケットを生成するために第2のVLANのネットワーク情報に基づいて第1のサービスパケットを変更することは、以下を含む。ネットワークアダプタは、第1のサービスパケットを第1のPFに転送する。ネットワークアダプタコントローラは、第1のPFから第1のサービスパケットを取得し、第2のサービスパケットを生成するために第2のVLANのネットワーク情報に基づいて第1のサービスパケットを変更し、第2のサービスパケットを第1のPFに送信する。ネットワークアダプタは、第2のサービスパケットを物理ネットワークポートに送信する。
【0012】
ネットワークアダプタコントローラは、パケットを独立して変更する。これは、ネットワークアダプタに対する追加の作業負荷を引き起こさず、ネットワークアダプタのパケット転送速度に影響を及ぼさない。
【0013】
第1の態様の第1から第3の可能な実装のいずれか1つによれば、第4の可能な実装では、管理パケットの宛先MACアドレスはネットワークアダプタコントローラのMACアドレスである。ネットワークアダプタは、ネットワークアダプタコントローラのMACアドレスと第1のPFとの間の第3の対応を記録する。分散ゲートウェイがクラウド管理プラットフォームによって送信された管理パケットを受信することは、以下を含む。ネットワークアダプタは、物理ネットワークポートから管理パケットを受信し、管理パケットの宛先MACアドレスに基づいて第3の対応から第1のPFを選択し、管理パケットを第1のPFに転送する。ネットワークアダプタコントローラは、第1のPFから管理パケットを受信する。
【0014】
クラウド管理プラットフォームは管理パケットをネットワークアダプタコントローラに配信し得るので、ユーザは、どの時点でもクラウド管理プラットフォーム上で分散ゲートウェイを管理し、それによってユーザエクスペリエンスを改善し得る。
【0015】
第1の態様の第4の可能な実装によれば、第5の可能な実装では、分散ゲートウェイが第2のVLANのネットワーク情報を記録することは、以下を含む。ネットワークアダプタコントローラは、管理パケットから第2のVLANのネットワーク情報を取得し、第2のVLANのネットワーク情報を記録する。
【0016】
ネットワークアダプタコントローラは、ネットワークアダプタから比較的独立している。ネットワークアダプタは、第2のVLANのネットワーク情報を記録する。これはネットワークアダプタの作業負荷を増加せず、パケット転送速度に影響を及ぼさない。
【0017】
第1の態様および第1の態様の第1から第5の可能な実装のいずれか1つによれば、第6の可能な実装では、第1のサービスパケットはVLANパケットであり、第1のサービスパケットの宛先アドレスは第2の仮想マシンのMACアドレスである。第1のVLAN識別子は第1のVLANネットワークのために設定され、第1のVLAN識別子とは異なる第2のVLAN識別子は第2のVLANネットワークのために設定される。第2のVLANのネットワーク情報は、第2の仮想マシンのMACアドレスと第2のVLAN識別子との間の第1の対応を含む。分散ゲートウェイが第2のVLANに到達することができる第2のサービスパケットを生成するために第2のVLANのネットワーク情報に基づいて第1のサービスパケットを変更することは、以下を含む。分散ゲートウェイは、第1のサービスパケットの宛先MACアドレスに基づいて第1の対応から第2のVLAN識別子を取得する。分散ゲートウェイは、第2のサービスパケットを生成するために第1のサービスパケットにおいて第2のVLAN識別子を設定する。
【0018】
第1の仮想マシンおよび第2の仮想マシンは異なるVLANに配置されるので、異なるVLANは互いと通信することができない。第2の仮想マシンのMACアドレスと第2の仮想マシンが配置されたVLANの第2のVLAN識別子との間の対応は、クラウド管理プラットフォームを使用することによって分散ゲートウェイに配信される。したがって、第1の仮想マシンによって送信され、その宛先アドレスが第2の仮想マシンのMACアドレスであるサービスパケットを受信するとき、分散ゲートウェイはサービスパケットにおいて第2のVLAN識別子を設定してよく、その結果として、スイッチは、第2のVLAN識別子を搬送する変更されたサービスパケットが第2の仮想マシンが配置された第2のVLANに到達することを可能にし、それによって異なるVLAN内の仮想マシン間の通信を実装し得る。
【0019】
第1の態様および第1の態様の第1から第6の可能な実装のいずれか1つによれば、第7の可能な実装では、第1のサービスパケットはVLANパケットであり、第1のサービスパケットの宛先MACアドレスは第2の仮想マシンのMACアドレスである。第2のVLANのネットワーク情報は、第2の仮想マシンのMACアドレスと第2のPCIeリンクを使用することによって第2のコンピューティングノードに接続された別の分散ゲートウェイのIPアドレスとの間の第2の対応を含む。第2の仮想マシンは第2のコンピューティングノード上に配設される。分散ゲートウェイが第2のVLANに到達することができる第2のサービスパケットを生成するために第2のVLANのネットワーク情報に基づいて第1のサービスパケットを変更することは、以下を含む。分散ゲートウェイは、第1のサービスパケットの宛先アドレスに基づいて第2の対応からIPアドレスを取得する。分散ゲートウェイは第1のサービスパケットを第2のサービスパケットにカプセル化し、第2のサービスパケットはオーバーレイパケットであり、第2のサービスパケットの宛先IPアドレスはIPアドレスである。
【0020】
第1の仮想マシンおよび第2の仮想マシンは異なるVLANに配置されるので、異なるVLANは互いと通信することができない。第2の仮想マシンのMACアドレスと別の分散ゲートウェイのIPアドレスとの間の対応は、クラウド管理プラットフォームを使用することによって分散ゲートウェイに配信される。したがって、第1の仮想マシンによって送信され、その宛先アドレスが第2の仮想マシンのMACアドレスであるサービスパケットを受信するとき、分散ゲートウェイはサービスパケットをオーバーレイパケットにカプセル化してよく、オーバーレイパケットの宛先IPアドレスは別の分散ゲートウェイのIPアドレスであり、その結果として、スイッチは、IPアドレスに基づいて、第2の仮想マシンが配置され、PCIeリンクを使用することによって別の分散ゲートウェイに接続された第2のコンピューティングノードにオーバーレイパケットをルーティングし、それによって異なるVLAN内の仮想マシン間の通信を実装し得る。
【0021】
第2の態様によれば、本出願は、分散ゲートウェイを提供する。分散ゲートウェイは、PCIeインターフェースを使用することによって第1のコンピューティングノードに接続される。分散ゲートウェイはスイッチに接続される。第1の仮想マシンは第1のコンピューティングノード上に配設され、第1の仮想マシンは第1のVLANに配置される。分散ゲートウェイは、クラウド管理プラットフォームによって送信された管理パケットを受信するように構成された受信モジュールであって、管理パケットが第2のVLANのネットワーク情報を搬送する、受信モジュールと、第2のVLANのネットワーク情報を記録するように構成された記録モジュールであって、受信モジュールが、サービスデータを搬送し第1の仮想マシンによって第2の仮想マシンに送信された第1のサービスパケットを受信するようにさらに構成され、第2の仮想マシンが第2のVLANに配置される、記録モジュールと、第2のVLANに到達することができる第2のサービスパケットを生成するために第2のVLANのネットワーク情報に基づいて第1のサービスパケットを変更するように構成された変換モジュールであって、第2のサービスパケットがサービスデータを搬送する、変換モジュールと、第2のサービスパケットをスイッチに送信するように構成された送信モジュールとを含む。
【0022】
第2の態様または第2の態様のいずれかの実装は、第1の態様または第1の態様のいずれかの実装に対応する装置実装である。第1の態様または第1の態様のいずれかの実装における説明は、第2の態様または第2の態様のいずれかの実装に適用可能である。詳細は再び本明細書で説明されない。
【0023】
第3の態様によれば、本出願は、分散ゲートウェイと、コンピューティングノードとを含むサーバを提供する。分散ゲートウェイは、ペリフェラルコンポーネントインターコネクトエクスプレスPCIeインターフェースを使用することによってコンピューティングノードに接続され、分散ゲートウェイはスイッチに接続される。第1の仮想マシンはコンピューティングノード上に配設され、第1の仮想マシンは第1の仮想ローカルエリアネットワークVLANに配置される。分散ゲートウェイは、クラウド管理プラットフォームによって送信された管理パケットを受信するように構成され、管理パケットは第2のVLANのネットワーク情報を搬送する。分散ゲートウェイは、第2のVLANのネットワーク情報を記録するようにさらに構成される。第1の仮想マシンは、サービスデータを搬送する第1のサービスパケットを第2の仮想マシンに送信するように構成され、第2の仮想マシンは第2のVLANに配置される。分散ゲートウェイは、第1のサービスパケットを受信するようにさらに構成される。分散ゲートウェイは、第2のVLANに到達することができる第2のサービスパケットを生成するために第2のVLANのネットワーク情報に基づいて第1のサービスパケットを変更することと、第2のサービスパケットをスイッチに送信することであって、第2のサービスパケットがサービスデータを搬送する、送信することとを行うようにさらに構成される。
【0024】
第3の態様または第3の態様のいずれかの実装は、第1の態様または第1の態様のいずれかの実装に対応するシステム実装である。第1の態様または第1の態様のいずれかの実装における説明は、第3の態様または第3の態様のいずれかの実装に適用可能である。詳細は再び本明細書で説明されない。
【0025】
第4の態様によれば、本出願は、プロセッサと、メモリとを含む分散ゲートウェイを提供する。分散ゲートウェイは、第1の仮想マシンが配設されたコンピューティングノードに接続され、分散ゲートウェイはスイッチに接続される。第1の仮想マシンは第1の仮想ローカルエリアネットワークVLANに配置される。メモリはプログラム命令を記憶する。プロセッサは、第1の態様および第1の態様の可能な実装のいずれか1つによる方法を実施するためにプログラム命令を稼働する。
【0026】
第4の態様または第4の態様のいずれかの実装は、第1の態様または第1の態様のいずれかの実装に対応する物理装置実装である。第1の態様または第1の態様のいずれかの実装における説明は、第4の態様または第4の態様のいずれかの実装に適用可能である。詳細は再び本明細書で説明されない。
【0027】
第5の態様によれば、本出願は、第1のサーバと、第2のサーバと、クラウド管理プラットフォームと、スイッチとを含むクラウドコンピューティングデータセンタシステムを提供する。第1のサーバは、第1のペリフェラルコンポーネントインターコネクトエクスプレスPCIeリンクを使用することによって接続された第1のコンピューティングノードおよび第1の分散ゲートウェイを含む。第2のサーバは、第2のPCIeリンクを使用することによって接続された第2のコンピューティングノードおよび第2の分散ゲートウェイを含む。第1の仮想ローカルエリアネットワークVLANに配置された第1の仮想マシンは第1のコンピューティングノード上に配設され、第2のVLANに配置された第2の仮想マシンは第2のコンピューティングノード上に配設される。クラウド管理プラットフォーム、第1の分散ゲートウェイおよび第2の分散ゲートウェイはスイッチに別々に接続される。第1の分散ゲートウェイは、クラウド管理プラットフォームによって送信された管理パケットを受信するように構成され、管理パケットは第2のVLANのネットワーク情報を搬送し、第1の分散ゲートウェイは、第2のVLANのネットワーク情報を記録するように構成される。第1の仮想マシンは、サービスデータを搬送する第1のサービスパケットを第2の仮想マシンに送信するように構成される。第1の分散ゲートウェイは、第1のサービスパケットを受信することと、第2のVLANに到達することができる第2のサービスパケットを生成するために第2のVLANのネットワーク情報に基づいて第1のサービスパケットを変更することと、第2のサービスパケットをスイッチに送信することであって、第2のサービスパケットがサービスデータを搬送する、送信することとを行うように構成される。第2の分散ゲートウェイは、スイッチによって転送された第2のサービスパケットを受信し、第2のサービスパケットにおいて搬送されるサービスデータを第2の仮想マシンに送信するように構成される。
【0028】
任意選択で、第1の分散ゲートウェイは、第1のネットワークアダプタコントローラおよび第1のネットワークアダプタを含む。第1のネットワークアダプタは、第1の物理機能PF、第1の仮想機能VF、および第1の物理ネットワークポートを備える。第1のネットワークアダプタコントローラは第1のPFに接続され、第1の仮想マシンは第1のVFに接続され、第1の物理ネットワークポートはスイッチに接続される。
【0029】
任意選択で、第1のネットワークアダプタは、第1のVFから、第1の仮想マシンによって送信された第1のサービスパケットを受信するように構成される。
【0030】
任意選択で、第1のネットワークアダプタは、第1のサービスパケットを第1のPFに転送するように構成される。第1のネットワークアダプタコントローラは、第1のPFからサービスパケットを取得し、第2のVLANのネットワーク情報に基づいて第1のサービスパケットを第2のサービスパケットに変更し、第2のサービスパケットを第1のPFに送信するように構成される。ネットワークアダプタは、第1のPFから第2のサービスパケットを取得し、第2のサービスパケットを第1の物理ネットワークポートに送信するようにさらに構成される。
【0031】
任意選択で、管理パケットはVLANパケットであり、管理パケットの宛先MACアドレスは第1のネットワークアダプタコントローラのMACアドレスである。第1のネットワークアダプタは、第1のネットワークアダプタコントローラのMACアドレスと第1のPFとの間の第3の対応を記録する。第1のネットワークアダプタは、第1の物理ネットワークポートから管理パケットを受信し、管理パケットの宛先MACアドレスに基づいて第3の対応から第1のPFを選択し、管理パケットを第1のPFに転送するように構成される。
【0032】
第1のネットワークアダプタコントローラは、第1のPFから管理パケットを受信し、管理パケットから第2のVLANのネットワーク情報を取得し、第2のVLANのネットワーク情報を記録するように構成される。
【0033】
任意選択で、第2の分散ゲートウェイは、第2のネットワークアダプタコントローラおよび第2のネットワークアダプタを含む。第2のネットワークアダプタは、第2の物理機能PF、第2の仮想機能VF、および第2の物理ネットワークポートを備える。第2のネットワークアダプタコントローラは第2のPFに接続され、第2の仮想マシンは第2のVFに接続され、第2の物理ネットワークポートはスイッチに接続される。
【0034】
任意選択で、第2のネットワークアダプタは、第2の物理ネットワークポートから、スイッチによって送信された第2のサービスパケットを受信するように構成される。
【0035】
任意選択で、第2のネットワークアダプタは、第2のサービスパケットを第2のPFに転送するように構成される。第2のネットワークアダプタコントローラは、第2のPFから第2のサービスパケットを取得し、第2のサービスパケットを第1のサービスパケットに変更し、第1のサービスパケットを第2のPFに送信するように構成される。第2のネットワークアダプタは、第2のPFから第1のサービスパケットを取得し、第1のサービスパケットを第2のVFに送信するようにさらに構成される。
【0036】
任意選択で、第2のコンピューティングノードはさらに、クラウド管理プラットフォームクライアントを備える。クラウド管理プラットフォームクライアントは、第2のVLANのネットワーク情報を収集し、第2のVLANのネットワーク情報を搬送する登録パケットをクラウド管理プラットフォームに送信するように構成される。
【0037】
任意選択で、第1のサービスパケットおよび第2のサービスパケットはVLANパケットであり、第1のサービスパケットの宛先アドレスは第2の仮想マシンのMACアドレスである。第1のVLAN識別子は第1のVLANネットワークのために設定され、第1のVLAN識別子とは異なる第2のVLAN識別子は第2のVLANネットワークのために設定される。第2のVLANのネットワーク情報は、第2の仮想マシンのMACアドレスと第2のVLAN識別子との間の第1の対応を含む。第1の分散ゲートウェイは、第1のサービスパケットの宛先MACアドレスに基づいて第1の対応から第2のVLAN識別子を取得することと、第2のサービスパケットを生成するために第1のサービスパケットにおいて第2のVLAN識別子を設定することと、第2のサービスパケットをスイッチに送信することであって、第2のVLAN識別子が、第2のサービスパケットを第2の分散ゲートウェイに送信するようにスイッチに示すために使用される、送信することとを行うように構成される。第2の分散ゲートウェイは、スイッチによって送信された第2のサービスパケットを受信し、第2のサービスパケットを第2の仮想マシンに送信するように構成される。
【0038】
任意選択で、第1のサービスパケットはVLANパケットであり、第2のサービスパケットはオーバーレイパケットである。第1のサービスパケットの宛先MACアドレスは第2の仮想マシンのMACアドレスである。第2のVLANのネットワーク情報は、第2の仮想マシンのMACアドレスと第2の分散ゲートウェイのIPアドレスとの間の第2の対応を含む。第1の分散ゲートウェイは、第1のサービスパケットの宛先MACアドレスに基づいて第2の対応から第2の分散ゲートウェイのIPアドレスを取得することと、第1のサービスパケットを第2のサービスパケットにカプセル化することと、第2のサービスパケットをスイッチに送信することであって、第2のサービスパケットの宛先IPアドレスが第2の分散ゲートウェイのIPアドレスである、送信することとを行うように構成される。第2の分散ゲートウェイは、第1のサービスパケットを取得するために第2のサービスパケットに対してカプセル化解除処理を実施し、第1のサービスパケットを第2の仮想マシンに送信するように構成される。
【図面の簡単な説明】
【0039】
図1】本発明の一実施形態によるクラウドコンピューティングデータセンタのシステムの概略構造図である。
図2】本発明の一実施形態によるクラウドコンピューティングデータセンタのシステムの別の概略構造図である。
図3】本発明の一実施形態によるパケット処理方法のデータ対話図である。
図4】本発明の一実施形態によるパケット処理方法の別のデータ対話図である。
図5】本発明の一実施形態によるパケット処理方法の別のデータ対話図である。
図6】本発明の一実施形態によるパケット処理方法の別のデータ対話図である。
図7】本発明の一実施形態によるサーバ1のハードウェアの概略構造図である。
図8】本発明の一実施形態による分散ゲートウェイの装置の概略構造図である。
図9】本発明の一実施形態による分散ゲートウェイの装置の別の概略構造図である。
【発明を実施するための形態】
【0040】
本発明の実施形態で使用される用語が最初に説明される。
【0041】
クラウド管理プラットフォーム:クラウド管理プラットフォームは、クラウドコンピューティングネットワークの仮想マシンを中央で管理するように構成されたプラットフォームである。クラウドコンピューティングネットワークの仮想マシンは複数のコンピューティングノードに分散され、各コンピューティングノードはクラウド管理プラットフォームクライアントを備える。クラウド管理プラットフォームクライアントは、クラウド管理プラットフォームクライアントが配置されたコンピューティングノード上の仮想マシンの状態情報を収集し、状態情報をクラウド管理プラットフォームに報告するように構成される。クラウド管理プラットフォームはユーザ対話インターフェースを備え、ユーザはユーザ対話インターフェースを使用することによって仮想マシンの状態を取得し得る。ユーザはさらに、ユーザ対話インターフェースを使用することによって仮想マシンに対して特異的な管理動作を構成し得る。クラウド管理プラットフォームは管理動作に対応するコマンドをクラウド管理プラットフォームクライアントに送信してよく、クラウド管理プラットフォームクライアントは仮想マシンを管理するためにこのコマンドを稼働してよい。例えば、クラウド管理プラットフォームは、例えば、OpenstackまたはVMware vSphereであり得る。
【0042】
オーバーレイ(overlay)パケット:オーバーレイパケットは、その中に仮想マシンパケットがカプセル化されるイーサネットパケットである。オーバーレイパケットは外側ネットワークアドレスおよび内側ネットワークアドレスを含む。外側ネットワークアドレスは、イーサネットパケットのパケットヘッダ内のネットワークアドレスであり、送信元IPアドレス、宛先IPアドレス、送信元MACアドレス、および宛先MACアドレスを含む。内側ネットワークアドレスは、仮想マシンパケットのパケットヘッダ内のネットワークアドレスであり、送信元IPアドレス、宛先IPアドレス、送信元MACアドレス、および宛先MACアドレスを含む。オーバーレイパケットの実装は、仮想拡張可能ローカルエリアネットワーク(Virtual Extensible Local Area Network、VXLAN)パケット、ネットワーク仮想化汎用ルーティングカプセル化(Network virtualization Generic Routing Encapsulation、NVGRE)パケット、またはステートレストランスポートトンネリング(Stateless Transport Tunneling、STT)パケットであり得る。本発明の実施形態では、オーバーレイパケットは具体的にはVXLANパケットであり得ることに留意されたい。
【0043】
ネットワークアダプタ仮想化:ネットワークアダプタ仮想化は、シングルルート入力/出力仮想化(Single-Root I/O Virtualization、SR-IOV)またはマルチルート入力/出力仮想化(Multi Root Input/Output Virtualization、MR-IOV)を含み得る。ネットワークアダプタ仮想化はネットワークアダプタパススルーとも呼ばれる。SR-IOVパススルーが一例として使用される。ネットワークアダプタがSR-IOVをサポートするとき、ホスト上のネットワークアダプタは、SR-IOV技術を使用することによって、ホスト上で稼働するいくつかの仮想マシンによって共有され得る。ホストがSR-IOVをサポートするネットワークアダプタを使用するとき、ネットワークアダプタのネットワークポートは少なくとも1つの物理機能(Physical Function、PF)および複数の仮想機能(Virtual Function、VF)を仮想化し得る。ホスト上の仮想マシンは少なくとも1つのVFに接続される。ネットワークアダプタは、スイッチの機能を有するスイッチングデバイスを含んでいる。スイッチングデバイスは、媒体アクセス制御(Media Access Control、MAC)テーブルに基づいてデータパケットを転送し、PFと、VFと、物理ネットワークポートとの間のデータパケットの転送を担う。
【0044】
仮想ローカルエリアネットワーク(Virtual Local Area Network、VLAN):仮想ローカルエリアネットワークは、物理LANを複数のブロードキャスト領域に論理的に分割する通信技術である。
【0045】
VLANパケット:VLANパケットはレイヤ2パケットに属し、宛先MACフィールド、送信元MACフィールド、VLAN IDフィールド、およびペイロード(payload)フィールドを含む。他のフィールドは本発明の実施形態の議論の範囲内になく、再び本明細書で説明されない。
【0046】
仮想ローカルエリアネットワーク識別子(Virtual Local Area Network identifier、VLAN ID):仮想ローカルエリアネットワーク識別子はVLANパケットのVIDフィールドである。このフィールドは1つのVLANを一意に識別する。12ビットVIDは4096個の異なる値を表し得る。1つのイーサネットは、2つの予約された値のVLAN以外の最大で4094個のVLANに分割され得る。
【0047】
図1を参照すると、図1は本発明の一実施形態によるクラウドコンピューティングデータセンタのシステムの概略構造図である。図1に示されるように、クラウドコンピューティングデータセンタは、サーバ1、サーバ2、サーバ3、スイッチ4、およびクラウド管理プラットフォーム5を含む。
【0048】
サーバ1はコンピューティングノード11および分散ゲートウェイ12を含み、サーバ2はコンピューティングノード21および分散ゲートウェイ22を含み、サーバ3はコンピューティングノード31および分散ゲートウェイ32を含む。コンピューティングノードは、例えば、物理ホストであり得る。
【0049】
説明を簡単にするために、図1は3つのサーバのみを示していることに留意されたい。しかしながら、実際の適用では、別の量のサーバがあり得る。これは本発明のこの実施形態において限定されない。
【0050】
本発明のこの実施形態では、分散ゲートウェイは、ペリフェラルコンポーネントインターコネクトエクスプレス(Peripheral Component Interconnect Express、PCIe)インターフェースを使用することによってコンピューティングノードに接続され得る。加えて、分散ゲートウェイは、物理ネットワークポートを使用することによってスイッチに接続され得る。
【0051】
スイッチ4は、例えば、トップオブラック(Top of Rack、TOR)スイッチであり得る。例えば、サーバ1から3は同じラック上に配設されてよく、ラックの上部に配置されたTORスイッチに別々に接続される。クラウドコンピューティングデータセンタでは、1つのTORスイッチが1つのラック上に配設され、複数のブレードサーバが各ラックにインストールされ、ラックはTORスイッチを使用することによってラック間接続される。
【0052】
本発明のこの実施形態では、スイッチ4はレイヤ3転送機能を有する。例えば、スイッチ4は、レイヤ3パケットがポート41から43をパススルーすることを可能にする。スイッチ4はさらに、サーバ1内のIPアドレスとスイッチ4およびサーバ1を接続するポート41との間の対応を記録する。レイヤ3パケットが受信されるとき、およびレイヤ3パケットの宛先IPアドレスがサーバ1内のIPアドレスである場合、スイッチ4は、レイヤ3転送機能を実装するためにレイヤ3パケットをポート41に送信する。
【0053】
同様に、スイッチ4はさらに、サーバ2内のIPアドレスとスイッチ4およびサーバ2を接続するポート42との間の対応を記録する。レイヤ3パケットが受信されるとき、およびレイヤ3パケットの宛先IPアドレスがサーバ2内のIPアドレスである場合、スイッチ4は、レイヤ3パケットをポート42に送信する。
【0054】
サーバ1内のIPアドレスは分散ゲートウェイ12のIPアドレスを含み、サーバ2内のIPアドレスは分散ゲートウェイ22のIPアドレスを含む。
【0055】
さらに、スイッチ4はVLAN分離を実装し得る。例えば、スイッチ4およびサーバ1を接続するポート41は、VLAN IDが1であるVLANパケットのみがサーバ1に入ることを可能にするように設定され、スイッチ4およびサーバ2を接続するポート42は、VLAN IDが2であるVLANパケットのみがサーバ2に入ることを可能にするように設定され、スイッチ4およびサーバ3を接続するポート43は、VLAN IDが3であるVLANパケットのみがサーバ3に入ることを可能にするように設定される。スイッチ4およびクラウド管理プラットフォーム5を接続するポート45は、VLAN IDが5であるVLANパケットのみがクラウド管理プラットフォーム5に入ることを可能にするように設定される。
【0056】
本発明のこの実施形態では、1つのVLANがサーバ1の内部に形成され、VLANのVLAN IDは1である。1つのVLANがサーバ2の内部に形成され、VLANのVLAN IDは2である。1つのVLANがサーバ3の内部に形成され、VLANのVLAN IDは3である。スイッチ4は、ポート41、ポート42、ポート43、およびポート45を備える。例えば、VLAN IDが1であるVLANパケットを受信した後、スイッチ4はパケットを各ポートにブロードキャストし、ポート41のみがパケットがパススルーすることを可能にする。
【0057】
本発明のこの実施形態では、スイッチ4は、パケットの宛先MACアドレスを無視し、VLAN IDのみに基づいて、どのポートにパケットが送信されるべきかを選択するように構成される。本発明のいくつかの他の例では、スイッチ4は、パケットの宛先MACアドレスに基づいてポートを選択するように構成され得る。
【0058】
本発明のこの実施形態では、クラウド管理プラットフォーム5は、1つのコンピューティングノード上に配設されてよく、コンピューティングノード上にインストールされたソフトウェアを使用することによって実装されるか、またはクラウド管理プラットフォーム5は、専用ネットワークデバイスを使用することによって実装され得る。これは本発明のこの実施形態において限定されず、サーバ1から3はクラウド管理プラットフォーム5と通信し得る。
【0059】
図2を参照すると、図2は本発明の一実施形態によるクラウドコンピューティングデータセンタのシステムの別の概略構造図である。図2図1のさらなる具体的な説明である。加えて、説明を明確にするために、図1のサーバ3は図2では省略され、サーバ1およびサーバ2の具体的な構造のみが図2に示されている。
【0060】
図2に示されるように、コンピューティングノード11は、第1のクラウド管理プラットフォームクライアント111、仮想マシンVM1、および仮想マシンVM2を含む。分散ゲートウェイ12は、ネットワークアダプタコントローラ121およびネットワークアダプタ122を含む。ネットワークアダプタコントローラ121は、第2のクラウド管理プラットフォームクライアント1211を含む。ネットワークアダプタ122は、ネットワークアダプタパススルー機能をサポートする。ネットワークアダプタ122は、スイッチング装置1221、物理ネットワークポート1222、PF1、PF2、VF1、およびVF2を含む。
【0061】
例えば、スイッチング装置1221は、ソフトウェア、例えば、Open vswitchを使用することによって実装され得る。
【0062】
加えて、オペレーティングシステムはコンピューティングノード11上で稼働してよく、第1のクラウド管理プラットフォームクライアント111はサードパーティソフトウェアとしてオペレーティングシステムにインストールされてよい。第1のクラウド管理プラットフォームクライアント111は、例えば、openstackのnovaエージェントコンポーネントであってよく、novaエージェントコンポーネントはクラウド管理プラットフォーム5のnovaコンポーネントと通信し得る。オペレーティングシステムはネットワークアダプタコントローラ121上で稼働してもよく、第2のクラウド管理プラットフォームクライアント1211はサードパーティソフトウェアとしてオペレーティングシステムにインストールされてよい。第2のクラウド管理プラットフォームクライアント1211は、例えば、openstackのneutronエージェントコンポーネントであってよく、neutronエージェントコンポーネントはクラウド管理プラットフォーム5のneutronコンポーネントと通信し得る。コンピューティングノード11は、例えば、X86プラットフォームベースの物理サーバであってよく、ネットワークアダプタコントローラ121は、例えば、ARMプラットフォームベースのインテリジェントボードカードであってよいことに留意されたい。
【0063】
本発明のこの実施形態では、分散ゲートウェイ12は、互いに接続されたネットワークアダプタコントローラ121およびネットワークアダプタ122を含む。ネットワークアダプタコントローラ121およびネットワークアダプタ122は、PCIeインターフェースを使用することによって接続され得る。ネットワークアダプタコントローラ121は、迅速なパケット処理、例えば、管理パケットに基づいて実装されるネットワーク間伝送を実装するために、ネットワークアダプタ122よりも良いコンピューティング能力を有する。加えて、ネットワークアダプタ122はパススルー機能を有する。ネットワークアダプタ122のPF1はネットワークアダプタコントローラ121にパススルーされ、ネットワークアダプタコントローラ121はネットワークアダプタ122のPF1に接続される。ネットワークアダプタ122のVF1はVM1にパススルーされ、VM1はネットワークアダプタ122のVF1に接続される。
【0064】
さらに、物理ネットワークポート1222はスイッチ4のポート41に接続される。コンピューティングノード11のオペレーティングシステムはPF2に接続され、コンピューティングノード11のオペレーティングシステム上で稼働する第1のクラウド管理プラットフォームクライアント111はPF2を使用することによってネットワークアダプタ122に接続され得る。
【0065】
サーバ2およびサーバ1は同様の構造を有する。詳細については、図2を参照されたい。詳細は再び本明細書で説明されない。
【0066】
加えて、本発明のこの実施形態では、第1のクラウド管理プラットフォームクライアント111および第3のクラウド管理プラットフォームクライアント211はVLAN ID5を事前記録し、VLAN ID5に基づいてクラウド管理プラットフォーム5と通信する。
【0067】
加えて、クラウド管理プラットフォーム5は、ネットワークアダプタコントローラ221のMACアドレスおよびネットワークアダプタコントローラ121のMACアドレスを事前記録する。クラウド管理プラットフォーム5は、ネットワークアダプタコントローラ221のMACアドレスに基づいてネットワークアダプタコントローラ221と通信し、ネットワークアダプタコントローラ121のMACアドレスに基づいてネットワークアダプタコントローラ121と通信する。
【0068】
さらに、スイッチング装置1221のMACテーブルは、
VLAN ID1、
VM1のMACアドレスとVF1との間の対応、
VM2のMACアドレスとVF2との間の対応、
コンピューティングノード11のMACアドレスとPF2との間の対応、および
ネットワークアダプタコントローラ121のMACアドレスとPF1との間の対応
を記録する。
【0069】
スイッチング装置1221が受信されたパケットのMACアドレスをローカルMACテーブル内で見つけることができないとき、スイッチング装置1221はパケットをPF1に送信する。パケットのVLAN IDが1ではないと判定したとき、スイッチング装置1221はパケットを物理ネットワークポート1222に送信する。
【0070】
さらに、スイッチング装置1221が物理ネットワークポート1222からレイヤ3パケットを受信した場合、スイッチング装置1221は最初にレイヤ3パケットをPF1に転送する。
【0071】
同様に、スイッチング装置2221のMACテーブルは、
VLAN ID2、
VM3のMACアドレスとVF3との間の対応、
VM4のMACアドレスとVF4との間の対応、
コンピューティングノード21のMACアドレスとPF4との間の対応、および
ネットワークアダプタコントローラ221のMACアドレスとPF3との間の対応
を記録する。
【0072】
スイッチング装置2221が受信されたパケットのMACアドレスをローカルMACテーブル内で見つけることができないとき、スイッチング装置2221はパケットをPF3に送信する。パケットのVLAN IDが2ではないと判定したとき、スイッチング装置2221はパケットを物理ネットワークポート2222に送信する。
【0073】
さらに、スイッチング装置2221が物理ネットワークポート2222からレイヤ3パケットを受信した場合、スイッチング装置2221は最初にレイヤ3パケットをPF3に転送する。
【0074】
加えて、本発明のこの実施形態では、分散ゲートウェイはネットワークアダプタの機能を有し、分散ゲートウェイのIPアドレスは、PCIeリンクを使用することによって分散ゲートウェイに接続されたコンピューティングノードのものであり、外部ネットワークにさらされるIPアドレスとして使用され得る。
【0075】
図3を参照すると、図3は本発明の一実施形態によるパケット処理方法のデータ対話図である。図3に示されるように、パケット処理方法は以下のステップを含む。
【0076】
ステップS1:第3のクラウド管理プラットフォームクライアント211は、VLAN ID2およびVM3のMACアドレスを取得する。
【0077】
VLAN ID2は、VM3が配置されたVLANの識別子である。VM1およびVM3は異なる仮想ローカルエリアネットワークに属し、VM1のVLAN IDはVM3のVLAN IDとは異なる。
【0078】
ステップS2:第3のクラウド管理プラットフォームクライアント211は、第1の登録パケットをネットワークアダプタ222に送信する。
【0079】
第1の登録パケットは、例えば、VLANパケットであってよく、第1の登録パケットのVLAN IDはVLAN ID5であり、第1の登録パケットのペイロードはVLAN ID2およびVM3のMACアドレスを搬送する。
【0080】
具体的には、第3のクラウド管理プラットフォームクライアント211は、第1の登録パケットをネットワークアダプタ222のPF4に送信する。ネットワークアダプタ222のスイッチング装置2221は、PF4から第1の登録パケットを取得し、第1の登録パケットのVLAN IDがVLAN ID2ではないと判定し、第1の登録パケットを物理ネットワークポート2222に送信する。
【0081】
ステップS3:スイッチング装置2221は、物理ネットワークポート1222を使用することによって第1の登録パケットをスイッチ4のポート42に送信する。
【0082】
ステップS4:スイッチ4は、ポート42から第1の登録パケットを受信し、第1の登録パケットのVLAN ID5に基づいて第1の登録パケットをポート45に送信する。クラウド管理プラットフォーム5は、ポート45から第1の登録パケットを受信する。
【0083】
本発明のこの実施形態では、第1のクラウド管理プラットフォームクライアント111は、VLAN IDおよびコンピューティングノード11上の仮想マシンのMACアドレスを取得し、VLAN IDおよびMACアドレスをクラウド管理プラットフォーム5に報告してもよく、このことは本発明において限定されないことに留意されたい。
【0084】
ステップS5:クラウド管理プラットフォーム5は、第1の登録パケットのペイロードからVLAN ID2およびVM3のMACアドレスを取得し、VLAN ID2およびVM3のMACアドレスに基づいて第2のVLANのネットワーク情報を構成する。第2のVLANのネットワーク情報は、第2のVLANのVLAN ID2と第2のVLANに配置されたVM3のMACアドレスとの間の第1の対応を含む。
【0085】
例えば、クラウド管理プラットフォーム5は、ユーザ対話インターフェースを提供する。ユーザは、第2のVLANのネットワーク情報がコンピューティングノード11上のすべての仮想マシンに適用可能であるように、ユーザ対話インターフェース上で選択し、コンピューティングノード11のための第2のVLANのネットワーク情報を構成する。
【0086】
ステップS6:クラウド管理プラットフォーム5は、第1の管理パケットをスイッチ4のポート45に送信する。
【0087】
第1の管理パケットはVLANパケットであり、第1の管理パケットの宛先アドレスはネットワークアダプタコントローラ121のMACアドレスであり、第1の管理パケットのVLAN IDは1であり、第1の管理パケットのペイロードは第2のVLANのネットワーク情報を搬送する。
【0088】
ステップS7:スイッチ4は、第1の管理パケットのVLAN ID1に基づいて第1の管理パケットをネットワークアダプタ122の物理ネットワークポート1222に送信する。
【0089】
ステップS8:ネットワークアダプタ122は、第1の管理パケットをネットワークアダプタコントローラ121に送信する。
【0090】
具体的には、ネットワークアダプタ122のスイッチング装置1221は、物理ネットワークポート1222から第1の管理パケットを取得し、第1の管理パケットの宛先MACアドレスに基づいてPF1を選択し、第1の管理パケットをPF1に送信する。ネットワークアダプタコントローラ121の第2のクラウド管理プラットフォームクライアント1211は、PF1から第1の管理パケットを取得する。
【0091】
ステップS9:第のクラウド管理プラットフォームクライアント1211は、第1の管理パケットから第2のVLANのネットワーク情報を取得し、第2のVLANのネットワーク情報を記録する。
【0092】
結論として、第のクラウド管理プラットフォームクライアント1211は、コンピューティングノード11上のユーザによって構成されたすべての仮想マシンの第2のVLANのネットワーク情報を記録してよく、その後、第2のVLANのネットワーク情報を使用することによってVLAN間通信が実装されてよい。
【0093】
本発明のこの実施形態では、第1のクラウド管理プラットフォームクライアント111は、VLAN ID1およびVM1のMACアドレスを取得し、VLAN ID1およびVM1のMACアドレスを第1のVLANのネットワーク情報としてクラウド管理プラットフォーム5に報告してもよいことに留意されたい。
【0094】
図4を参照すると、図4は本発明の一実施形態によるパケット処理方法の別のデータ対話図である。図4図3の続きである。パケット処理方法は以下のステップをさらに含む。
【0095】
ステップS10:VM1は、第1のサービスパケットをネットワークアダプタ122に送信する。
【0096】
第1のサービスパケットはVLANパケットであり、第1のサービスパケットの送信元MACアドレスはVM1のMACアドレスであり、第1のサービスパケットの宛先MACアドレスはVM3のMACアドレスであり、第1のサービスパケットのペイロードはサービスデータを搬送する。本発明のこの実施形態では、VM1が第1のサービスパケットをVM3に送信する前に、VM3が配置されたVLANネットワークのVLAN IDは不明である。したがって、VM1は第1のサービスパケットのVLAN IDをヌルに設定し、VM1は第1のサービスパケットをVF1に送信する。
【0097】
ステップS11:ネットワークアダプタ122は、第1のサービスパケットをネットワークアダプタコントローラ121に転送する。
【0098】
ネットワークアダプタ122は、VF1から第1のサービスパケットを取得し、第1のサービスパケットの宛先MACアドレス、すなわち、VM3のMACアドレスがローカルにないと判定し、第1のサービスパケットをPF1に転送する。
【0099】
ステップS12:ネットワークアダプタコントローラ121は、第2のVLANのネットワーク情報に基づいて第1のサービスパケットを変更する。
【0100】
のクラウド管理プラットフォームクライアント1211は、PF1から第1のサービスパケットを取得し、第1のサービスパケットの宛先MACアドレスに基づいて第2のVLANのネットワーク情報からVLAN ID2を取得し、第1のサービスパケットのVLAN IDをVLAN ID2に設定し得る。したがって、VLAN ID2を搬送する第2のサービスパケットが生成され、第2のサービスパケットのペイロードがサービスデータを搬送する。
【0101】
スイッチ4およびサーバ2を接続するポート42は、VLAN ID2を有するパケットのみがパススルーすることを可能にする。第1のサービスパケットがスイッチ4に直接送信される場合、スイッチ4は、第1のサービスパケットにおいて搬送されるVLAN IDがヌルであると判定し、第1のサービスパケットをスイッチ4のすべてのポートにブロードキャストする。ポート42はVLAN ID2を有するパケットのみがパススルーすることを可能にするので、ポート42は第1のサービスパケットをサーバ2に送信しない。
【0102】
したがって、本発明のこの実施形態における第のクラウド管理プラットフォームクライアント1211は、スイッチ4がポート42を使用することによって第2のサービスパケットをサーバ2に送信することができることを確実にするために、第1のサービスパケットを第2のサービスパケットに変更する。
【0103】
ステップS13:ネットワークアダプタコントローラ121は、第2のサービスパケットをネットワークアダプタ122に送信する。
【0104】
ネットワークアダプタコントローラ121は第2のサービスパケットをPF1に送信し、ネットワークアダプタ122のスイッチング装置1221はPF1から第2のサービスパケットを取得する。
【0105】
ステップS14:ネットワークアダプタ122は、第2のサービスパケットをスイッチ4に送信する。
【0106】
ネットワークアダプタ122のスイッチング装置1221は、第2のサービスパケットのVLAN IDが1ではないと判定し、第2のサービスパケットを物理ネットワークポート1222に送信する。
【0107】
ステップS15:スイッチ4は、ポート41から第2のサービスパケットを受信し、第2のサービスパケットをネットワークアダプタ222に転送する。
【0108】
スイッチ4は、第2のサービスパケットのVLAN ID2に基づいて第2のサービスパケットをポート42に送信し、その結果として、第2のサービスパケットが物理ネットワークポート2222に到達する。
【0109】
ステップS16:ネットワークアダプタ222は、第2のサービスパケットをVM3に転送する。
【0110】
ネットワークアダプタ222のスイッチング装置2221は、物理ネットワークポート2222から第2のサービスパケットを取得し、第2のサービスパケットの宛先MACアドレスに基づいてVF3を選択し、第2のサービスパケットをVF3に送信する。VM3は、VF3から第2のサービスパケットを取得する。VM3は、サービスデータに基づいてサービス処理を実施するために、第2のサービスパケットのペイロードからサービスデータを取得し得る。
【0111】
分散ゲートウェイ12は、第1のサービスパケットを、VLAN ID2を用いて構成された第2のサービスパケットに変更するので、第2のサービスパケットは、スイッチ4を使用することによってサーバ2に成功裏に伝送され、それによってVLAN間通信を実装し得る。
【0112】
上記の実施形態は、分散ゲートウェイがVLAN間パケット伝送を実装するプロセスを示す。本発明の実施形態では、分散ゲートウェイは大規模なレイヤ2ネットワーク間通信を実装するためにオーバーレイパケットのカプセル化を実装してもよいことに留意されたい。詳細については、図5を参照されたい。図5は、本発明の一実施形態によるパケット処理方法の別のデータ対話図である。
【0113】
図5に示されるように、パケット処理方法は以下のステップを含む。
【0114】
ステップS17:第3のクラウド管理プラットフォームクライアント211は、VM3のMACアドレスを取得する。
【0115】
ステップS18:第3のクラウド管理プラットフォームクライアント211は、ネットワークアダプタコントローラ221のIPアドレスを取得する。
【0116】
本発明のこの実施形態では、ネットワークアダプタコントローラ221のIPアドレスは分散ゲートウェイ22およびコンピューティングノードの外部IPアドレスとして使用され得ることに留意されたい。
【0117】
ステップS19:第3のクラウド管理プラットフォームクライアント211は、第2の登録パケットを生成し、第2の登録パケットをネットワークアダプタ222に送信する。
【0118】
第2の登録パケットはVLANパケットであり、第2の登録パケットのペイロードはVM3のMACアドレスおよび分散ゲートウェイ12のIPアドレスを搬送し、第2の登録パケットのVLAN IDは5である。
【0119】
具体的には、第3のクラウド管理プラットフォームクライアント211は、第2の登録パケットをPF4に送信する。
【0120】
ステップS20:ネットワークアダプタ222は、第2の登録パケットをスイッチ4に送信する。
【0121】
具体的には、ネットワークアダプタ222のスイッチング装置2221は、PF4から第2の登録パケットを取得し、第2の登録パケットのVLAN IDが2ではないと判定し、第2の登録パケットを物理ネットワークポート2222に送信する。
【0122】
ステップS21:スイッチ4は、第2の登録パケットのVLAN ID5に基づいて第2の登録パケットをクラウド管理プラットフォーム5に転送する。
【0123】
具体的には、スイッチ4は、スイッチ4および物理ネットワークポート2222を接続するポート42から第2の登録パケットを受信し、第2の登録パケットのVLAN ID5に基づいて第2の登録パケットをポート45に送信する。クラウド管理プラットフォーム5は、ポート45から第2の登録パケットを受信する。
【0124】
本発明のこの実施形態では、第1のクラウド管理プラットフォームクライアント111は、コンピューティングノード21上の仮想マシンのMACアドレスおよびコンピューティングノード21のIPアドレスを取得し、MACアドレスおよびIPアドレスをクラウド管理プラットフォーム5に報告してもよく、このことは本発明のこの実施形態において限定されないことに留意されたい。
【0125】
ステップS22:クラウド管理プラットフォーム5は、第2の登録パケットを受信し、第2の登録パケットからVM3のMACアドレスおよびコンピューティングノード21のIPアドレスを取得し、第2のVLANのネットワーク情報を構成する。第2のVLANのネットワーク情報は、VM3のMACアドレスとコンピューティングノード21のIPアドレスとの間の対応を含む。
【0126】
任意選択で、ユーザは、クラウド管理プラットフォーム5を使用することによってコンピューティングノード11のための第2のVLANのネットワーク情報を構成し得る。
【0127】
ステップS23:クラウド管理プラットフォーム5は、第2の管理パケットを生成し、第2の管理パケットをスイッチ4に送信する。
【0128】
第2の管理パケットはVLANパケットであってよく、第2の管理パケットの宛先MACアドレスはネットワークアダプタコントローラ121のMACアドレスであり、第2の管理パケットにおいて搬送されるVLAN IDは1である。MACアドレスおよびVLAN IDは、ユーザによって指定され得る。ユーザがコンピューティングノード11上のすべての仮想マシンに対して転送構成を実施することを望む場合、コンピューティングノード11に接続されたネットワークアダプタコントローラ121のMACアドレスおよびスイッチ4のポート41をパススルーすることを許可されたVLAN ID2が、クラウド管理プラットフォーム5を使用することによって選択され得る。
【0129】
ステップS24:スイッチ4は、第2の管理パケットをネットワークアダプタ122に送信する。
【0130】
具体的には、スイッチ4は、第2の管理パケットのVLAN ID1に基づいて第2の管理パケットをポート41に送信し、ポート41は、第2の管理パケットがネットワークアダプタ122の物理ネットワークポート1222に入ることを可能にする。
【0131】
ステップS25:ネットワークアダプタ122は、第2の管理パケットをネットワークアダプタコントローラ121に送信する。
【0132】
具体的には、ネットワークアダプタ122のスイッチング装置1221は、物理ネットワークポート1222から第2の管理パケットを取得し、第2の管理パケットの宛先MACアドレスに基づいてPF1を選択し、第2の管理パケットをPF1に送信する。
【0133】
ステップS26:ネットワークアダプタコントローラ121は、第2の管理パケットから第2のVLANのネットワーク情報を取得し、第2のVLANのネットワーク情報を記録する。
【0134】
具体的には、ネットワークアダプタコントローラ121の第のクラウド管理プラットフォームクライアント1211は、PF1から第2の管理パケットを取得し、第2の管理パケットにおいて搬送される第2のVLANのネットワーク情報を取得し、第2のVLANのネットワーク情報を記録する。
【0135】
本発明のこの実施形態では、第1のクラウド管理プラットフォームクライアント111は、VM1のMACアドレスおよびコンピューティングノード11のIPアドレスを取得し、VM1のMACアドレスおよびコンピューティングノード11のIPアドレスを第1のVLANのネットワーク情報としてクラウド管理プラットフォーム5に報告してもよいことに留意されたい。
【0136】
図6を参照すると、図6は本発明の一実施形態によるパケット処理方法の別のデータ対話図である。図6図5の続きである。図5に続いて、パケット処理方法は以下のステップをさらに含む。
【0137】
ステップS27:VM1は、第3のサービスパケットをネットワークアダプタ122に送信する。
【0138】
第3のサービスパケットはVLANパケットであり、第3のサービスパケットの送信元MACアドレスはVM1のMACアドレスであり、第3のサービスパケットの宛先MACアドレスはVM3のMACアドレスであり、第3のサービスパケットのペイロードはサービスデータを搬送する。VM1はVM3が配置されたVLANネットワークのVLAN IDを知らず、第3のサービスパケットのVLAN IDはヌルであり、VM1は第3のサービスパケットをVF1に送信する。
【0139】
ステップS28:ネットワークアダプタ122は、第3のサービスパケットをネットワークアダプタコントローラ121に転送する。
【0140】
ネットワークアダプタ122は、VF1から第3のサービスパケットを取得し、VM3のMACアドレスがローカルにないと判定し、第3のサービスパケットをPF1に転送する。
【0141】
ステップS29:ネットワークアダプタコントローラ121は、第2のVLANのネットワーク情報に基づいて第3のサービスパケットを変更する。
【0142】
のクラウド管理プラットフォームクライアント1211は、PF1から第3のサービスパケットを取得し、第3のサービスパケットの宛先MACアドレスに基づいて第2のVLANのネットワーク情報から分散ゲートウェイ12のIPアドレスを取得し、第3のサービスパケットをオーバーレイパケットにカプセル化する。オーバーレイパケットの宛先IPアドレスはコンピューティングノード21のIPアドレスであり、オーバーレイパケットの宛先MACアドレスはコンピューティングノード21のネクストホップデバイスのMACアドレスである。オーバーレイパケットは第3のサービスパケットを搬送する。
【0143】
例えば、オーバーレイパケットはVXLANパケットであり得る。
【0144】
ステップS30:ネットワークアダプタコントローラ121は、オーバーレイパケットをネットワークアダプタ122に送信する。
【0145】
ネットワークアダプタコントローラ121の第のクラウド管理プラットフォームクライアント1211は、オーバーレイパケットをPF1に送信し、ネットワークアダプタ122のスイッチング装置1221は、PF1からオーバーレイパケットを取得する。
【0146】
ステップS31:ネットワークアダプタ122は、オーバーレイパケットをスイッチ4に送信する。
【0147】
ネットワークアダプタ122のスイッチング装置1221は、オーバーレイパケットの宛先MACアドレスがローカルにないと判定し、オーバーレイパケットを物理ネットワークポート1222に送信し、その結果として、オーバーレイパケットがスイッチ4に到達する。
【0148】
ステップS32:スイッチ4は、ポート41からオーバーレイパケットを受信し、オーバーレイパケットをネットワークアダプタ222に転送する。
【0149】
スイッチ4は、オーバーレイパケットの宛先IPアドレスに基づいてオーバーレイパケットをポート42に送信し、スイッチング装置2221は、物理ポート2222からオーバーレイパケットを取得する。
【0150】
ステップS33:ネットワークアダプタ222は、オーバーレイパケットをネットワークアダプタコントローラ221に転送する。
【0151】
ネットワークアダプタ222のスイッチング装置2221は、物理ネットワークポート2222からオーバーレイパケットを取得し、オーバーレイパケットの宛先IPアドレスに基づいてPF3を選択し、オーバーレイパケットをPF3に送信する。
【0152】
ステップS34:ネットワークアダプタコントローラ221は、オーバーレイパケットにおいて搬送される第3のサービスパケットを取得するためにオーバーレイパケットをカプセル化解除する。
【0153】
ネットワークアダプタコントローラ221の第4のクラウド管理プラットフォームクライアント2211は、PF3からオーバーレイパケットを取得し、オーバーレイパケットにおいて搬送される第3のサービスパケットを取得するためにオーバーレイパケットをカプセル化解除する。
【0154】
ステップS35:ネットワークアダプタコントローラ221は、第3のサービスパケットをネットワークアダプタ222に送信する。
【0155】
ネットワークアダプタコントローラ221の第4のクラウド管理プラットフォームクライアント2211は、第3のサービスパケットをPF3に送信する。
【0156】
ステップS36:ネットワークアダプタ222は、第3のサービスパケットをVM3に送信する。
【0157】
ネットワークアダプタ222のスイッチング装置2221は、PF3から第3のサービスパケットを取得し、第3のサービスパケットの宛先MACアドレスに基づいてVF3を選択し、第3のサービスパケットをVF3に送信する。VM3は、VF3から第3のサービスパケットを取得し、第3のサービスパケットのペイロードからサービスデータを取得し、サービスデータに基づいてサービス処理を実施する。
【0158】
分散ゲートウェイ12は第3のサービスパケットをオーバーレイパケットに変更するので、オーバーレイパケットは、VLAN間通信を実装するために、スイッチ4を使用することによってサーバ2に成功裏に伝送され得る。
【0159】
結論として、サーバのローカル分散ゲートウェイが故障したとき、サーバのローカルVMのみが影響を受ける。分散ゲートウェイを用いて構成されるので、他のサーバは影響を受けない。ネットワークは単一の分散ゲートウェイの故障による影響を受けない。
【0160】
本発明のこの実施形態では、サーバ1の分散ゲートウェイ12はネットワークアダプタコントローラ121およびネットワークアダプタ122を使用することによって実装される。ネットワークアダプタコントローラ121、ネットワークアダプタ122、およびコンピューティングノード11は、PCIeリンクを使用することによって互いに接続され得る。詳細については、図7を参照されたい。図7は本発明の一実施形態によるサーバ1のハードウェアの概略構造図である。
【0161】
図7に示されるように、コンピューティングノード11のPCIeインターフェース1103は、PCIeリンクを形成するためにネットワークアダプタコントローラ121のPCIeインターフェース12103に接続される。コンピューティングノード11のPCIeインターフェース1104は、PCIeリンクを形成するためにネットワークアダプタ122のPCIeインターフェース12203に接続される。ネットワークアダプタコントローラ121のPCIeインターフェース12104は、PCIeリンクを形成するためにネットワークアダプタ122のPCIeインターフェース12204に接続される。
【0162】
コンピューティングノード11は、PCIeインターフェース1103を使用することによってネットワークアダプタコントローラ121に電力を供給し、PCIeインターフェース1104を使用することによってネットワークアダプタ122に電力を供給し得る。ネットワークアダプタ122は、PCIeインターフェース12203が配置されたPCIeリンクを使用することによってコンピューティングノード11のためのパススルー機能を提供し得る。ネットワークアダプタ122はさらに、PCIeインターフェース12204が配置されたPCIeリンクを使用することによってパススルー機能を提供し得る。プロセッサ1101は、パワフルなコンピューティング能力を備えたX86アーキテクチャの1つまたは複数のプロセッサであってよく、プロセッサ12101は、比較的強力なコンピューティング能力を備えたARMアーキテクチャのプロセッサであってよく、プロセッサ12201は、一般的なコンピューティング能力を備えたプロセッサであってよい。
【0163】
分散ゲートウェイ22も同様の構造を有し、詳細は本明細書で説明されない。
【0164】
本発明のいくつかの他の例では、分散ゲートウェイはスマートネットワークアダプタを使用することによって独立して実装されてもよく、例えば、物理ネットワークポートおよびスイッチング装置はネットワークアダプタコントローラに組み込まれ、このことは本発明のこの実施形態において限定されないことに留意されたい。
【0165】
図8を参照すると、図8は本発明の一実施形態による分散ゲートウェイの装置の概略構造図である。
【0166】
図8に示されるように、分散ゲートウェイは、
クラウド管理プラットフォームによって送信された管理パケットを受信するように構成された受信モジュール411であって、管理パケットが第2のVLANのネットワーク情報を搬送する、受信モジュール411と、
第2のVLANのネットワーク情報を記録するように構成された記録モジュール413であって、
受信モジュール411が、サービスデータを搬送し第1の仮想マシンによって第2の仮想マシンに送信された第1のサービスパケットを受信するようにさらに構成され、第2の仮想マシンが第2のVLANに配置される、記録モジュール413と、
第2のVLANに到達することができる第2のサービスパケットを生成するために第2のVLANのネットワーク情報に基づいて第1のサービスパケットを変更するように構成された変換モジュール414であって、第2のサービスパケットがサービスデータを搬送する、変換モジュール414と、
第2のサービスパケットをスイッチに送信するように構成された送信モジュール412と
を含む。各機能モジュールの特定の機能も図1から図6に示された実施形態において説明され、詳細は再び本明細書で説明されない。
【0167】
図9を参照すると、図9は本発明の一実施形態による分散ゲートウェイの装置の別の概略構造図である。
【0168】
図9に示されるように、分散ゲートウェイは処理ユニット421および通信インターフェース422を含み得る。処理ユニット421は、物理サーバ上で稼働するオペレーティングシステムおよび様々なソフトウェアプログラムによって定義された機能を実行するように、例えば、仮想スイッチの機能を実装するように、構成される。通信インターフェース422は、別のコンピューティングノードと通信し、対話するように構成される。別のデバイスは別の物理サーバであり得る。具体的には、通信インターフェース422はネットワークアダプタであり得る。任意選択で、物理サーバは入力/出力インターフェース423をさらに含み得る。入力/出力インターフェース423は入力/出力デバイスに接続され、入力/出力インターフェース423は入力情報を受信し、動作結果を出力するように構成される。入力/出力インターフェース423は、マウス、キーボード、ディスプレイ、CD-ROMドライブなどであり得る。任意選択で、物理サーバは、一般的に外部メモリと呼ばれる二次メモリ424をさらに含み得る。二次メモリ424の記憶媒体は、磁気媒体(例えば、フロッピーディスク、ハードディスク、または磁気テープ)、光媒体(例えば、光ディスク)、半導体媒体(例えば、ソリッドステートドライブ)などであり得る。処理ユニット421は複数の特定の実装形態を有し得る。例えば、処理ユニット421はプロセッサ4212およびメモリ4211を含み得る。プロセッサ4212は、メモリ4211に記憶されたプログラム命令に基づいて、図2から図4に示された実施形態における分散ゲートウェイ12または分散ゲートウェイ22の関連動作を実施する。プロセッサ4212は中央処理ユニット(CPU)またはグラフィックス処理ユニット(graphics processing unit、GPU)であり得る。プロセッサ4212はシングルコアプロセッサまたはマルチコアプロセッサであり得る。処理ユニット421は、内蔵処理論理を備えた論理デバイス、例えば、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array、FPGA)またはデジタル信号プロセッサ(digital signal processor、DSP)を使用することによって独立して実装されてもよい。
【0169】
便宜的で簡潔な説明の目的のために、上記のシステム、装置、およびユニットの詳細なワーキングプロセスについては上記の方法実施形態における対応するプロセスを参照されたく、詳細は再び本明細書で説明されないことは、当業者によって明確に理解され得る。
【0170】
さらに、本発明の別の実施形態では、仮想マシンに取って代わるためにコンテナが使用され得る。これは本発明のこの実施形態において限定されない。
【0171】
上記で説明された任意の装置実施形態は例示的なものにすぎないことに留意されたい。別個の部品として説明されたユニットは、物理的に別個であってよいかまたは物理的に別個でなくてよく、ユニットとして表示された部品は、物理ユニットであってよいかまたは物理ユニットでなくてよく、1つの位置に配置されてよいか、または複数のネットワークユニット上に分散されてよい。プロセスのいくつかまたはすべては、実施形態の解決策の目的を達成するための実際の要件に基づいて選択され得る。加えて、本発明によって提供される装置実施形態の添付の図面において、プロセス間の接続関係は、モジュールが、具体的には1つまたは複数の通信バスまたは信号ケーブルとして実装され得る互いとの通信接続を有することを示す。当業者は、創造的な取り組みなしに、本発明の実施形態を理解し、実装し得る。
【0172】
上記の実装の説明に基づいて、必要なユニバーサルハードウェアに加えてソフトウェアによって、または専用集積回路、専用CPU、専用メモリ、専用コンポーネントなどを含む専用ハードウェアによって、本発明が実装され得ることを当業者は明確に理解し得る。一般的に、コンピュータプログラムによって実施されることが可能である任意の機能は、対応するハードウェアを使用することによって容易に実装されることが可能である。さらに、同じ機能を達成するために使用される特定のハードウェア構造は、様々な形態、例えば、アナログ回路、デジタル回路、専用回路などの形態であってよい。しかしながら、本発明に関しては、ソフトウェアプログラム実装は、ほとんどの場合において、より良い実装である。そのような理解に基づいて、従来技術に本質的にまたは部分的に寄与する本発明の技術的解決策はソフトウェア製品の形態で実装され得る。ソフトウェア製品は、コンピュータのフロッピーディスク、USBフラッシュドライブ、リムーバブルハードディスク、読取り専用メモリ(Read-Only Memory、ROM)、ランダムアクセスメモリ(Random Access Memory、RAM)、磁気ディスク、または光ディスクなどの可読記憶媒体に記憶され、本発明の実施形態で説明された方法を実施するように(パーソナルコンピュータ、ホスト、ネットワークデバイスなどであり得る)コンピュータデバイスに命令するためのいくつかの命令を含む。
【0173】
上記のシステム、装置、およびユニットの詳細なワーキングプロセスについては、上記の方法実施形態における対応するプロセスを参照されたく、詳細は再び本明細書で説明されないことは、当業者によって明確に理解され得る。
【0174】
上記の説明は本発明の特定の実装にすぎないが、本発明の保護範囲を限定することは意図されていない。本発明で開示される技術的範囲内で当業者によって容易に考え出される任意の変形または置換は、本発明の保護範囲内に入るものとする。したがって、本発明の保護範囲は、特許請求の範囲の保護範囲に従うものとする。
図1
図2
図3
図4
図5
図6
図7
図8
図9