JP6613308B2 - ダイナミッククラウドにサブネット管理(sa)クエリキャッシングを提供するためのシステムおよび方法 - Google Patents

ダイナミッククラウドにサブネット管理(sa)クエリキャッシングを提供するためのシステムおよび方法 Download PDF

Info

Publication number
JP6613308B2
JP6613308B2 JP2017522887A JP2017522887A JP6613308B2 JP 6613308 B2 JP6613308 B2 JP 6613308B2 JP 2017522887 A JP2017522887 A JP 2017522887A JP 2017522887 A JP2017522887 A JP 2017522887A JP 6613308 B2 JP6613308 B2 JP 6613308B2
Authority
JP
Japan
Prior art keywords
virtual machine
host node
host
node
subnet manager
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017522887A
Other languages
English (en)
Other versions
JP2017538201A5 (ja
JP2017538201A (ja
Inventor
タソウラス,エバンジェロス
ヨンセン,ビョルン・ダグ
グラン,アーンスト・ガンナー
Original Assignee
オラクル・インターナショナル・コーポレイション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オラクル・インターナショナル・コーポレイション filed Critical オラクル・インターナショナル・コーポレイション
Publication of JP2017538201A publication Critical patent/JP2017538201A/ja
Publication of JP2017538201A5 publication Critical patent/JP2017538201A5/ja
Application granted granted Critical
Publication of JP6613308B2 publication Critical patent/JP6613308B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/60Subscription-based services using application servers or record carriers, e.g. SIM application toolkits

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Description

著作権表示:
この特許文献の開示の一部は、著作権保護の対象となる題材を含んでいる。著作権の所有者は、特許商標庁の包袋または記録に掲載されるように特許文献または特許情報開示を誰でも複製できることに対して異議はないが、その他の点ではすべての如何なる著作権をも保有する。
発明の分野:
本発明は概してコンピュータシステムに関し、特にクラウド環境に関する。
背景:
インフィニバンド(InfiniBand)サブネットにおいては、サブネットマネージャ(Subnet Manager:SM)が潜在的な障害となる。インフィニバンド・サブネットのサイズが大きくなると、ホスト間のパスの数が多項式的に増加し、多くの同時発生的なパス決定の要求を受取ったときにSMがタイムリーにネットワークのために機能することができなくなるかもしれない。このスケーラビリティの問題は、ダイナミック仮想化クラウド環境においてさらに増幅される。インフィニバンド相互接続された仮想マシン(Virtual Machine:VM)がライブマイグレートする(live migrate)と、VMアドレスが変更される。これらのアドレス変更により、結果として、通信ピアが新しいパス特徴を解釈するためにサブネット管理(Subnet Administration:SA)パス記録クエリをSMに送信したときに、SMに負荷が追加されることとなる。
概要:
システムおよび方法は、クラウド環境においてサブネット管理をサポートすることができる。クラウド環境における仮想マシンマイグレーション(migration)中に、サブネットマネージャは効率的なサービスを遅延させる障害ポイントになる可能性がある。システムおよび方法は、マイグレーション後に仮想マシンに確実に複数のアドレスを保持させることによって、この障害ポイントを軽減させることができる。当該システムおよび方法は、マイグレートされた仮想マシンとの通信を回復させるときに、クラウド環境内の各々のホストノードを、仮想マシンが利用できるローカルキャッシュに関連付けることをさらに可能にし得る。
一実施形態に従った、クラウド環境におけるVMライブマイグレーションをサポートする例を示す図である。 一実施形態に従った、2つのホスト間の接続を確立するプロトコルの例を示す図である。 一実施形態に従った、接続の途絶時に2つのノード間で継続中の通信の例を示す図である。 一実施形態に従った、クラウド環境においてSAパス・キャッシングをサポートする例を示す図である。 本発明の一実施形態に従った、クラウド環境においてSAパス・キャッシングをサポートする例を示す図である。 一実施形態に従った、クラウド環境においてサブネット管理をサポートするための方法の例を示す図である。
詳細な説明:
本発明は、同様の参照符号で同様の要素を示している添付の図面において、限定によってではなく例示によって説明されている。この開示において「ある」または「1つの」または「いくつかの」実施形態を言及している場合、このような言及は必ずしも同じ実施形態に対するものではなく、「少なくとも1つ」という意味である。
本発明の以下の記載は、高性能ネットワークプロトコルについての一例としてインフィニバンド(IB)ネットワークプロトコルを用いている。他のタイプの高性能ネットワークプロトコルが制限なしに使用可能であることは当業者にとって明らかであるだろう。
クラウド環境において仮想マシン(virtual machine:VM)マイグレーション・サブネット管理(subnet administration:SA)パス・キャッシングをサポートすることができるシステムおよび方法がこの明細書中に記載される。
一実施形態に従うと、高性能コンピューティング(High Performance Computing:HPC)を提供することができるクラウドコンピューティングを提供することができる。HPC・アズ・ア・サービス(HPC-as-a-service)をコンピューティングクラウド内に提供することができ、このHPC・アズ・ア・サービスは仮想HPC(virtual HPC:vHPC)クラスタを考慮に入れたものであって、高性能相互接続ソリューションを用いてこの仮想HPCクラスタに対応し得る。
一実施形態に従うと、各々のIBサブネットはサブネットマネージャ(SM)を利用することができる。各々のSMは、ネットワーク初期化、トポロジー発見、パス演算、ならびに、スイッチおよびホストチャネルアダプタ(Host Channel Adapter:HCA)上のIBポートの構成のために機能し得る。大規模なサブネットでは、ノード間で利用可能なパスが多項式的に大きくなる可能性があり、パス決定のための多くの同時発生的な要求を受取ったときに、SMが潜在的な障害になる可能性がある。このスケーラビリティの問題は、ダイナミックな仮想化クラウド環境においては、IB相互接続されている仮想マシンがライブマイグレートしたときにさらに増幅される。
効率的な仮想化をサポートするために、高帯域および低レイテンシを維持しながらも、IBホストチャネルアダプタ(HCA)はシングルルートI/O仮想化(Single Root I/O Virtualization:SR−IOV)をサポートすることができる。IB接続されたノードは各々、3つのさまざまなアドレスを有する。ライブマイグレーションが発生すると、パススルーされたインターフェイス(the passed through interface)を取外すことでダウンタイムが発生するにもかかわらず、IBアドレスのうち1つ以上を変更することができる。マイグレーション中のVMと通信する他のノードは接続性を失い、サブネット管理(SA)パス記録クエリをSMに送信することによって再接続するための新しいアドレスを発見しようと試みる。基盤ネットワークにおいて結果として生じるSM宛ての通信は有効になり得る。大規模なネットワークにおいては、SM宛てのメッセージがこのようにVMのマイグレートによって溢れかえると、SMに対する負荷が増えるのに応じて、全体的なネットワークレイテンシが大きくなる可能性がある。
一実施形態に従うと、さらに、VMマイグレーションによって引起こされてSMによって受取られるSA要求の量を減らすことによって、SMに対する負荷を減らすことが望ましい。方法およびシステムは、VMがマイグレーション後にその同じアドレスを保持することができるシステムを実現することによって、これを達成することができる。加えて、2つのノード間の初期接続が確立された後に、SAパス・キャッシングメカニズムを用いてSAクエリの数を激減させることができる。
一実施形態に従うと、インフィニバンドは一般に3つの異なるタイプのアドレスを用いている。まず、16ビットのローカル識別子(Local Identifier:LID)が挙げられる。少なくとも1つのLIDは、SMによって各々のHCAポートおよび各々のスイッチに割当てられている。LIDを用いて、サブネット内のトラフィックをルーティングすることができる。LIDが16ビット長であるので、65536個の固有のアドレスの組合せを構成することができ、そのうち49151(0×0001−0×BFFF)個だけをユニキャストアドレスとして用いることができる。結果として、利用可能なユニキャストアドレスの数は、IBサブネットの最大サイズを定義することとなる。
第2のタイプのアドレスは、一般に、製造業者によって各々の装置(たとえば、HCAおよびスイッチ)ならびに各々のHCAポートに割当てられる64ビットのグローバル固有識別子(Global Unique Identifier:GUID)である。SMは、SR−IOV VFが使用可能にされたときに有用になり得る追加のサブネット固有のGUIDをHCAポートに割当て得る。
第3のタイプのアドレスは128ビットのグローバル識別子(Global Identifier:GID)である。GIDは、一般に、有効なIPv6ユニキャストアドレスであり、少なくとも1つが各々のHCAポートおよび各々のスイッチに割当てられている。GIDは、ファブリックアドミニストレータによって割当てられたグローバルに固有の64ビットプレフィックスと各々のHCAポートのGUIDアドレスとを組合わせることによって形成される。
本発明の以下の記載は、高性能ネットワークについての一例としてインフィニバンドネットワークを用いる。他のタイプの高性能ネットワークを制限なしで使用できることは当業者にとって明らかであるだろう。また、本発明の以下の記載は、仮想化モデルについての一例としてKVM仮想化モデルを用いている。他のタイプの仮想化モデル(たとえばXen)を制限なしに使用できることは当業者にとっては明らかであるだろう。
本発明の以下の記載は、加えて、OpenStack、OpenSMおよびRDS Linux(登録商標)カーネルモジュールを利用する。OpenStackは、データセンタを通じて処理、記憶およびネットワークリソースのプールを制御する相互に関係付けられたプロジェクトのグループを含むクラウド・コンピューティング・ソフトウェアプラットホームである。OpenSMは、OpenIBの上で実行させることができるインフィニバンド対応のサブネットマネージャおよびアドミニストレーションである。リライアブル・データグラム・ソケット(Reliable Datagram Socket:RDS)は、データグラムを提供するための高性能で低レイテンシかつ信頼性のある非接続プロトコルである。他の同様のプラットフォームを制限なしで利用できることは当業者にとって明らかであるだろう。
本発明の一実施形態に従うと、仮想化は、クラウドコンピューティングにおける効率的なリソース利用および融通性のあるリソース割当てに有益であり得る。ライブマイグレーションは、アプリケーションにトランスペアレントな態様で物理サーバ間で仮想マシン(VM)を移動させることによってリソース使用を最適化することを可能にする。これにより、シングルルートI/O仮想化(SR−IOV)法を利用する仮想化は、ライブマイグレーションによって統合、リソースのオン・デマンド・プロビジョニングおよび融通性を可能にし得る。
IBアーキテクチャは、直列なポイント・ツー・ポイントの全二重技術である。IBネットワークはサブネットとも称することができ、この場合、サブネットは、スイッチおよびポイント・ツー・ポイントリンクを用いて相互接続された1セットのホストで構成されている。IBサブネットは、サブネットにすべてのスイッチ、ルータおよびホストチャネルアダプタ(host channel adaptor:HCA)の構成を含むネットワークを初期化して提供する役割を果たし得る少なくとも1つのサブネット・マネージャ(SM)を含み得る。
IBは、リモートダイレクトメモリアクセス(remote direct memory access:RDMA)および従来の送信/受信セマンティックをともに提供するために、1組のリッチな伝送サービスをサポートする。用いられる伝送サービスに依存せずに、IB HCAはキュー対(queue pair:QP)を用いて通信を行う。QPは、通信設定中に作成され、提供されるQP数、HCAポート、宛先LID、キューサイズおよび伝送サービスなどの1セットの初期属性を有し得る。HCAは多くのQPを処理することができ、各々のQPは、送信キュー(send queue:SQ)および受信キュー(receive queue:RQ)などの1対のキューからなる。通信に関与している各々のエンドノードにはこのような1つの対が存在している。送信キューは、リモートノードに転送されるべき作業要求を保持し、受信キューは、リモートノードから受取ったデータで何を行なうべきかについての情報を保持している。QPに加えて、各々のHCAは、1セットの送信キューおよび受信キューに関連付けられている1つ以上の完了キュー(completion queue:CQ)を有している。CQは、送信キューおよび受信キューに掲示された作業要求についての完了通知を保持する。たとえ通信の複雑さがユーザからは見えないようになっていたとしても、QP状態情報はHCAに保持されている。
ネットワークI/O仮想化:
一実施形態に従うと、I/O仮想化(I/O virtualization:IOV)を用いることにより、I/Oリソースを共有して、さまざまな仮想マシンからリソースへのアクセスの保護を提供することができる。IOVは、仮想マシンにエクスポーズされ得る論理装置をその物理的な実装から分離することができる。このような1タイプのIOVとして、直接的な装置の割当てがある。
一実施形態に従うと、直接的な装置の割当ては、VM間で装置を共有せずにI/O装置をVMに連結することを必要とし得る。直接的な割当て(または装置のパススルー)は最小限のオーバーヘッドで固有の性能に近いものを提供することができる。物理装置は、ハイパーバイザをバイパスしてVMに直接取付けられており、ゲストOSは未改良のドライバを用いることができる。不利な面としては、共有がなされないせいでスケーラビリティが制限されてしまう点であり、1枚の物理ネットワークカードが1つのVMと連結されている。
一実施形態に従うと、シングルルートIOV(Single Root IOV:SR−IOV)は、ハードウェア仮想化によって、物理装置がその同じ装置の複数の独立した軽量のインスタンスとして現われることを可能にし得る。これらのインスタンスは、パススルー装置としてVMに割当てることができ、仮想機能(Virtual Function:VF)としてアクセスすることができる。SR−IOVは、純粋に直接的に割当てする際のスケーラビリティの問題を軽減する。
残念ながら、SR−IOVなどの直接的な装置の割当て技術によれば、実現されたシステムがデータセンタ最適化のためにトランスペアレントなライブマイグレーション(VMマイグレーション)を使用する場合、クラウドプロバイダに対して問題が提起される可能性がある。ライブマイグレーションの本質は、仮想マシンのメモリ内容が遠隔のハイパーバイザにまでコピーされるという点にある。さらに、仮想マシンをソース・ハイパーバイザにおいて一時停止させると、その動作は、それがコピーされた宛先において再開される。基礎をなすシステムが(SR−IOVなどの)直接的な装置の割当てを利用する場合、ネットワークインターフェイスがハードウェアに接続されている場合にはそのネットワークインターフェイスの完全な内部状態をコピーすることができない。VMに割当てられたSR−IOV VFが分離されると、ライブマイグレーションが実行されることとなり、その宛先において新しいVFが取付けられることとなる。
IB VFを用いるVMがライブマイグレートされている状況においては、VMの3つのアドレスをすべて変更することにより、基礎をなすネットワークファブリックおよびSMに対する明らかな影響を取り入れることができる。VMが異なるLIDを有する異なる物理ホストに移されるので、LIDが変化する。宛先において異なるVFが取付けられると、SMによってソースVFに割当てられている仮想GUID(virtual GUID:vGUID)が同様に変化し得る。次に、vGUIDを用いてGIDが形成されるので、GIDも変化するだろう。結果として、マイグレートされたVMが、突然、新しい1セットのアドレスに関連付けられ、マイグレートされたVMの通信ピアが、マイグレートされたVMとの失われた接続を回復しようとして、同時発生したSAパス記録クエリバーストをSMに送信し始めることができる。これらのクエリは、SMに対する余分なオーバーヘッドと、副次的作用としての追加のダウンタイムとをもたらす可能性がある。マイグレートされたノードがネットワークにおける他の多くのノードと通信する場合、SMが障害となり、全体的なネットワーク性能を阻害する可能性がある。
一実施形態に従うと、この明細書中に記載される方法およびシステムは、クラウドプロバイダに提示されているSR−IOVなどの直接的な装置の割当て技術を用いて、仮想マシンのライブマイグレーションに関連付けられた問題を低減および/または排除することができる。当該方法およびシステムは、IB VFを用いるVMがライブマイグレートされている状況において提示される問題を克服することができる。
仮想マシン(VM)ライブマイグレーション
図1は、一実施形態に従った、クラウド環境におけるVMのライブマイグレーションをサポートする例を示す。図1に示されるように、インフィニバンド(IB)サブネット100は、異なるハイパーバイザ111〜113をサポートする複数のホストノードA101〜C103を含み得る。
加えて、各々のハイパーバイザ111〜113は、さまざまな仮想マシン(VM)がその上で実行されることを可能にする。たとえば、ホストノードA101上のハイパーバイザ111はVM A104をサポートすることができ、ホストノードB上のハイパーバイザ112はVM B105をサポートすることができる。VM AおよびVM Bが実行されているノード同士は通信することができる。
さらに、ホストノードA101〜C103の各々は1つ以上のホストチャネルアダプタ(HCA)117〜119に関連付けることができる。図1に示されるように、ホストノードA101上のHCA117は、VM A104によって使用され得るQPa108などのキュー対(QP)を利用することができ、ホストノードB102上のHCA118は、VM B105によって使用され得るQPb107を利用することができる。
本発明の一実施形態に従うと、入出力仮想化(input/output virtualization:IOV)を用いて、VMにI/Oリソースを提供し、複数のVMから共有のI/Oリソースへのアクセスの保護を提供することができる。IOVは論理装置を分離することができ、この論理装置は、その物理的実装からVMにエクスポーズされている(exposed)。たとえば、シングルルートI/O仮想化(SR−IOV)は、IBネットワークにわたる仮想化において高性能を達成するためのI/O仮想化アプローチである。
また、IBサブネット100は、ネットワーク初期化、スイッチおよびHCA上のIBポートの構成、トポロジー発見およびパス演算のために機能し得るサブネットマネージャ110を含み得る。
図1に示されるように、VM B105は、(たとえば、ハイパーバイザ111上のVM A105と通信しながら)ハイパーバイザ112からハイパーバイザ113へとマイグレートさせることができる。
マイグレーションの後、新しいVM B′106は、宛先ホストノードC103における新しい1セットのアドレスに対して突然エクスポーズされる可能性がある。さらに、ピアVM(たとえば、VM A104)は、失われた接続を回復させようとしている間に、SM110にサブネット管理(SA)パス記録クエリを送信し始めることができる(VM B′はまた、新しいホストノード上で実行されると、SAパス要求をSMに送信することもできる)。これは以下の事実に起因している。すなわち、一般に、VM BがホストノードBからホストノードCにマイグレートする場合などのようにVMがマイグレートすると、これに応じて、VMのアドレス(LID、GUID、GID)が変化する。というのも、これらVMのアドレス(LID、GUID、GID)は、概して、SR−IOVを用いているときにはハードウェアに接続されているからである。サブネットマネージャへのこれらのSAパスクエリは、著しいダウンタイムと、インフィニバンドSM110に対する余分なオーバーヘッドとをもたらす可能性がある。多くのマイグレーションが大規模なデータセンタにおいてかなり短い時間フレーム内で行なわれる場合、または、マイグレートされたノードがネットワークにおける他の多くのノードと通信している場合、SM110が障害になる可能性がある。なぜなら、このSM110がタイムリーに応答することができないかもしれないからである。
本発明の一実施形態に従うと、当該システムは、VM B104がマイグレートしてIBアドレス情報が変化した場合に、関与しているホストノードA101〜C103によって生成されるSAクエリの量を減らすことができる。
図1に示されるように、当該システムは、最初に、たとえば、VM B104から仮想機能(virtual function:VF)115を分離することによって、ハイパーバイザ112からVM B104を分離することができる。次いで、システムは、たとえば、これらのアドレスを、ホストノードC103上のハイパーバイザ113上において次に利用可能な仮想機能(すなわちVF′116)に割当てることによって、VM B104に関連付けられているアドレス情報120を宛先ホストノードC103に与えることができる。最後に、VM B104がVM B′106としてハイパーバイザ113にマイグレートされた後、当該システムは、(たとえば、QPb′109を介する)ピアVMとの通信を回復させるために、VM B′106をアドレス情報120にエクスポーズすることができる。
これにより、宛先ホストノードC103へのマイグレーションの後、新しいVM B′106を元の1セットのアドレスにエクスポーズすることができ、ピアVM A104が、SAパス記録クエリをSM110に送信する必要がなくなる。
一実施形態に従うと、システムは、IB SR−IOV VFが取付けられているVMのVMライブマイグレーションをサポートすることができる。リモートダイレクトメモリアクセス(RDMA)は、VMのマイグレーション後に通信を回復させるために、リライアブル・データグラム・ソケット(RDS)プロトコルなどのプロトコルによって利用することができる。
一実施形態に従うと、システムは、OpenStack、OpenSMおよびRDS Linuxカーネルモジュールを利用することができる。加えて、LIDtrackerと称され得るプログラムは、各々のVMに関連付けられたIBアドレスを常に把握しておくために用いることができ、マイグレーションプロセスを編成することができる。
一実施形態においては、プログラムは、OpenSMのオプションhonor_guid2lid_fileを使用可能にし得る。次いで、OpenSMによって生成されたファイルguid2lidは、プログラムによってパーズされ、昇順などの順序でGUIDによってソートされ得る。LIDは、1から開始してGUIDに割当てられる。GUIDに割当てられた各々のLIDは、物理ホストのためのベースLIDとも称することができる。
一実施形態においては、ベースLIDが割当てられると、IB対応のOpenStack演算ノードの各々は、VMを実行させるためにスキャンすることができる。実行されていることが判明した各々のVMには、49151(最上位のユニキャストLID)から開始して降順でLIDが割当てられ得る。VMに割当てられたこれらのLIDは浮動LIDとも称され得る。
一実施形態においては、浮動LIDは、VMが実行されているOpenStack演算ノードにおけるベースLIDと置換えることができる。ハイパーバイザはLIDをVMと共有する。いくつかの実施形態においては、1つのVMをハイパーバイザごとに実行させることができ、他のVMがその時点で実行されていないハイパーバイザに対して、或るVMがマイグレートされ得る。他の実施形態においては、複数のVMをハイパーバイザ上で実行させることができ、他のVMが宛先ハイパーバイザ上でその時点で実行されているかどうかにかかわらず、或るVMを別のハイパーバイザにマイグレートすることができる。
一実施形態においては、VMのためのマイグレーションがOpenStack APIなどのAPIから指示されると、SR−IOV VFをVMから分離することができる。装置の取外しが完了し、マイグレーションが進行中である場合、OpenStackは、プログラムに対し、Hypervisorなどの1つのハイパーバイザからHypervisorなどの宛先ハイパーバイザにまでVMが移動していることを通知することができる。次いで、プログラムは、HypervisorのLIDをそのベースLIDに戻すことができ、HypervisorはVMに関連付けられた浮動LIDを得ることができる。プログラムはまた、宛先ハイパーバイザであるHypervisorにおいて、VMに関連付けられたvGUIDを次に利用可能なSR−IOV VFに割当てることができる。マイグレーション中、VMにはネットワーク接続性がない。
一実施形態に従うと、これらの変更は再始動によって加えることができる。さらに、マイグレーションが完了すると、OpenStackは次に利用可能なSR−IOV VFをHypervisor上のVMに追加することができ、VMはそのネットワーク接続性を復帰させることができる。VMは、マイグレーションの前に有していた同じIBアドレス(LID、vGUIDおよびGID)にエクスポーズすることができる。VMの視点からは、マイグレートするのに必要な時間だけIBアダプタが分離されており、かつ、アドレスが変化しなかったので同じIBアダプタが再び取付けられたように、見えている。
サブネット管理(SA)パス・キャッシング
一実施形態に従うと、エンドノードにおけるローカルのSAパス・キャッシングメカニズムは、初期接続が2つのノード間で確立された後にSAクエリを減らすかまたは排除することができる。キャッシングスキームは一般的なものであり得るとともに、使用可能にされると、ライブマイグレーションの実施の有無にかかわらず、SMに対する負荷を軽減させることができる。
図2は、一実施形態に従った、2つのホスト間の接続を確立するプロトコルの例を示す。より特定的には、図2は、2つのホスト間の接続を確立するためにRDSなどのプロトコルを用いることを例示している。
一実施形態に従うと、接続を確立する前に、IP・オーバー・IB(IP over IB:IPoIB)をすべての通信ピアにおいて設定することができる。RDSなどのプロトコルは、特有のIBポートのIPoIBアドレスを用いてポートのGIDアドレスを決定することができる。GIDアドレスが決定された後には、プロトコルは、パス記録照合を実行してIB通信を確立するのに十分な情報を有することができる。
図2に示されるように、インフィニバンド・サブネット200内では、サブネットマネージャ210は、ノードC220とノードD225との間、より特定的には、ノードC上のクライアント側アプリケーションとノードD上のサーバ側アプリケーションとの間、にパス通信を提供することができる。図2においては、上位層アプリケーションのクライアント側がノードCにおいて実行され、アプリケーションのサーバ側はノードDにおいて実行される。アプリケーションのクライアント側は、RDSソケットなどのソケットを作成して、アプリケーションのサーバ側と通信するよう試みる(ステップ1)ことができる。RDSなどのプロトコルは、SAパス記録要求をノードCからSMに送信する(ステップ2)ことができる。サブネットマネージャは、プロトコルに応答を提供する(ステップ3)ことができる。この応答は、クライアント側アプリケーションのターゲットについてのアドレス情報を含み得る。サブネットマネージャから応答を受取った後、プロトコルは、接続要求を送信することによってノードDとの接続を開始するよう試みる(ステップ4)ことができる。接続が成功すれば、プロトコルは、たとえば、両側でのRDMA_CM_EVENT_ESTABLISHEDイベントによって通信チャネルを確立する(ステップ5)ことができる。この時点において、上位層アプリケーションが通信可能となる(ステップ6)。
初期接続において何かエラーがあれば、クライアント側(ノードC)のプロトコルは、ランダムなバックオフメカニズムとの接続を確立するために再試行しようとすることができる。サーバは、クライアントが通信しようと意図していることにまだ気づいていない。接続が確率された後に何か不具合があれば、RDS側(アプリケーション視点からはクライアントおよびサーバ)がともに積極的にピアと再接続しようとするだろう。接続プロセスにおけるランダムなバックオフメカニズムは、両側が接続に関与している場合には、競合状態を回避するのに有用である。
図3は、一実施形態に従った、接続が途絶えた場合における2つのノード間の継続中の通信の例を示す。
図3においては、インフィニバンド・サブネット200内では、サブネットマネージャ210は、ノードC220とノードD225との間にパス通信を提供することができ、接続が途絶えた(ステップ2)場合にノードCとノードDとの間に通信を継続させている(ステップ1)。接続の途絶えは、たとえば、ノード上で実行されているアプリケーションのうち1つのアプリケーションのライブマイグレーションに付随して起こる可能性がある。両方のプロトコルエンドは、接続がダウンしていると判断することができ、再接続しようと試みる前にいくらかのランダム時間(すなわちバックオフ時間)だけ待機する(ステップ3)ことができる。再接続を試みる前に両側が待機する時間は、図3に示されるように、同じであってもよく、または異なっていてもよい。ノードは、SMにSAパス記録要求を送信する(ステップ4)ことによって再接続しようと試みることができる。SAパス記録応答が受取られた(ステップ5)後、接続要求を送信する(ステップ6)ことができる。
図3に示される場合においては、ステップ3において2つのノードによって選択されたバックオフ時間はほとんど同じであった。このため、ノードDがノードCよりもわずかに速くSAパス記録応答を得て、ステップ6において最初に接続を開始しようとしていたとしても、ノードCが接続要求自体を送信するより以前には接続要求はノードCに到達していなかった。この場合、両方のプロトコルエンドは未処理の接続要求を有している。次いで、ノードがそれらのピアから接続要求を受取ると、これらのノードは接続要求を拒否する(ステップ7)だろう。ステップ8において、2つのノードは、再接続しようと再試行する前に、ランダムなバックオフ時間をもう一度選択した。このとき、ノードDによって選択されたランダムなバックオフ時間はノードCによって選択されたものより著しく長い。結果として、ノードCが優先されることとなり、このノードCが、接続確立プロセスを繰返し、SAパス記録要求を送信し(ステップ8)、サブネットマネージャから応答を受取り(ステップ10)、ノードDに接続要求を送信し(ステップ11)、そして、ノードDがノードCとの接続自体を開始しようと試みる前に接続要求がノードDに到達する。図3に示される状況においては、ノードDが入接続を受付ける(ステップ12)。次いで、ステップ13および14において、上位層アプリケーションのために通信を再開することができる。
図3から推測すると、サブネットマネージャがVMマイグレーションの場合にSAパス要求を大量に受取る可能性がある(通信の遮断)ことが明らかになる。何千ものノードを有する大規模なサブネットにおいては、各々のノードから追加のSAクエリが1つだけ送信された場合でも、SMには、最終的に何千ものメッセージが殺到する可能性がある。ライブマイグレーションがダイナミックIBベースのクラウドにおいて行なわれる場合、多くの過剰なSAクエリが送信される可能性がある。SAクエリの量は、ネットワークにおけるノードの数が増加するのに応じて多項式的に増加する。これらの開示された方法およびシステムは、サブネットにおけるノードによってサブネットマネージャに送信されるSAクエリの数を減らすことができるキャッシングメカニズムを提供する。
図4は、本発明の一実施形態に従った、クラウド環境におけるSAパス・キャッシングをサポートする例を示す。図4に示されるように、インフィニバンド(IB)サブネット400は、サブネットマネージャ(SM)410および複数のホストノードA401およびB402を含み得る。
送信元ホストノードA401(たとえば、VM A411)が宛先ホストノードB402(たとえば、VM B412)と通信しようと初めて試みたとき、送信元ホストノードA401はSM410にSAパス記録要求を送信することができる。次いで、送信元ホストノードは、ローカルキャッシュ421を用いてパス情報(たとえば、パス記録422)を記憶することができる。
さらに、送信元ホストノードA401が同じ宛先ホストノードB402に再接続しようと試みるとき、送信元ホストノードA401は、サブネットマネージャに要求を送信するのではなく、ローカルキャッシュ421におけるキャッシングテーブル内の宛先ホストノードのアドレスを検索することができる。
パス情報が発見された場合、送信元ホストノードA401は、パス記録422によって示されるように、パス420を用いて宛先ホストノードB402に接続することができる。この場合、SAクエリはSM410に送信されない。それ以外の場合、送信元ホストノードA401は、必要なパス情報を取得するためにSM410にSAパス記録要求を送信することができる。
図5は、本発明の一実施形態に従った、クラウド環境におけるSAパス・キャッシングをサポートする例を示す。より特定的には、図5は、インフィニバンド環境のサブネット内におけるSAパス・キャッシングをサポートする例を示す。
図5に示されるように、インフィニバンド(IB)サブネット500は、異なるハイパーバイザ511および512をサポートする複数のホストノードA501およびB502を含み得る。加えて、各々のハイパーバイザ512および513は、さまざまな仮想マシン(VM)がその上で実行されることを可能にする。たとえば、ホストノードA101上のハイパーバイザ511は、VM A504をサポートすることができ、ホストノードB上のハイパーバイザ512はVM B505をサポートすることができる。
さらに、ホストノードA501およびB502の各々は1つ以上のホストチャネルアダプタ(HCA)517および518に関連付けることができる。図5に示されるように、ホストノードA501上のHCA517は、VM A504が使用可能なQPa508などのキュー対(QP)を利用することができ、ホストノードB502上のHCA518は、VM B505が使用可能なQPb507を利用することができる。
一実施形態に従うと、各々のホストノードはまたメモリ530および540をサポートすることができ、メモリ530および540の各々は(ローカルキャッシュなどの)キャッシュ535および545を含み得るとともに、各々のキャッシュは、キャッシュテーブルに記憶することができる1つ以上のパス記録537および547を含み得る。
また、IBサブネット500は、サブネットマネージャ510を含み得る。サブネットマネージャ510は、ネットワーク初期化、スイッチおよびHCA上のIBポートの構成、トポロジー発見およびパス演算のために機能し得る。
一実施形態に従うと、送信元ホストノードA501(たとえば、VM A504)が宛先ホストノードB502(たとえば、VM B505)と最初に通信しようと試みたとき、送信元ホストノードA501はSM510にSAパス記録要求を送信することができる。次いで、送信元ホストノードは、ローカルキャッシュ535を用いてパス情報(たとえば、パス記録537)を記憶することができる。
さらに、送信元ホストノードA501が同じ宛先ホストノードB502に再接続しようと試みるとき、送信元ホストノードA501は、サブネットマネージャに要求を送信するのではなく、キャッシュ535における宛先ホストノードのアドレスを検索することができる。
一実施形態に従うと、パス情報が発見されれば、送信元ホストノードA501は、パス記録537に示されたパスを用いることによって宛先ホストノードB502に接続することができるが、この場合、SAクエリはSM510に送信されない。それ以外の場合、送信元ホストノードA501は、SM410にSAパス記録要求を送信して、必要なパス情報を取得することができる。
一実施形態に従うと、ホストノードA501がサブネットマネージャ510にSAパス記録要求を送信する状況においては、受取られた応答は、キャッシングフラグを含み得る。このキャッシングフラグは、宛先ホストノードB502(DGID)の所与のGIDアドレスに関連付けられたパス特徴を記憶するために(キャッシュ535内における)ローカルキャッシングテーブルを用いるようにホストノードA501に指示し得る。
図6は、一実施形態に従った、クラウド環境におけるサブネット管理をサポートするための方法の例を示す。例示的な方法600はステップ601から開始され得る。ステップ601において、少なくとも第1のハイパーバイザおよび第1のホストチャネルアダプタに関連付けられた第1のホストノードを含む複数のホストノードをクラウド環境内に設ける。ステップ602において、当該方法は、引続き、複数のアドレスに関連付けられた第1の仮想マシンを第1のホストノード上に設け得る。ステップ603において、当該方法は、引続き、クラウド環境内において、第1の仮想マシンを、複数のホストノードのうちの第1のホストノードから、設けられた第2のホストノードにまでマイグレートする。第2のホストノードは、少なくとも第2のハイパーバイザおよび第2のホストチャネルアダプタに関連付けられている。複数のホストノードの各々はローカルキャッシュを含む。各々のローカルキャッシュは1つ以上のパス記録を含む。
一実施形態に従うと、第1の仮想マシンをマイグレートするステップは、ステップ604において、第1のハイパーバイザから第1の仮想マシンを分離するステップを含み得る。第1のハイパーバイザから第1の仮想マシンを分離するステップは、第1の仮想マシンに関連付けられた第1の仮想機能を第1の仮想マシンから分離するステップを含む。ステップ605において、当該方法は、次に、第1の仮想マシンに関連付けられた複数のアドレスを第2のホストノードに与える。ステップ606において、当該方法は、第2のハイパーバイザに関連付けられた第2の仮想機能に複数のアドレスを割当てることができる。ステップ607において、当該方法は、第1の仮想マシンを第1のホストノードから第2のホストノード上の第2の仮想マシンにまでマイグレートすることができる。ステップ608において、当該方法は、第2の仮想マシンを、第1の仮想マシンに関連付けられた複数のアドレスにエクスポーズするステップで終了し得る。
一実施形態に従うと、SAパス記録キャッシングメカニズムは、RDSプロトコルなどのプロトコルにおいて実現することができ、キャッシングテーブルは、各々のノードのメモリに記憶することができる。以下の擬似コードに示されるプログラムを用いることができる:
一実施形態に従うと、送信元ホスト(source host:SHost)が宛先ホスト(destination host:DHost)と通信しようと最初に試みるとき、SHostはサブネットマネージャにSAパス記録要求を送信することができる。応答によってキャッシングフラグが立てられた場合、SHostは、ローカルキャッシングテーブルを用いて、DHost(DGID)の所与のGIDアドレスに関連付けられたパス特徴を記憶することができる。さらに、SHostは、キャッシングがサブネットマネージャによってサポートされていることをこのとき認識し、このため、次にSHostがいずれかのDHostに接続または再接続しようと試みるときに、SHostはキャッシングテーブルを最初に検索することとなる。所与のDHostについてのパス情報が発見された場合、SHostは、サブネットマネージャに送信されるSAクエリの送信が妨害される可能性があり、代わりに、SHostは、そのキャッシングテーブル内の情報を用いてDHostに接続しようと試みることができる。
遮断された接続(ステップ2)に関して、図3を再び参照すると、上述のキャッシングメカニズムが使用可能にされるシステムにおいては、サブネットマネージャにSAクエリが送信される必要はない。図3に記載される場合においては、ステップ4、5、9および10が省かれており、このため、接続がより高速に回復され、サブネットマネージャに対する負荷(たとえばSAパスの要求および応答)がより低下する。
この発明の多くの特徴は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの組合せにおいて、それを使用して、またはその助けを借りて実行され得る。従って、この発明の特徴は、(たとえば、1つ以上のプロセッサを含む)処理システムを用いて実現され得る。
この発明の特徴は、ここに提示された特徴のうちのいずれかを実行するように処理システムをプログラミングするために使用可能な命令を格納した記憶媒体またはコンピュータ読取可能媒体であるコンピュータプログラム製品において、それを使用して、またはその助けを借りて実現され得る。記憶媒体は、フロッピー(登録商標)ディスク、光ディスク、DVD、CD−ROM、マイクロドライブ、および光磁気ディスクを含む任意のタイプのディスク、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、フラッシュメモリ装置、磁気カードもしくは光カード、ナノシステム(分子メモリICを含む)、または、命令および/もしくはデータを格納するのに適した任意のタイプの媒体もしくは装置を含み得るものの、それらに限定されない。
この発明の特徴は、機械読取可能な媒体のうちのいずれかに格納された状態で、処理システムのハードウェアを制御するために、および処理システムがこの発明の結果を利用する他のメカニズムとやりとりすることを可能にするために、ソフトウェアおよび/またはファームウェアに組込まれ得る。そのようなソフトウェアまたはファームウェアは、アプリケーションコード、装置ドライバ、オペレーティングシステム、および実行環境/コンテナを含み得るものの、それらに限定されない。
この発明の特徴はまた、たとえば、特定用途向け集積回路(application specific integrated circuit:ASIC)などのハードウェアコンポーネントを使用して、ハードウェアにおいて実現されてもよい。ここに説明された機能を実行するようにハードウェアステートマシンを実現することは、関連技術の当業者には明らかであるだろう。
加えて、この発明は、この開示の教示に従ってプログラミングされた1つ以上のプロセッサ、メモリおよび/またはコンピュータ読取可能記憶媒体を含む、1つ以上の従来の汎用または専用のデジタルコンピュータ、コンピューティング装置、マシン、またはマイクロプロセッサを使用して都合よく実現され得る。ソフトウェア技術の当業者には明らかであるように、適切なソフトウェアコーディングが、この開示の教示に基づいて、熟練したプログラマによって容易に準備され得る。
この発明のさまざまな実施形態が上述されてきたが、それらは限定のためではなく例示のために提示されたことが理解されるべきである。この発明の精神および範囲から逸脱することなく、形状および詳細のさまざまな変更を行なうことができることが関連技術の当業者にとって明らかになるであろう。
この発明は、特定された機能およびそれら関係の実行を示す機能的構築ブロックの助けを借りて上述されてきた。説明の便宜上、これらの機能的構築ブロックの境界はしばしば、この明細書中では任意に規定されてきた。特定された機能およびそれらの関係が適切に実行される限り、代替的な境界を規定することができる。このため、そのようないかなる代替的な境界も、この発明の範囲および精神内に含まれる。
この発明の上述の説明は、例示および説明のために提供されてきた。それは、網羅的であるよう、またはこの発明を開示された形状そのものに限定するよう意図されてはいない。この発明の幅および範囲は、上述の例示的な実施形態のいずれによっても限定されるべきでない。多くの変更および変形が当業者には明らかであるだろう。これらの変更および変形は、開示された特徴の関連するあらゆる組合せを含む。実施形態は、この発明の原理およびその実用的応用を最良に説明するために選択され説明されたものであり、それにより、企図される特定の用途に適したさまざまな実施形態についての、およびさまざまな変更例を有するこの発明を、当業者が理解できるようにする。この発明の範囲は、添付の特許請求の範囲およびそれらの均等物によって定義されるよう意図されている。

Claims (17)

  1. クラウド環境においてホストノードの管理をサポートするための方法であって、
    1のホストノード、第2のホストノードおよび第3のホストノードを含む複数のホストノードを前記クラウド環境内に設けるステップを備え、前記第1のホストノードは、少なくとも第1のハイパーバイザおよび第1のホストチャネルアダプタに関連付けられており、前記複数のホストノードの各々はローカルキャッシュを備え、各ローカルキャッシュは1つ以上のパス記録を備えており、
    記第1のホストノード上に第1の仮想マシンを設けるステップを備え、前記第1の仮想マシンは複数のアドレスに関連付けられており
    前記第3のホストノード上に第3の仮想マシンを設けるステップと、
    前記第3のホストノードが、サブネットマネージャにクエリを送信するステップとを備え、前記クエリは、前記第1の仮想マシンについての第1のパス記録を要求するものであり、前記第1のパス記録は、前記第1の仮想マシンに関連付けられた複数のアドレスを備え、
    前記第3のホストノードに関連付けられたローカルキャッシュ内に前記サブネットマネージャから受信した前記第1のパス記録を記憶するステップと、
    前記第1の仮想マシンを、前記第1のホストノードから前記クラウド環境内の前記第2のホストノード上の第2の仮想マシンにマイグレートするステップとを含み、前記第2のホストノードは、少なくとも第2のハイパーバイザおよび第2のホストチャネルアダプタに関連付けられており
    前記第1の仮想マシンを前記第1のホストノードから前記第2のホストノードにマイグレートするとき、前記第3のホストノードが、通信における途切れを検出するステップと、
    前記第3のホストノードが、前記ローカルキャッシュ内の前記第3のホストノードに関連付けられた前記第1のパス記録を検索するステップと、
    前記第3のホストノードが、前記第1のパス記録に基づいて、前記サブネットマネージャとさらなる通信を行うことなく、前記第3の仮想マシンと前記第2の仮想マシンとの間の通信を確立するステップとを含む、方法。
  2. 前記第1の仮想マシンを、前記第1のホストノードから、前記クラウド環境内の前記第2のホストノード上の第2の仮想マシンにマイグレートするステップは、
    前記第1のハイパーバイザから前記第1の仮想マシンを分離するステップを含み、前記第1のハイパーバイザから前記第1の仮想マシンを分離する前記ステップは、前記第1の仮想マシンに関連付けられた第1の仮想機能を前記第1の仮想マシンから分離するステップを含み
    前記第1の仮想マシンに関連付けられた前記複数のアドレスを前記第2のホストノードに与えるステップと、
    前記第2のハイパーバイザに関連付けられた第2の仮想機能に前記複数のアドレスを割当てるステップと、
    前記第1の仮想マシンを、前記第1のホストノードから前記第2のホストノード上の前記第2の仮想マシンにマイグレートするステップと、
    前記第1の仮想マシンに関連付けられた前記複数のアドレスに前記第2の仮想マシンをエクスポーズするステップとを含む、請求項1に記載の方法。
  3. 前記第3の仮想マシンと前記第2の仮想マシンとの間の通信を確立するステップは、前記クラウド環境内において、前記第1の仮想マシンを前記第1のホストノードから前記第2のホストノードにマイグレートする処理の後に実行され
    記クラウド環境内において前記第1の仮想マシンを前記第1のホストノードから前記第2のホストノードにマイグレートする処理の前に、前記第1の仮想マシンと前記第3の仮想マシンとの間で通信が行われる、請求項2に記載の方法。
  4. 前記1つ以上のパス記録の各々は、複数の属性を有しており、前記複数の属性は、キューサイズおよび伝送サービスを含む、請求項1〜のいずれか1項に記載の方法。
  5. 前記第1のパス記録は、前記第1の仮想マシンに関連付けられるとともに前記第3のホストノードによって前記サブネットマネージャに送信された前記クエリに基づいて作成され、前記サブネットマネージャは前記クラウド環境に関連付けられている、請求項4に記載の方法。
  6. 前記第1のパス記録が作成された後、前記第1の仮想マシンに関連付けられた前記クエリはいずれも、それ以上、前記第3のホストノードによって前記サブネットマネージャに送信されない、請求項5に記載の方法。
  7. 前記第1の仮想マシンに関連付けられるとともに前記第3のホストノードによって前記サブネットマネージャに送信され前記クエリに応じて、前記サブネットマネージャはマーク付けされたパス記録を戻し、前記マーク付けされたパス記録はパス・キャッシング可能マークを含み、前記パス・キャッシング可能マークは、前記第1のパス記録が通信における前記途切れの間も維持されることを示、請求項5または6に記載の方法。
  8. 前記複数のホストノードのうち別のホストノード上に設けられた別の仮想マシンに関連付けられた別の複数のアドレスに関する、前記サブネットマネージャに対する別のクエリに応じて、前記サブネットマネージャはマーク付けされた別のパス記録を戻し、前記マーク付けされた別のパス記録はパス・キャッシング可能マークを含み、前記パス・キャッシング可能マークは、前記別のパス記録が通信における別の途切れの間も維持されることを示、請求項7に記載の方法。
  9. 前記第の仮想マシンと前記第の仮想マシンとの間の前記通信はインフィニバンド・プロトコルに基づ、請求項38のいずれか1項に記載の方法。
  10. クラウド環境においてホストノードの管理をサポートするシステムであって、
    1つ以上のマイクロプロセッサと、
    前記1つ以上のマイクロプロセッサ上で実行されるプロセッサとを含み、前記プロセッサは、
    1のホストノード、第2のホストノードおよび第3のホストノードを含む複数のホストノードを前記クラウド環境内に設けるステップを実行するように動作し、前記第1のホストノードは、少なくとも第1のハイパーバイザおよび第1のホストチャネルアダプタに関連付けられており、前記複数のホストノードの各々はローカルキャッシュを備え、各ローカルキャッシュは1つ以上のパス記録を備えており
    記第1のホストノード上に第1の仮想マシンを設けるステップを実行するように動作し、前記第1の仮想マシンは複数のアドレスに関連付けられており
    前記第3のホストノード上に第3の仮想マシンを設けるステップと、
    前記第3のホストノードが、サブネットマネージャにクエリを送信するステップとを実行するように動作し、前記クエリは、前記第1の仮想マシンについての第1のパス記録を要求するものであり、前記第1のパス記録は、前記第1の仮想マシンに関連付けられた複数のアドレスを備え、
    前記第3のホストノードに関連付けられたローカルキャッシュ内に前記サブネットマネージャから受信した前記第1のパス記録を記憶するステップと、
    前記第1の仮想マシンを、前記第1のホストノードから前記クラウド環境内の前記第2のホストノード上の第2の仮想マシンにマイグレートするステップとを実行するように動作し、前記第2のホストノードは、少なくとも第2のハイパーバイザおよび第2のホストチャネルアダプタに関連付けられており
    前記第1の仮想マシンを前記第1のホストノードから前記第2のホストノードにマイグレートするとき、前記第3のホストノードが、通信における途切れを検出するステップと、
    前記第3のホストノードが、前記ローカルキャッシュ内の前記第3のホストノードに関連付けられた前記第1のパス記録を検索するステップと、
    前記第3のホストノードが、前記第1のパス記録に基づいて、前記サブネットマネージャとさらなる通信を行うことなく、前記第3の仮想マシンと前記第2の仮想マシンとの間の通信を確立するステップと実行するように動作する、システム。
  11. 前記プロセッサはさらに、
    前記第1のハイパーバイザから前記第1の仮想マシンを分離するステップを実行するように動作し、前記第1のハイパーバイザから前記第1の仮想マシンを分離するステップは、前記第1の仮想マシンに関連付けられた第1の仮想機能を前記第1の仮想マシンから分離するステップを含み、前記プロセッサはさらに、
    前記第1の仮想マシンに関連付けられた前記複数のアドレスを前記第2のホストノードに与えるステップと、
    前記複数のアドレスを、前記第2のハイパーバイザに関連付けられた第2の仮想機能に割当てるステップと、
    前記第1の仮想マシンを、前記第1のホストノードから前記第2のホストノード上の第2の仮想マシンにまでマイグレートするステップと、
    前記第1の仮想マシンに関連付けられた前記複数のアドレスに前記第2の仮想マシンをエクスポーズするステップとを実行するように動作する、請求項10に記載のシステム。
  12. 前記プロセッサはさらに、
    前記クラウド環境内において、前記第1の仮想マシンを前記第1のホストノードから前記第2のホストノードにマイグレートするステップの後、前記第2の仮想マシンと前記複数のホストノードのうち第3のホストノード上に設けられた第3の仮想マシンとの間に通信を確立するステップを実行するように動作し、
    前記クラウド環境内において前記第1の仮想マシンを前記第1のホストノードから前記第2のホストノードにまでマイグレートするステップの前に、前記第1の仮想マシンと前記第3の仮想マシンとが通信していた、請求項11に記載のシステム。
  13. 前記1つ以上のパス記録の各々は、複数の属性を有しており、前記複数の属性は、キューサイズおよび伝送サービスを含む、請求項12に記載のシステム。
  14. 前記第1のパス記録は、前記第1の仮想マシンに関連付けられるとともに前記第3のホストノードによって前記サブネットマネージャに送信された前記クエリに基づいて作成され、前記サブネットマネージャは前記クラウド環境に関連付けられている、請求項13に記載のシステム。
  15. 前記第1のパス記録が作成された後、前記第1の仮想マシンに関連付けられた前記クエリはいずれも、それ以上、前記第3のホストノードによって前記サブネットマネージャに送信されない、請求項14に記載のシステム。
  16. 前記第の仮想マシンと前記第の仮想マシンとの間の前記通信はインフィニバンド・プロトコルに基づいている、請求項12〜15のいずれか1項に記載のシステム。
  17. 請求項1〜のいずれか1項に記載の方法をコンピュータに実行させる、プログラム。
JP2017522887A 2014-10-30 2015-10-28 ダイナミッククラウドにサブネット管理(sa)クエリキャッシングを提供するためのシステムおよび方法 Active JP6613308B2 (ja)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
US201462072847P 2014-10-30 2014-10-30
US62/072,847 2014-10-30
US201462075000P 2014-11-04 2014-11-04
US62/075,000 2014-11-04
US201462076336P 2014-11-06 2014-11-06
US62/076,336 2014-11-06
US201562121294P 2015-02-26 2015-02-26
US62/121,294 2015-02-26
US201562133179P 2015-03-13 2015-03-13
US62/133,179 2015-03-13
US14/924,281 US10198288B2 (en) 2014-10-30 2015-10-27 System and method for providing a dynamic cloud with subnet administration (SA) query caching
US14/924,281 2015-10-27
PCT/US2015/057860 WO2016069773A1 (en) 2014-10-30 2015-10-28 System and method for providing a dynamic cloud with subnet administration (sa) query caching

Publications (3)

Publication Number Publication Date
JP2017538201A JP2017538201A (ja) 2017-12-21
JP2017538201A5 JP2017538201A5 (ja) 2018-11-29
JP6613308B2 true JP6613308B2 (ja) 2019-11-27

Family

ID=55854060

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017522887A Active JP6613308B2 (ja) 2014-10-30 2015-10-28 ダイナミッククラウドにサブネット管理(sa)クエリキャッシングを提供するためのシステムおよび方法

Country Status (6)

Country Link
US (3) US10198288B2 (ja)
EP (1) EP3213200B1 (ja)
JP (1) JP6613308B2 (ja)
KR (1) KR102349208B1 (ja)
CN (1) CN107079046B (ja)
WO (1) WO2016069773A1 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9990221B2 (en) 2013-03-15 2018-06-05 Oracle International Corporation System and method for providing an infiniband SR-IOV vSwitch architecture for a high performance cloud computing environment
US10397105B2 (en) * 2014-03-26 2019-08-27 Oracle International Corporation System and method for scalable multi-homed routing for vSwitch based HCA virtualization
US10318325B2 (en) * 2015-01-07 2019-06-11 International Business Machines Corporation Host-side cache migration
US10594627B2 (en) 2016-01-27 2020-03-17 Oracle International Corporation System and method for supporting scalable representation of switch port status in a high performance computing environment
US11271870B2 (en) 2016-01-27 2022-03-08 Oracle International Corporation System and method for supporting scalable bit map based P_Key table in a high performance computing environment
US10440152B2 (en) 2016-01-27 2019-10-08 Oracle International Corporation System and method of initiating virtual machine configuration on a subordinate node from a privileged node in a high-performance computing environment
US10887089B2 (en) * 2016-07-18 2021-01-05 Telefonaktiebolaget Lm Ericsson (Publ) Security of ciphering and integrity protection
WO2018083724A1 (ja) * 2016-11-01 2018-05-11 株式会社日立製作所 仮想計算機システム及び仮想計算機のマイグレーション方法
US10778767B2 (en) 2017-04-28 2020-09-15 International Business Machines Corporation Persistent memory replication in RDMA-capable networks
US10397096B2 (en) 2017-04-28 2019-08-27 International Business Machines Corporation Path resolution in InfiniBand and ROCE networks
US11243899B2 (en) 2017-04-28 2022-02-08 International Business Machines Corporation Forced detaching of applications from DMA-capable PCI mapped devices
US10635477B2 (en) 2017-06-12 2020-04-28 Red Hat Israel, Ltd. Disabling in-memory caching of a virtual machine during migration
US10445086B2 (en) 2017-09-28 2019-10-15 At&T Intellectual Property I, L.P. Virtualization platform for creating, deploying, modifying, and relocating applications
CN107707662A (zh) * 2017-10-16 2018-02-16 大唐网络有限公司 一种基于node的分布式缓存方法、装置及存储介质
CN109361600B (zh) * 2018-04-20 2021-08-10 中国移动通信有限公司研究院 一种获取路径标识的方法和设备
US20200028758A1 (en) * 2018-07-17 2020-01-23 Cisco Technology, Inc. Multi-cloud connectivity using srv6 and bgp
US10972347B2 (en) * 2019-01-16 2021-04-06 Hewlett Packard Enterprise Development Lp Converting a first cloud network to second cloud network in a multi-cloud environment
FR3094812A1 (fr) * 2019-04-08 2020-10-09 Orange Procédé et dispositif de migration d’une fonction virtualisée en cas de défaillance de l’environnement technique de serveurs
US11294715B2 (en) * 2019-08-28 2022-04-05 Marvell Asia Pte, Ltd. System and method for queuing work within a virtualized scheduler based on in-unit accounting of in-unit entries
US11409553B1 (en) 2019-09-26 2022-08-09 Marvell Asia Pte, Ltd. System and method for isolating work within a virtualized scheduler using tag-spaces
US11822964B2 (en) * 2020-06-03 2023-11-21 Baidu Usa Llc Data protection with static resource partition for data processing accelerators
US12032980B2 (en) 2020-06-03 2024-07-09 Baidu Usa Llc Data protection with dynamic resource isolation for data processing accelerators

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4430993C1 (de) 1994-08-31 1995-10-26 Siemens Ag Verfahren zur adaptiven Wegesuche in einem Kommunikationsnetz
US8364891B2 (en) 2006-04-04 2013-01-29 Permabit Technology Corporation Storage assignment technique for scalable and fault tolerant storage system
US7506084B2 (en) * 2006-10-17 2009-03-17 International Business Machines Corporation Method for communicating with an I/O adapter using cached address translations
US20080189432A1 (en) * 2007-02-02 2008-08-07 International Business Machines Corporation Method and system for vm migration in an infiniband network
US20080186990A1 (en) 2007-02-02 2008-08-07 International Business Machines Corporation Translation module, method and computer program product for providing multiple infiniband address support for vm migration using infiniband address translation
JP5222651B2 (ja) * 2008-07-30 2013-06-26 株式会社日立製作所 仮想計算機システムおよび仮想計算機システムの制御方法
US9973446B2 (en) * 2009-08-20 2018-05-15 Oracle International Corporation Remote shared server peripherals over an Ethernet network for resource virtualization
US8737399B2 (en) 2010-01-05 2014-05-27 Futurewei Technologies, Inc. Enhanced hierarchical virtual private local area network service (VPLS) system and method for Ethernet-tree (E-Tree) services
US9007895B2 (en) 2010-04-30 2015-04-14 Hewlett-Packard Development Company, L.P. Method for routing data packets in a fat tree network
JP5476261B2 (ja) 2010-09-14 2014-04-23 株式会社日立製作所 マルチテナント型情報処理システム、管理サーバ及び構成管理方法
US9014201B2 (en) 2011-11-09 2015-04-21 Oracle International Corporation System and method for providing deadlock free routing between switches in a fat-tree topology
US9311122B2 (en) * 2012-03-26 2016-04-12 Oracle International Corporation System and method for providing a scalable signaling mechanism for virtual machine migration in a middleware machine environment
US9397954B2 (en) * 2012-03-26 2016-07-19 Oracle International Corporation System and method for supporting live migration of virtual machines in an infiniband network
US9852073B2 (en) * 2012-08-07 2017-12-26 Dell Products L.P. System and method for data redundancy within a cache
US8862772B2 (en) 2012-10-09 2014-10-14 Cisco Technology, Inc. System and method for implementing a multilevel data center fabric in a network environment
US9225624B2 (en) 2012-12-20 2015-12-29 Dell Products L.P. Systems and methods for topology discovery and application in a border gateway protocol based data center
US9641465B1 (en) * 2013-08-22 2017-05-02 Mellanox Technologies, Ltd Packet switch with reduced latency
US9264351B2 (en) 2013-09-07 2016-02-16 Cisco Technology, Inc. System and method for utilization of a segmentation identification to support transmission of data to a destination node
CN104954265B (zh) 2014-03-25 2018-06-15 华为技术有限公司 发送组播报文的方法及交换机
US10033647B2 (en) 2015-10-13 2018-07-24 Oracle International Corporation System and method for efficient network isolation and load balancing in a multi-tenant cluster environment

Also Published As

Publication number Publication date
US20190163522A1 (en) 2019-05-30
EP3213200A1 (en) 2017-09-06
KR102349208B1 (ko) 2022-01-10
KR20170076666A (ko) 2017-07-04
US10747575B2 (en) 2020-08-18
JP2017538201A (ja) 2017-12-21
US11528238B2 (en) 2022-12-13
US10198288B2 (en) 2019-02-05
CN107079046B (zh) 2020-11-17
WO2016069773A1 (en) 2016-05-06
EP3213200B1 (en) 2021-06-16
US20160127495A1 (en) 2016-05-05
US20200379799A1 (en) 2020-12-03
CN107079046A (zh) 2017-08-18

Similar Documents

Publication Publication Date Title
JP6613308B2 (ja) ダイナミッククラウドにサブネット管理(sa)クエリキャッシングを提供するためのシステムおよび方法
US9893977B2 (en) System and method for supporting live migration of virtual machines in a virtualization environment
US10664301B2 (en) Methods and systems for establishing connections associated with virtual machine migrations
US20220318184A1 (en) Virtual rdma switching for containerized applications
JP6998296B2 (ja) 高性能コンピューティング環境における仮想ルータポートにわたるsmp接続性チェックのためのルータsma抽象化をサポートするためのシステムおよび方法
CN104115121B (zh) 在中间件机器环境中对虚拟机迁移提供可扩展的信令机制的系统和方法
KR100992050B1 (ko) 가상화된 네트워크 환경에서 입력/출력 공유를 가지는프로토콜 오프로드 및 다이렉트 입력/출력을 위한 방법 및시스템
US12095855B2 (en) Distributed resilient load-balancing for multipath transport protocols
EP3117588B1 (en) Scalable address resolution
WO2011078861A1 (en) A computer platform providing hardware support for virtual inline appliances and virtual machines
WO2014079005A1 (zh) Mac地址强制转发装置及方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181022

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190618

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190619

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190917

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191008

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191101

R150 Certificate of patent or registration of utility model

Ref document number: 6613308

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250