(57)【要約】      （修正有）【課題】管理アプリケーションを使用してデータセンタ内のリソースを自動的に構成するためのシステムおよび方法を提供する。【解決手段】管理アプリケーションは、データセンタのコンピュータリソース、ストレージリソース、およびネットワークリソースの情報を収集するべく、データセンタ管理ソフトウェアと通信する。データセンタのネットワークリソース情報に少なくとも基づいて、管理アプリケーションは、データセンタのネットワークトポロジを生成する。特定のユーザからのリクエストの受信に応じて、管理アプリケーションは、リクエストに整合する、データセンタの適切なリソースを構成する。【選択図】図２Ａ
2019036944.tif 000002
【特許請求の範囲】
【請求項１】
データセンタ内にデータセンタリソースを自動的に構成するためのコンピュータ実装方法であって、
前記データセンタの管理ソフトウェアに前記データセンタ内の複数のノードと複数のスイッチとの間の接続状態および前記複数のスイッチ間の接続状態を収集させる段階と、
前記管理ソフトウェアから前記接続状態を受信する段階と、
前記接続状態に基づいて、前記データセンタのネットワークトポロジを生成する段階と、
前記複数のノードの各イーサネットインタフェースに対してネットワーク名を結び付ける段階であって、前記複数のノードの特定のイーサネットインタフェースが、対応する前記特定のイーサネットインタフェースに接続されるネットワークの名称と結び付けられる段階と、
前記複数のノードの各イーサネットインタフェースに結び付けられる前記ネットワーク名に基づいて、前記複数のノード間で整合ノードを決定する段階と、
ユーザのユーザデバイスからリクエストを受信する段階と、
前記整合ノードの情報に少なくとも基づいて前記リクエストをサポートするべく、前記データセンタのリソースを構成する段階と、
を備えるコンピュータ実装方法。
【請求項２】
前記リクエストが満たされたことを決定する段階と、
前記リソースが他のユーザにとってアクセス可能であるように前記リソースを分解する段階と、
をさらに備える、請求項１に記載のコンピュータ実装方法。
【請求項３】
前記複数のノードの各イーサネットインタフェースに対してネットワーク名を結び付ける段階が、前記管理ソフトウェアのデータベースフィールドを更新する段階をさらに含む、請求項１または２に記載のコンピュータ実装方法。
【請求項４】
ＭＬＡＧ（マルチシャーシリンクアグリゲーショングループ）機能をサポートする前記複数のノードのうちの少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースを決定する段階と、
少なくとも１つのノードの前記２つまたはそれより多くのイーサネットインタフェースを「サポートＭＬＡＧ」として更新する段階と、
をさらに備える、請求項１から３のいずれか一項に記載のコンピュータ実装方法。
【請求項５】
前記データセンタの前記リソースが、前記少なくとも１つのノードの前記２つまたはそれより多くのイーサネットインタフェースの情報に少なくとも基づいて、前記リクエストをサポートするべく構成される、請求項４に記載のコンピュータ実装方法。
【請求項６】
前記少なくとも１つのノードの前記２つまたはそれより多くのイーサネットインタフェースが、第１のＨＴＴＰ（ハイパーテキストトランスファープロトコル）パッチを介して、「サポートＭＬＡＧ」として更新される、請求項４または５に記載のコンピュータ実装方法。
【請求項７】
前記複数のノードの少なくとも１つの別のノードを決定する段階であって、前記少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースは、複数のスイッチのうちの単一のスイッチに接続される、段階と、
前記少なくとも１つの別のノードの前記２つまたはそれより多くのイーサネットインタフェースを「サポートＬＡＧ（リンクアグリゲーショングループ）」として更新する段階と、
をさらに備える、請求項４から６のいずれか一項に記載のコンピュータ実装方法。
【請求項８】
前記データセンタの前記リソースが、前記少なくとも１つの別のノードの前記２つまたはそれより多くのイーサネットインタフェースの情報に少なくとも基づいて、前記リクエストをサポートするべく構成される、請求項７に記載のコンピュータ実装方法。
【請求項９】
ＤＣＢ（データセンタブリッジング）を含むネットワーク属性に少なくとも基づいて、前記リクエストをサポートするべく、前記データセンタの前記リソースを構成する段階
をさらに備える、請求項７または８に記載のコンピュータ実装方法。
【請求項１０】
前記少なくとも１つの別のノードの前記２つまたはそれより多くのイーサネットインタフェースが、第２のＨＴＴＰパッチを介して「サポートＬＡＧ」として更新される、請求項７から９のいずれか一項に記載のコンピュータ実装方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概してサーバシステムに関し、より具体的には、ネットワーク管理に関する。
【背景技術】
【０００２】
データセンタの技術は、今日の世界においてより一層重要になっている。エンターテインメント並びに他の必要性のためにモバイルデバイスおよびコンピュータを利用する個人ユーザだけでなく、会社もまたミッションクリティカルなタスクを実行するべく、企業のコンピューティングシステムに依存している。これら全てのアプリケーションおよびデバイスが、主にデータセンタによりサポートされる。例えば、米国特許第８,２４８,７９９号において、データセンタは、筐体、筐体に配置される多数のサーバモジュール、筐体内およびサーバモジュール上に配置される多数の冷却ユニット、並びに冷却ユニットの近くで筐体に取り付けられるファンを含む。データセンタが稼働している場合、加熱された空気がファンにより冷却ユニットに送られ、次に冷却された空気がサーバモジュールに入るように送られる。
【０００３】
データセンタは通常、サーバ、ネットワーク、およびストレージデバイスの３つの主要コンポーネントを備える。さらに、データセンタ管理ソフトウェアが通常、データセンタ内のこれらのコンポーネントを管理するべく使用される。例えば、データセンタ管理ソフトウェアが、エンドユーザからリクエストを受信し、次に、これらのリクエストを処理するべく、データセンタの適切なリソースを構成する。構成されたリソースは、コンピューティング能力、メモリおよびストレージサイズ、ＮＩＣ（ネットワークインタフェースカード）速度、およびＶＬＡＮ（仮想ローカルエリアネットワーク）ＩＤ（アイデンティフィケーション）を含んでよい。しかしながら、インテル（登録商標）ＲＳＤ（ラックスケールデザイン）のような、従来のデータセンタ管理ソフトウェアは、会社およびエンドユーザからのリクエストへより優れたサポートをするべく、さらなる改善を必要とする。
【発明の概要】
【０００４】
本開示の様々な例によるシステムおよび方法は、管理アプリケーションを使用してデータセンタ内のリソースを自動的に構成することにより、上述の問題の解決法を提供する。管理アプリケーションは、データセンタのコンピュータリソース、ストレージリソース、およびネットワークリソースの情報を収集するべく、データセンタのデータセンタ管理ソフトウェアと通信し得る。データセンタのネットワークリソース情報に少なくとも基づいて、管理アプリケーションは、データセンタのネットワークトポロジを生成し得る。特定のユーザからのリクエストの受信に応じて、管理アプリケーションは、リクエストに整合する、データセンタの適切なリソースを構成し得る。本詳細な説明のために、単語「ｃｏｍｐｏｓｅ（構成する）」または「ｃｏｍｐｏｓｉｎｇ（構成する）」は、整合リソース（例えば、コンピュータリソース、ストレージリソースまたはネットワークリソース）を「ｓｅａｒｃｈｉｎｇ（検索する）」および特定のユーザに対して整合リソースを「ａｌｌｏｃａｔｉｎｇ（割り当てる）」ことを意味する。いくつかの実装において、整合リソースは、整合リソースが「ｄｅ−ｃｏｍｐｏｓｅｄ（分解される）」まで、他のユーザがアクセス可能でないかもしれない。
【０００５】
本開示の一態様によると、データセンタ内にデータセンタリソースを構成するためのコンピュータ実装方法は、（１）データセンタの管理ソフトウェアにデータセンタ内の複数のノードと複数のスイッチとの間の接続状態および複数のスイッチ間の接続状態を収集させる段階と、（２）管理ソフトウェアから接続状態を受信する段階と、（３）接続状態に基づいて、データセンタのネットワークトポロジを生成する段階と、（４）複数のノードの各イーサネット（登録商標）インタフェースに対してネットワーク名を結び付ける（ｐａｔｃｈ）段階であって、複数のノードの特定のイーサネットインタフェースが、対応する特定のイーサネットインタフェースに接続されるネットワークの名称と結び付けられる、段階と、（５）複数のノードの各イーサネットインタフェースに結び付けられるネットワーク名に基づいて、複数のノード間で整合ノードを決定する段階と、（６）ユーザのユーザデバイスからリクエストを受信する段階と、（７）整合ノードの情報に少なくとも基づいて、リクエストをサポートするべく、データセンタのリソースを構成する段階を備える。いくつかの例において、複数のノードおよび複数のスイッチの各々は、ＬＬＤＰ（リンクレイヤディスカバリプロトコル）を介して、対応する近傍情報を収集し得る。
【０００６】
いくつかの例において、コンピュータ実装方法は、リクエストが満たされたことを決定する段階および、リソースが他のユーザにとってアクセス可能であるようにリソースを分解する段階をさらに備える。いくつかの例において、複数のノードの各イーサネットインタフェースに対してネットワーク名を結び付ける段階は、管理ソフトウェアのデータベースフィールドを更新する段階をさらに備える。
【０００７】
いくつかの例において、データセンタ内のコンピュータリソースの属性は、ＣＰＵ（中央処理装置）のコア、速度、および製造の情報、並びにメモリのサイズおよび速度を備えるが、これらに限定されない。データセンタ内のストレージリソースの属性は、ストレージの種類（例えば、ＳＡＳ（シリアルアタッチドＳＣＳＩ）、ＳＡＴＡ（Ｓｅｒｉａｌ  Ａｔ  Ａｔｔａｃｈｍｅｎｔ）またはＮＶＭｅ（不揮発性メモリエクスプレス））およびストレージサイズを備えるが、これらに限定されない。データセンタ内のネットワークリソースの属性は、ＶＬＡＮ（仮想ローカルエリアネットワーク）およびネットワーク帯域幅／速度を備えるが、これらに限定されない。
【０００８】
本開示の別の態様によると、データセンタ内にデータセンタリソースを構成するためのコンピュータ実装方法は、（１）データセンタの管理ソフトウェアにデータセンタ内の複数のノードと複数のスイッチとの間の接続状態および複数のスイッチ間の接続状態を収集させる段階と、（２）管理ソフトウェアから接続状態を受信する段階と、（３）接続状態に基づいて、データセンタのネットワークトポロジを生成する段階と、（４）ＭＬＡＧ（マルチシャーシリンクアグリゲーショングループ）機能をサポートする複数のノードのうちの少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースを決定する段階と、（５）少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースを「サポートＭＬＡＧ」として更新する段階と、（６）ユーザのユーザデバイスからリクエストを受信する段階と、（７）少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースの情報に少なくとも基づいて、リクエストをサポートするべく、データセンタのリソースを構成する段階を備える。
【０００９】
いくつかの例において、少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースが、ＨＴＴＰ（ハイパーテキストトランスファープロトコル）パッチを介して、「サポートＭＬＡＧ」として更新される。ＨＴＴＰパッチは、データセンタ内の部分的なリソース（例えば、リソースの１つのフィールド）を更新するべく使用され得る。
【００１０】
本開示の別の態様によると、データセンタ内にデータセンタリソースを構成するためのコンピュータ実装方法は、（１）データセンタの管理ソフトウェアにデータセンタ内の複数のノードと複数のスイッチとの間の接続状態および複数のスイッチ間の接続状態を収集させる段階と、（２）管理ソフトウェアから接続状態を受信する段階と、（３）接続状態に基づいて、データセンタのネットワークトポロジを生成する段階と、（４）複数のノードの各イーサネットインタフェースに対してネットワーク名を結び付ける段階であって、複数のノードの特定のイーサネットインタフェースが、対応する特定のイーサネットインタフェースに接続されるネットワークの名称と結び付けられる、段階と、（５）複数のノードの各イーサネットインタフェースに結び付けられるネットワーク名に基づいて、複数のノード間で整合ノードを決定する段階と、（６）ＭＬＡＧ機能をサポートする複数のノードのうちの少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースを決定する段階と、（７）少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースを「サポートＭＬＡＧ」として更新する段階と、（８）複数のノードの少なくとも１つの別のノードを決定する段階であって、少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースは、複数のスイッチのうちの単一のスイッチに接続される、決定する段階と、（９）少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースを「サポートＬＡＧ（リンクアグリゲーショングループ）」として更新し、ユーザのユーザデバイスからリクエストを受信する段階と、（１０）整合ノードの情報、少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースの情報、または、少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースの情報に少なくとも基づいて、リクエストをサポートするべく、データセンタのリソースを構成する段階を備える。
【００１１】
いくつかの例において、データセンタ内のデータセンタリソースを構成するためのコンピュータ実装方法は、ＤＣＢ（データセンタブリッジング）を含むネットワーク属性に少なくとも基づいて、リクエストをサポートするべく、データセンタのリソースを構成する段階をさらに備える。
【００１２】
本詳細な説明のために、単語「ＬＡＧ」はまた、同様の用語「Ｐｏｒｔ  Ｇｒｏｕｐ（ポートグループ）」または「ＥｔｈｅｒＣｈａｎｎｅｌ（イーサチャネル）」をカバーしてよい。本詳細な説明のために、単語「ＭＬＡＧ」はまた、同様の用語「ＭＣ−ＬＡＧ（マルチシャーシリンクアグリゲーショングループ）」または「ＶＰＣ（仮想ポートチャネル）」をカバーしてよい。
【００１３】
いくつかの例において、少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースは、第１のＨＴＴＰパッチを介して「サポートＭＬＡＧ」として更新されるが、少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースは、第２のＨＴＴＰパッチを介して「サポートＬＡＧ」として更新される。
【００１４】
本開示の別の態様による、命令を記憶する非一時的コンピュータ可読記憶媒体が提供される。プロセッサにより命令が実行される場合、命令はプロセッサに、（１）データセンタの管理ソフトウェアにデータセンタ内の複数のノードと複数のスイッチとの間の接続状態および複数のスイッチ間の接続状態を収集させる段階と、（２）管理ソフトウェアから接続状態を受信する段階と、（３）接続状態に基づいて、データセンタのネットワークトポロジを生成する段階と、（４）複数のノードの各イーサネットインタフェースに対してネットワーク名を結び付ける段階であって、複数のノードの特定のイーサネットインタフェースが、対応する特定のイーサネットインタフェースに接続されるネットワークの名称と結び付けられる、段階と、（５）複数のノードの各イーサネットインタフェースに結び付けられるネットワーク名に基づいて、複数のノード間で整合ノードを決定する段階と、（６）ユーザのユーザデバイスからリクエストを受信する段階と、（７）整合ノードの情報に少なくとも基づいて、リクエストをサポートするべく、データセンタのリソースを構成する段階、を含む動作を実行させる。
【００１５】
本開示の別の態様による、命令を記憶する非一時的コンピュータ可読記憶媒体が提供される。プロセッサにより命令が実行される場合、命令はプロセッサに、（１）データセンタの管理ソフトウェアにデータセンタ内の複数のノードと複数のスイッチとの間の接続状態および複数のスイッチ間の接続状態を収集させる段階と、（２）管理ソフトウェアから接続状態を受信する段階と、（３）接続状態に基づいて、データセンタのネットワークトポロジを生成する段階と、（４）ＭＬＡＧ（マルチシャーシリンクアグリゲーショングループ）機能をサポートする複数のノードのうちの少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースを決定する段階と、（５）少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースを「サポートＭＬＡＧ」として更新する段階と、（６）ユーザのユーザデバイスからリクエストを受信する段階と、（７）少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースの情報に少なくとも基づいて、リクエストをサポートするべく、データセンタのリソースを構成する段階、を含む動作を実行させる。
【００１６】
本開示の別の態様による、命令を記憶する非一時的コンピュータ可読記憶媒体が提供される。プロセッサにより命令が実行される場合、命令はプロセッサに、（１）データセンタの管理ソフトウェアにデータセンタ内の複数のノードと複数のスイッチとの間の接続状態および複数のスイッチ間の接続状態を収集させる段階と、（２）管理ソフトウェアから接続状態を受信する段階と、（３）接続状態に基づいて、データセンタのネットワークトポロジを生成する段階と、（４）複数のノードの各イーサネットインタフェースに対してネットワーク名を結び付ける段階であって、複数のノードの特定のイーサネットインタフェースが、対応する特定のイーサネットインタフェースに接続されるネットワークの名称と結び付けられる、段階と、（５）複数のノードの各イーサネットインタフェースに結び付けられるネットワーク名に基づいて、複数のノード間で整合ノードを決定する段階と、（６）ＭＬＡＧ機能をサポートする複数のノードのうちの少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースを決定する段階と、（７）少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースを「サポートＭＬＡＧ」として更新する段階と、（８）複数のノードの少なくとも１つの別のノードを決定する段階であって、少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースは複数のスイッチのうちの単一のスイッチに接続される、段階と、（９）少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースを「サポートＬＡＧ（リンクアグリゲーショングループ）」として更新し、ユーザのユーザデバイスからリクエストを受信する段階と、（１０）整合ノードの情報、少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースの情報、または、少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースの情報に少なくとも基づいて、リクエストをサポートするべく、データセンタのリソースを構成する段階、を含む動作を実行させる。
【００１７】
いくつかの例において、管理アプリケーションは、少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースを「サポートＬＡＧ」として更新するべく使用される。いくつかの例において、管理ソフトウェアは、少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースの接続状態をチェックする。
【００１８】
本開示の追加の特徴および利点は、以下の説明に記載されることになり、部分的に、説明から明らかであろう。または本明細書に開示された原理の実践により学習され得る。本開示の特徴および利点は、添付の特許請求の範囲において特に指摘される手段および組み合わせによって、実現され得て、得られ得る。これらのおよび他の本開示の特徴は、以下の説明および添付の特許請求の範囲からより十分に明らかになるであろう。または本明細書に記載の原理の実践により学習され得る。
【図面の簡単な説明】
【００１９】
上記に挙げた並びにその他の本開示の利点および特徴を得られ得る態様を説明するべく、上記に簡潔に説明された本原理のより詳細な説明が、添付図面に示されたそれらの具体例を参照して提供されるであろう。これらの図面は本開示の例示的な態様を示すのみであり、したがって、その範囲の限定であるとみなされるべきではない。本明細書における原理が、添付図面の使用を通じた追加的な具体性および詳細により、記載および説明される。
【００２０】
【図１Ａ】本開示のいくつかの実装による、ユーザリクエストのための適切なリソースを構成することが可能な例示的なデータセンタを示している概略ブロック図である。
【図１Ｂ】本開示のいくつかの実装による、ユーザリクエストのための適切なリソースを構成することが可能な例示的なデータセンタを示している概略ブロック図である。
【図１Ｃ】本開示のいくつかの実装による、ユーザリクエストのための適切なリソースを構成することが可能な例示的なデータセンタを示している概略ブロック図である。
【００２１】
【図２Ａ】本開示の一実装による、データセンタ内のデータセンタリソースを自動的に構成するための例示的な方法である。
【図２Ｂ】本開示の一実装による、データセンタ内のデータセンタリソースを自動的に構成するための例示的な方法である。
【図２Ｃ】本開示の一実装による、データセンタ内のデータセンタリソースを自動的に構成するための例示的な方法である。
【００２２】
【図３】本開示の様々な例による、例示的なシステムを示す。
【図４】本開示の様々な例による、例示的なシステムを示す。
【発明を実施するための形態】
【００２３】
本開示は多くの異なる形態で具現化され得る。代表的な実施形態が図面内に示され、本明細書に詳細に説明されるであろう。本開示は、本開示の原理の一例または一例示であり、本開示の広範な態様を、示される実施形態に限定することが意図されていない。その範囲において、例えば、要約書、概要、および、詳細な説明の項目において開示されるが、特許請求の範囲において明示的に記載されない要素および限定は、含意、推論、または他の方法により、単独で、または集合的に特許請求の範囲に組み込まれるべきではない。本詳細な説明のために、具体的に否定されない限り、単数形は複数形を含み、逆もまた同様であり、単語「ｉｎｃｌｕｄｉｎｇ（含む）」は「ｉｎｃｌｕｄｉｎｇ  ｗｉｔｈｏｕｔ  ｌｉｍｉｔａｔｉｏｎ（限定なく含む）」を意味する。さらに、「ａｂｏｕｔ（約）」、「ａｌｍｏｓｔ（ほぼ）」、「ｓｕｂｓｔａｎｔｉａｌｌｙ（実質的に）」、「ａｐｐｒｏｘｉｍａｔｅｌｙ（およそ）」等のような近似の単語が、例えば、「ａｔ（〜で）、ｎｅａｒ（近く）または、ｎｅａｒｌｙ  ａｔ（ほとんど〜で）」または「ｗｉｔｈｉｎ  ３−５％  ｏｆ（３−５％以内の）」または「ｗｉｔｈｉｎ  ａｃｃｅｐｔａｂｌｅ  ｍａｎｕｆａｃｔｕｒｉｎｇ  ｔｏｌｅｒａｎｃｅｓ（許容可能な製造公差内）」またはそれらの任意の論理的組み合わせなどを意味するべく、本明細書で使用され得る。
【００２４】
本開示の様々な例は、管理アプリケーションを使用してデータセンタ内のリソースを自動的に構成するための方法を提供する。管理アプリケーションは、データセンタのコンピュータリソース、ストレージリソース、およびネットワークリソースの情報を収集するべく、データセンタ管理ソフトウェアと通信し得る。データセンタのネットワークリソース情報に少なくとも基づいて、管理アプリケーションは、データセンタのネットワークトポロジを生成し得る。特定のユーザからのリクエストの受信に応じて、管理アプリケーションは、リクエストに整合する、データセンタの適切なリソースを構成し得る。
【００２５】
図１Ａは、本開示のいくつかの実装による、ユーザリクエストの受信に応じて、ネットワークグループ内に適切なノードを構成することが可能な例示的なデータセンタ１００Ａを示している概略ブロック図である。この例において、データセンタ１００Ａは、管理アプリケーション１０１、データセンタ管理ソフトウェア１０２、管理スイッチ１０３、複数のノード（例えば、１０４−Ａ、１０４−Ｂおよび１０４−Ｃ）および複数のスイッチ（例えば、データスイッチ１０７およびデータスイッチ１０９）を含む。データセンタ管理ソフトウェア１０２は、管理スイッチ１０３を介して、複数のノード（例えば、１０４−Ａ、１０４−Ｂおよび１０４−Ｃ）および複数のスイッチ（例えば、データスイッチ１０７およびデータスイッチ１０９）のイーサネットインタフェースの能力をチェックするべく、構成アルゴリズムを使用し得る。
【００２６】
この例において、管理アプリケーション１０１は、データセンタ管理ソフトウェア１０２と通信し、管理ソフトウェア１０２に複数のノード（例えば、１０４−Ａ、１０４−Ｂおよび１０４−Ｃ）と複数のスイッチ（例えば、１０７および１０９）との間の接続状態および複数のスイッチ（例えば、１０７および１０９）間の接続状態を収集させる。続いて、管理アプリケーション１０１は、データセンタ管理ソフトウェア１０２から接続状態を受信し得て、接続状態に基づいて、データセンタ１００Ａのネットワークトポロジを生成し得る。
【００２７】
図１Ａにおいて、管理アプリケーション１０１は、複数のノード１０４−Ａ、１０４−Ｂおよび１０４−Ｃの各イーサネットインタフェースに対してネットワーク名をさらに結び付け得る。複数のノード１０４−Ａ、１０４−Ｂおよび１０４−Ｃの特定のイーサネットインタフェースは、対応する特定のイーサネットインタフェースに接続されるネットワークの名称と結び付けられる。
【００２８】
この例において、スイッチ１０７（例えば、データスイッチＡおよびデータスイッチＢ）は、ネットワーク＿１  １０６に属するが、スイッチ１０９（例えば、データスイッチＣおよびデータスイッチＤ）は、ネットワーク＿２  １０８に属する。ノード１０４−ＡのＮＩＣ‐１およびＮＩＣ‐３は、スイッチ１０７（すなわちデータスイッチＢ）に接続される。ノード１０４−ＣのＮＩＣ‐１は、スイッチ１０７（すなわちデータスイッチＢ）に接続される。ノード１０４−ＢのＮＩＣ‐１は、スイッチ１０９（すなわちデータスイッチＤ）に接続される。したがって、ノード１０４−Ａおよび１０４−Ｃのイーサネットインタフェースは、ネットワーク＿１  １０６の名称と結び付けられ得るが、ノード１０４−Ｂのイーサネットインタフェースは、ネットワーク＿１  １０８の名称と結び付けられ得る。
【００２９】
複数のノード１０４−Ａ、１０４−Ｂおよび１０４−Ｃの各イーサネットインタフェースに結び付けられるネットワーク名に基づいて、管理アプリケーション１０１は、複数のノード１０４−Ａ、１０４−Ｂおよび１０４−Ｃ間で整合ノードを決定し得る。例えば、ノード１０４−Ａおよび１０４−Ｃのイーサネットインタフェースは、ネットワーク＿１  １０６の名称で全て結び付けられる。したがって、管理アプリケーション１０１は、ノード１０４−Ａおよび１０４−Ｃが同一のネットワーク＿１  １０６に属し、整合ノードであることを決定し得る。
【００３０】
図１Ｂは、本開示のいくつかの実装による、ＭＬＡＧ機能をサポートする少なくとも１つのノードを構成することが可能な例示的なデータセンタ１００Ｂを示している概略ブロック図である。この例において、データセンタ１００Ｂは、管理アプリケーション１０１、データセンタ管理ソフトウェア１０２、管理スイッチ１０３、複数のノード（例えば、１０４−Ａおよび１０４−Ｂ）および複数のスイッチ（例えば、１０７および１０９）を含む。
【００３１】
この例において、管理アプリケーション１０１は、データセンタ管理ソフトウェア１０２と通信し、管理ソフトウェア１０２に複数のノード（例えば、１０４−Ａおよび１０４−Ｂ）と複数のスイッチ（例えば、１０７および１０９）との間の接続状態および複数のスイッチ（例えば、１０７および１０９）間の接続状態を収集させる。続いて、管理アプリケーション１０１は、データセンタ管理ソフトウェア１０２から接続状態を受信し得て、接続状態に基づいて、図１Ｂに示されるように、データセンタ１００Ｂのネットワークトポロジを生成し得る。
【００３２】
管理アプリケーション１０１は、ＭＬＡＧ（マルチシャーシリンクアグリゲーショングループ）機能をサポートする少なくとも１つのノード（例えば、ノード１０４−Ａ）の２つまたはそれより多くのイーサネットインタフェースをさらに決定し得る。この例において、ノード１０４−ＡのＮＩＣ‐１は、データスイッチＡに接続されるが、ノード１０４−ＡのＮＩＣ‐２はデータスイッチＢに接続される。また、ノード１０４−ＡのＮＩＣ‐３は、データスイッチＡに接続されるが、ノード１０４−ＡのＮＩＣ‐４はデータスイッチＢに接続される。データスイッチＡとデータスイッチＢとの間に確立されたＭＬＡＧインターリンク１１０がある。管理アプリケーション１０１は、ノード１０４−ＡのＮＩＣ‐１、ＮＩＣ‐２、ＮＩＣ‐３およびＮＩＣ‐４を「サポートＭＬＡＧ」として、更新し得る。いくつかの実装において、管理アプリケーション１０１は、ＨＴＴＰ（ハイパーテキストトランスファープロトコル）パッチを介して、ノード１０４−ＡのＮＩＣ‐１、ＮＩＣ‐２、ＮＩＣ‐３およびＮＩＣ‐４を「サポートＭＬＡＧ」として、更新し得る。例えば、管理アプリケーション１０１は、ノード１０４−ＡのＮＩＣ‐１、ＮＩＣ‐２、ＮＩＣ‐３およびＮＩＣ‐４をＭＬＡＧの属性によって結び付け得る。
【００３３】
図１Ｃは、本開示のいくつかの実装による、ＬＡＧ機能をサポートするノードを構成することが可能な例示的なデータセンタ１００Ｃを示している概略ブロック図である。この例において、データセンタ１００Ｃは、管理アプリケーション１０１、データセンタ管理ソフトウェア１０２、管理スイッチ１０３、複数のノード（例えば、１０４−Ａおよび１０４−Ｂ）および複数のスイッチ（例えば、１０７および１０９）を含む。
【００３４】
この例において、管理アプリケーション１０１は、データセンタ管理ソフトウェア１０２と通信し、管理ソフトウェア１０２に複数のノード（例えば、１０４−Ａおよび１０４−Ｂ）と複数のスイッチ（例えば、１０７および１０９）との間の接続状態および複数のスイッチ（例えば、１０７および１０９）間の接続状態を収集させる。続いて、管理アプリケーション１０１は、データセンタ管理ソフトウェア１０２から接続状態を受信し得て、接続状態に基づいて、図１Ｃに示されるように、データセンタ１００Ｃのネットワークトポロジを生成し得る。
【００３５】
管理アプリケーション１０１は、複数のノード（例えば、１０４−Ａおよび１０４−Ｂ）の各イーサネットインタフェースに対してネットワーク名を結び付け得、複数のノード（例えば、１０４−Ａおよび１０４−Ｂ）の特定のイーサネットインタフェースは、対応する特定のイーサネットインタフェースに接続されるネットワークの名称と結び付けられる。ノード１０４−ＡのＮＩＣ‐１、２は、ネットワーク＿１  １０６のデータスイッチＡに接続されるが、ノード１０４−ＡのＮＩＣ‐３、４は、ネットワーク＿１  １０６のデータスイッチＢにそれぞれ接続される。ノード１０４−ＢのＮＩＣ‐１、２は、ネットワーク＿１  １０６のデータスイッチＢおよびネットワーク＿２  １０８のデータスイッチＤにそれぞれ接続される。したがって、ノード１０４−Ａのイーサネットインタフェースは、ネットワーク＿１  １０６の名称と結び付けられ得るが、ノード１０４−Ｂのイーサネットインタフェースは、ネットワーク＿１  １０８およびネットワーク＿１  １０６の名称と結び付けられ得る。
【００３６】
管理アプリケーション１０１は、ＭＬＡＧ（マルチシャーシリンクアグリゲーショングループ）機能をサポートする少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースをさらに決定し得る。この例において、ＭＬＡＧ機能をサポートするノードは示されていない。
【００３７】
管理アプリケーション１０１またはデータセンタ管理ソフトウェア１０２は、ＬＡＧ機能をサポートする少なくとも１つのノード（例えば、ノード１０４−Ａ）の２つまたはそれより多くのイーサネットインタフェースをさらに決定し得る。この例において、ノード１０４−ＡのＮＩＣ‐１は、データスイッチＡに接続されるが、ノード１０４−ＡのＮＩＣ‐２もデータスイッチＡに接続される。さらに、ノード１０４−ＡのＮＩＣ‐３は、データスイッチＢに接続されるが、ノード１０４−ＡのＮＩＣ‐４もデータスイッチＢに接続される。一方で、ノード１０４−ＢのＮＩＣ‐１およびＮＩＣ‐２は、異なるスイッチに接続される。したがって、ノード１０４−ＡのＮＩＣ‐１、ＮＩＣ‐２、ＮＩＣ‐３およびＮＩＣ‐４は、ＬＡＧ機能をサポートするが、ノード１０４−ＢのＮＩＣ‐１およびＮＩＣ‐２は、ＬＡＧ機能をサポートしない。
【００３８】
いくつかの実装において、管理アプリケーション１０１は、ＨＴＴＰ（ハイパーテキストトランスファープロトコル）パッチを介して、ノード１０４−ＡのＮＩＣ‐１、ＮＩＣ‐２、ＮＩＣ‐３およびＮＩＣ‐４を「サポートＬＡＧ」として更新し得る。例えば、管理アプリケーション１０１は、ノード１０４−ＡのＮＩＣ‐１、ＮＩＣ‐２、ＮＩＣ‐３およびＮＩＣ‐４をＬＡＧの属性によって結び付け得る。
【００３９】
図１Ａから図１Ｃにおける例示的なシステム１００Ａ−１００Ｃ内にはいくつかのコンポーネントのみが示されているが、データを処理または記憶することの可能な、信号を受信または送信することの可能な、もしくは、下流にあるコンポーネントに新鮮な空気を提供することの可能な、様々な種類の電子コンポーネントまたはコンピューティングコンポーネントも、例示的なシステム１００Ａ−１００Ｂに含まれ得る。さらに、例示的なシステム１００Ａ−１００Ｂの電子コンポーネントまたはコンピューティングコンポーネントは、様々な種類のアプリケーションを実行するべく構成され得る、および／または、様々な種類のオペレーティングシステムを使用し得る。これらのオペレーティングシステムは、Ａｎｄｒｏｉｄ（登録商標）、ＢＳＤ（Ｂｅｒｋｅｌｅｙ  Ｓｏｆｔｗａｒｅ  Ｄｉｓｔｒｉｂｕｔｉｏｎ）、ｉＯＳ（ｉＰｈｏｎｅ（登録商標）ＯＳ）、Ｌｉｎｕｘ（登録商標）、ＯＳ  Ｘ、Ｕｎｉｘ（登録商標）系リアルタイムオペレーティングシステム（例えば、ＱＮＸ）、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）、Ｗｉｎｄｏｗ  Ｐｈｏｎｅ、およびＩＢＭ  ｚ／ＯＳを含み得るが、これらに限定されない。
【００４０】
例示的なシステム１００Ａ−１００Ｂに対して所望される実装に応じて、ＴＣＰ／ＩＰ、ＯＳＩ（開放型システム間相互接続）、ＦＴＰ（ファイル転送プロトコル）、ＵＰｎＰ（ユニバーサルプラグアンドプレイ）、ＮＦＳ（ネットワークファイルシステム）、ＣＩＦＳ（共通インターネットファイルシステム）、ＡｐｐｌｅＴａｌｋなどを含む、様々なネットワーキングプロトコルおよびメッセージングプロトコルが使用され得るが、これらに限定されない。当業者には理解されるであろうが、図１Ａから図１Ｃに示される例示的なシステム１００Ａ−１００Ｂは、説明を目的として使用されている。したがって、ネットワークシステムは、必要に応じて、多くの変形とともに実装され得て、それでいて本開示の様々な例によるネットワークプラットフォームの構成を提供し得る。
【００４１】
図１Ａから図１Ｃの例示的な構成において、例示的なシステム１００Ａ−１００Ｂは、特定の無線チャネルのコンピューティング範囲内にある１または複数の電子デバイスと通信するべく動作可能な１または複数の無線コンポーネントも含み得る。無線チャネルは、Ｂｌｕｅｔｏｏｔｈ（登録商標）、セルラー、ＮＦＣ、またはＷｉ−Ｆｉチャネルのように、デバイスが無線で通信することを可能にするべく使用される、任意の適切なチャネルであり得る。デバイスは、当技術分野において知られているような、１または複数の従来の有線通信接続を有し得ることが理解されるべきである。様々なその他の要素および／または組み合わせが、様々な例の範囲内で同様に可能である。
【００４２】
上記の検討は、本開示の原理および様々な例の例示であることが意図されている。ひとたび上記の開示が十分に理解されれば、多数の変形および修正が明らかになるであろう。
【００４３】
図２Ａは、本開示の一実装による、データセンタ内のデータセンタリソースを自動的に構成するための例示的な方法２００Ａである。例示的な方法２００Ａは、単に例示的な目的で提示されており、本開示によるその他の方法が、同様の、または代替的な順序で、もしくは並行して実行される、追加の、より少ない、または代替的な段階を含み得ることが理解されるべきである。例示的な方法２００Ａは、図１Ａ、図１Ｂおよび図１Ｃに示されるように、データセンタ内の複数のノードと複数のスイッチとの間の接続状態並びに複数のスイッチ間の接続状態を収集することにより、段階２０２で始まる。いくつかの例において、データセンタ管理ソフトウェアが、データセンタ内の接続状態を自動的に収集し得る。いくつかの例において、管理アプリケーションは、データセンタ管理ソフトウェアにデータセンタ内の接続状態を収集させ得る。
【００４４】
段階２０４で、管理アプリケーションは、データセンタ管理ソフトウェアから接続状態を受信し得る。段階２０６で、図１Ａ、図１Ｂおよび図１Ｃに示されるように、接続状態に基づいて、管理アプリケーションはデータセンタのネットワークトポロジを生成し得る。
【００４５】
段階２０８で、管理アプリケーションは、複数のノードの各イーサネットインタフェースに対してネットワーク名を結び付け得る。いくつかの例において、図１Ａに示されるように、複数のノードの特定のイーサネットインタフェースが、対応する特定のイーサネットインタフェースに接続されるネットワークの名称と結び付けられ得る。
【００４６】
段階２１０で、図１Ａに示されるように、管理アプリケーションは、複数のノードの各イーサネットインタフェースに結び付けられるネットワーク名に基づいて、複数のノード間で整合ノードを決定し得る。整合ノードは、データセンタ内の同一のネットワークに属する。段階２１２で、管理アプリケーションは、ユーザのユーザデバイスからリクエストを受信する。段階２１４で、管理アプリケーションは、整合ノードの情報に少なくとも基づいて、リクエストをサポートするべく、データセンタのリソースを構成し得る。
【００４７】
いくつかの例において、コンピュータ実装方法２００Ａは、リクエストが満たされたことを決定する段階および、リソースが他のユーザにとってアクセス可能であるようにリソースを分解する段階をさらに備える。
【００４８】
いくつかの例において、複数のノードの各イーサネットインタフェースに対してネットワーク名を結び付ける段階は、管理ソフトウェアのデータベースフィールドを更新する段階を含む。
【００４９】
図２Ｂは、本開示の一実装による、データセンタ内のデータセンタリソースを自動的に構成するための例示的な方法２００Ｂである。例示的な方法２００Ｂは、図１Ａ、図１Ｂおよび図１Ｃに示されるように、データセンタ内の複数のノードと複数のスイッチとの間の接続状態および複数のスイッチ間の接続状態を収集することにより、段階２２２で始まる。
【００５０】
段階２２４で、管理アプリケーションは、データセンタ内のデータセンタ管理ソフトウェアから接続状態を受信し得る。段階２２６で、図１Ａ、図１Ｂおよび図１Ｃに示されるように、接続状態に基づいて、管理アプリケーションはデータセンタのネットワークトポロジを生成し得る。
【００５１】
段階２２８で、管理アプリケーションは、図１Ｂに示されるように、ＭＬＡＧ（マルチシャーシリンクアグリゲーショングループ）機能をサポートする複数のノードのうちの少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースを決定し得る。段階２３０で、管理アプリケーションは、図１Ｂに示されるように、少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースを「サポートＭＬＡＧ」として、さらに更新し得る。
【００５２】
段階２３２で、管理アプリケーションは、ユーザのユーザデバイスからリクエストを受信する。段階２３４で、管理アプリケーションは、少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースの情報に少なくとも基づいて、リクエストをサポートするべく、データセンタのリソースを構成し得る。
【００５３】
いくつかの例において、少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースが、ＨＴＴＰ（ハイパーテキストトランスファープロトコル）パッチを介して、「サポートＭＬＡＧ」として更新される。
【００５４】
図２Ｃは、本開示の一実装による、データセンタ内のデータセンタリソースを自動的に構成するための例示的な方法２００Ｃである。例示的な方法２００Ｃは、図１Ａ、図１Ｂおよび図１Ｃに示されるように、データセンタ内の複数のノードと複数のスイッチとの間の接続状態および複数のスイッチ間の接続状態を収集することにより、段階２５２で始まる。段階２５４で、管理アプリケーションは、データセンタ内のデータセンタ管理ソフトウェアから接続状態を受信し得る。段階２５６で、図１Ａ、図１Ｂおよび図１Ｃに示されるように、接続状態に基づいて、管理アプリケーションはデータセンタのネットワークトポロジを生成し得る。
【００５５】
段階２５８で、管理アプリケーションは、複数のノードの各イーサネットインタフェースに対してネットワーク名を結び付け得る。いくつかの例において、図１Ａに示されるように、複数のノードの特定のイーサネットインタフェースは、対応する特定のイーサネットインタフェースに接続されるネットワークの名称と結び付けられ得る。段階２６０で、図１Ａに示されるように、管理アプリケーションは、複数のノードの各イーサネットインタフェースに結び付けられるネットワーク名に基づいて、複数のノード間で整合ノードを決定し得る。
【００５６】
段階２６２で、管理アプリケーションは、図１Ｂに示されるように、ＭＬＡＧ機能をサポートする複数のノードのうちの少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースを決定し得る。段階２６４で、管理アプリケーションは、図１Ｂに示されるように、「サポートＭＬＡＧ」として、少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースをさらに更新し得る。
【００５７】
段階２６６で、管理アプリケーションは、複数のノードの少なくとも１つの別のノードを決定し得る。少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースは、複数のスイッチの単一のスイッチに接続される。段階２６８で、管理アプリケーションは、「サポートＬＡＧ（リンクアグリゲーショングループ）」として、少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースを更新し得る。
【００５８】
段階２７０で、管理アプリケーションは、ユーザのユーザデバイスからリクエストを受信する。段階２７２で、管理アプリケーションは、整合ノードの情報、少なくとも１つのノードの２つまたはそれより多くのイーサネットインタフェースの情報、または少なくとも１つの別のノードの２つまたはそれより多くのイーサネットインタフェースの情報に少なくとも基づいて、リクエストをサポートするべく、データセンタのリソースを構成し得る。
【００５９】
いくつかの例において、データセンタ内のデータセンタリソースを構成するためのコンピュータ実装方法２００Ｃは、ＤＣＢ（データセンタブリッジング）を含むネットワーク属性に少なくとも基づいて、リクエストをサポートするべく、データセンタのリソースを構成する段階をさらに備える。
【００６０】
図３から図４に示されるような、例示的なシステムおよびネットワークの簡潔な導入的説明が本明細書に開示される。様々な例が記載されるので、これらの変形が本明細書に説明されるであろう。本開示はここから図３を参照する。
【００６１】
図３は、例示的なコンピューティングシステム３００を示し、このコンピューティングシステムのコンポーネントが、バス３０２を使用して、互いに電気的に通じている。システム３００は、処理装置（ＣＰＵまたはプロセッサ）３３０、および、（例えば、リードオンリメモリ（ＲＯＭ）３０６およびランダムアクセスメモリ（ＲＡＭ）３０８のような）システムメモリ３０４を含む、様々なシステムコンポーネントをプロセッサ３３０へ連結するシステムバス３０２を含む。システム３００は、プロセッサ３３０と直接接続された、プロセッサ３３０に近接した、または、プロセッサ３３０の一部として統合された、高速メモリのキャッシュを含み得る。システム３００は、プロセッサ３３０による迅速なアクセスのために、メモリ３０４および／またはストレージデバイス３１２からキャッシュ３２８へデータをコピーし得る。このようにして、キャッシュは、データを待っている間、プロセッサ３３０に性能ブーストを提供し得る。これらの、およびその他のモジュールは、様々な動作を実行するべく、プロセッサ３３０を制御し得る、または、プロセッサ３３０を制御するべく構成され得る。その他のシステムメモリ３０４も、使用するために利用可能であってよい。メモリ３０４は、異なる性能特性を有する複数の異なる種類のメモリを含み得る。プロセッサ３３０は、モジュール１  ３１４、モジュール２  ３１６、およびモジュール３  ３１８のような、ストレージデバイス３１２に組み込まれた任意の汎用プロセッサおよびハードウェアモジュールまたはソフトウェアモジュールを含み得る。ハードウェアモジュールまたはソフトウェアモジュールは、プロセッサ３３０並びにソフトウェア命令が実際のプロセッサ設計に組み込まれている専用プロセッサを制御するべく構成される。プロセッサ３３０は、本質的に、完全に自己完結型のコンピューティングシステムであってよく、複数のコアまたはプロセッサ、バス、メモリコントローラ、キャッシュなどを含む。マルチコアプロセッサは、対称的または非対称的であってよい。
【００６２】
コンピューティングデバイス３００とのユーザインタラクションを可能にするべく、入力デバイス３２０が入力メカニズムとして提供される。入力デバイス３２０は、音声用のマイク、ジェスチャ入力またはグラフィカル入力用のタッチセンサ式スクリーン、キーボード、マウス、動き入力などを備え得る。いくつかの例において、マルチモードのシステムは、システム３００と通信するべく複数の種類の入力をユーザが提供することを可能にし得る。この例において、出力デバイス３２２も提供される。通信インタフェース３２４は、ユーザ入力およびシステム出力を制御および管理し得る。
【００６３】
ストレージデバイス３１２は、コンピュータによりアクセス可能なデータを記憶するための不揮発性メモリであり得る。ストレージデバイス３１２は、磁気カセット、フラッシュメモリカード、ソリッドステートメモリデバイス、デジタル多用途ディスク、カートリッジ、ランダムアクセスメモリ（ＲＡＭ）３０８、リードオンリメモリ（ＲＯＭ）３０６、およびそれらのハイブリッドであり得る。
【００６４】
コントローラ３１０は、ＢＭＣ（ベースボード管理コントローラ）のような、システム３００上の特化したマイクロコントローラまたはプロセッサであり得る。いくつかの事例において、コントローラ３１０は、（ＩＰＭＩ）の一部であり得る。さらに、いくつかの事例において、コントローラ３１０は、システム３００のマザーボードまたはメイン回路基板に組み込まれ得る。コントローラ３１０は、システム管理ソフトウェアとプラットフォームハードウェアとの間のインタフェースを管理し得る。コントローラ３１０は、さらに以下に記載されるように、コントローラまたは周辺機器のような、様々なシステムデバイスおよびコンポーネント（内部および／または外部）とも通信し得る。
【００６５】
コントローラ３１０は、通知、アラート、および／またはイベントに対する特定の応答を生成し得、自動ハードウェアリカバリ手順などのための命令またはコマンドを生成するべく、リモートデバイスまたはコンポーネント（例えば、電子メールメッセージ、ネットワークメッセージなど）と通信し得る。管理者はまた、以下にさらに記載されるように、特定のハードウェアリカバリ手順または動作を開始または実行するべく、コントローラ３１０とリモート通信し得る。
【００６６】
コントローラ３１０はまた、システムイベントログコントローラ、および／または、コントローラ３１０により受信されたイベント、アラート、並びに通知を管理および維持するためのストレージを含み得る。例えば、コントローラ３１０またはシステムイベントログコントローラは、１または複数のデバイスおよびコンポーネントからアラートまたは通知を受信し得て、そのアラートまたは通知をシステムイベントログストレージコンポーネントに維持し得る。
【００６７】
フラッシュメモリ３３２は、記憶および／またはデータ転送のためにシステム３００により使用され得る、電子的不揮発性コンピュータ記憶媒体またはチップであり得る。フラッシュメモリ３３２は、電気的に消去および／または再プログラミングされ得る。フラッシュメモリ３３２は、例えば、ＥＰＲＯＭ（消去可能プログラマブルリードオンリメモリ）、ＥＥＰＲＯＭ（電気的消去可能プログラマブルリードオンリメモリ）、ＲＯＭ、ＮＶＲＡＭ、またはＣＭＯＳ（相補型金属酸化膜半導体）を含み得る。フラッシュメモリ３３２は、システム３００が最初に電源オンにされた場合にシステム３００により実行されるファームウェア３３４を、このファームウェア３３４に対して特定される１セットの構成と共に記憶できる。フラッシュメモリ３３２はまた、ファームウェア３３４により使用される構成を記憶し得る。
【００６８】
ファームウェア３３４は、基本入出力システムまたは、ＥＦＩ（拡張可能ファームウェアインタフェース）もしくはＵＥＦＩ（ユニファイド拡張可能ファームウェアインタフェース）のような、同等物を含み得る。ファームウェア３３４は、システム３００が起動されるたびに、一連のプログラムとしてロードおよび実行され得る。ファームウェア３３４は、１セットの構成に基づいて、システム３００に存在するハードウェアを認識、初期化、および試験し得る。ファームウェア３３４は、ＰＯＳＴ（パワーオンセルフテスト）のようなセルフテストを、システム３００に対して実行し得る。このセルフテストは、ハードディスクドライブ、光学式読取デバイス、冷却デバイス、メモリモジュール、拡張カードなどのような、様々なハードウェアコンポーネントの機能を試験し得る。ファームウェア３３４は、オペレーティングシステム（ＯＳ）を記憶するべく、メモリ３０４、ＲＯＭ３０６、ＲＡＭ３０８、および／またはストレージデバイス３１２内の領域をアドレス指定し得て、割り当て得る。ファームウェア３３４は、ブートローダおよび／またはＯＳをロードし得て、システム３００の制御をこのＯＳに与え得る。
【００６９】
システム３００のファームウェア３３４は、システム３００の様々なハードウェアコンポーネントをファームウェア３３４がどのように制御するかを規定するファームウェア構成を含み得る。このファームウェア構成は、システム３００の様々なハードウェアコンポーネントが起動される順序を決定し得る。ファームウェア３３４は、ファームウェアのデフォルト構成におけるパラメータとは異なり得る、様々な異なるパラメータが設定されることを可能にする、ＵＥＦＩのようなインタフェースを提供し得る。例えば、ユーザ（例えば、管理者）は、クロック速度およびバス速度を特定するべく、どんな周辺機器がシステム３００に取り付けられているかを規定するべく、健全性（例えば、ファン速度およびＣＰＵ温度限界）の監視を構成するべく、および／または、システム３００の全体的な性能および電力使用量に影響を及ぼす様々なその他のパラメータを提供するべく、ファームウェア３３４を使用し得る。ファームウェア３３４はフラッシュメモリ３３２に記憶されるように示されるが、メモリ３０４またはＲＯＭ３０６のようなその他のメモリコンポーネントにファームウェア３３４が記憶され得ることを、当業者は容易に認識するであろう。
【００７０】
システム３００は、１または複数のセンサ３２６を含み得る。１または複数のセンサ３２６は、例えば、１または複数の温度センサ、熱センサ、酸素センサ、化学センサ、ノイズセンサ、ヒートセンサ、電流センサ、電圧検出器、エアフローセンサ、流量センサ、赤外線温度計、熱流束センサ、温度計、パイロメータなどを含み得る。１または複数のセンサ３２６は、例えば、バス３０２を介して、プロセッサ、キャッシュ３２８、フラッシュメモリ３３２、通信インタフェース３２４、メモリ３０４、ＲＯＭ３０６、ＲＡＭ３０８、コントローラ３１０、およびストレージデバイス３１２と通信し得る。１または複数のセンサ３２６はまた、ｉｎｔｅｒ−ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ（Ｉ２Ｃ）、汎用出力（ＧＰＯ）などのような、１または複数の異なる手段を介して、システムのその他のコンポーネントと通信し得る。システム３００の様々な種類のセンサ（例えば、センサ３２６）はまた、冷却ファン速度、電力ステータス、オペレーティングシステム（ＯＳ）ステータス、ハードウェアステータスなどのようなパラメータについて、コントローラ３１０にレポートし得る。
【００７１】
図４は、説明される方法または動作を実行すること、並びに、グラフィカルユーザインタフェース（ＧＵＩ）を生成および表示することに使用され得るチップセットアーキテクチャを有する例示的なコンピュータシステム４００を示す。コンピュータシステム４００は、開示される技術を実装するべく使用され得るコンピュータハードウェア、ソフトウェア、およびファームウェアを含み得る。システム４００は、特定される計算を実行するべく構成されたソフトウェア、ファームウェア、およびハードウェアを実行することの可能な、様々な物理的および／または論理的に別個のリソースを表す、プロセッサ４１０を含み得る。プロセッサ４１０は、プロセッサ４１０への入力およびプロセッサ４１０からの出力を制御し得る、チップセット４０２と通信し得る。この例において、チップセット４０２は、ディスプレイのような出力デバイス４１４へ情報を出力し、例えば磁気媒体およびソリッドステート媒体を含み得るストレージデバイス４１６に情報を読み出し得、かつ書き込み得る。チップセット４０２はまた、ＲＡＭ４１８からデータを読み出し得、かつＲＡＭ４１８にデータを書き込み得る。様々なユーザインタフェースコンポーネント４０６にインタフェース接続するためのブリッジ４０４が、チップセット４０２にインタフェース接続するために提供され得る。そのようなユーザインタフェースコンポーネント４０６は、キーボード、マイク、タッチ検出および処理回路、マウスのようなポインティングデバイスなどを含み得る。概して、システム４００への入力は、機械により生成された、および／または人により生成された、様々なソースのいずれかからのものであり得る。
【００７２】
チップセット４０２はまた、様々な物理インタフェースを有し得る、１または複数の通信インタフェース４０８とインタフェース接続し得る。そのような通信インタフェースは、有線および無線ローカルエリアネットワークのための、ブロードバンド無線ネットワークのための、並びにパーソナルエリアネットワークのためのインタフェースを含み得る。さらに、この機械は、ユーザインタフェースコンポーネント４０６を介してユーザからの入力を受信し得て、プロセッサ４１０を使用してこれらの入力を解釈することにより、ブラウジング機能のような適切な機能を実行し得る。
【００７３】
さらに、チップセット４０２はまた、電源をオンにした場合に、コンピュータシステム４００により実行され得るファームウェア４１２と通信し得る。ファームウェア４１２は、１セットのファームウェア構成に基づいて、コンピュータシステム４００に存在するハードウェアを認識、初期化、および試験し得る。ファームウェア４１２は、ＰＯＳＴのようなセルフテストを、システム４００に実行し得る。このセルフテストは、様々なハードウェアコンポーネント４０２−４１８の機能を試験し得る。ファームウェア４１２は、ＯＳを記憶するべく、メモリ４１８の領域をアドレス指定し得て、割り当て得る。ファームウェア４１２は、ブートローダおよび／またはＯＳをロードし得、システム４００の制御をこのＯＳに与え得る。いくつかの事例において、ファームウェア４１２は、ハードウェアコンポーネント４０２−４１０および４１４−４１８と通信し得る。ここで、ファームウェア４１２は、チップセット４０２を通じて、および／または１または複数の他のコンポーネントを通じて、ハードウェアコンポーネント４０２−４１０および４１４−４１８と通信し得る。いくつかの事例において、ファームウェア４１２は、ハードウェアコンポーネント４０２−４１０および４１４−４１８と直接通信し得る。
【００７４】
例示的なシステム３００および４００は、１つよりも多くのプロセッサ（例えば、３３０、４１０）を有し得ること、または、より高い処理能力を提供するべく一緒にネットワーク接続されたコンピューティングデバイスのグループまたはクラスタの一部であり得ることが理解され得る。
【００７５】
説明を明瞭にするため、いくつかの例において、本開示は、デバイス、デバイスコンポーネント、ソフトウェアにおいて具現化される方法の段階またはルーチン、もしくはハードウェアとソフトウェアとの組み合わせを有する、機能ブロックを有する、個別の機能ブロックを含むように提示されてよい。
【００７６】
いくつかの実施形態において、コンピュータ可読記憶デバイス、媒体、およびメモリは、ビットストリームなどを含む、ケーブルまたは無線信号を含み得る。しかしながら、非一時的コンピュータ可読記憶媒体について述べる場合、エネルギー、キャリア信号、電磁波、および信号それ自体のような媒体は、明示的に除外する。
【００７７】
上述の例による方法は、コンピュータ可読媒体に記憶される、もしくは、そうでなければコンピュータ可読媒体から利用可能なコンピュータ実行可能命令を使用して実装され得る。このような命令は、例えば、汎用コンピュータ、専用コンピュータ、または専用処理デバイスに、ある機能または機能のグループを実行させる、または、そうでなければこれらを構成する、命令およびデータを含み得る。使用されるコンピュータリソースの一部分は、ネットワーク上でアクセス可能であり得る。コンピュータ実行可能な命令は、例えば、バイナリ、アセンブリ言語のような中間フォーマット命令、ファームウェア、またはソースコードであってよい。
【００７８】
これらの開示による方法を実装するデバイスは、ハードウェア、ファームウェア、および／またはソフトウェアを含み得て、様々なフォームファクタのいずれかを取り得る。そのようなフォームファクタの代表的な例は、ラップトップ、スマートフォン、スモールフォームファクタパーソナルコンピュータ、パーソナルデジタルアシスタント、ラックマウントデバイス、スタンドアロンデバイスなどを含む。本明細書に説明される機能はまた、周辺機器またはアドインカードで具現化され得る。そのような機能はまた、さらなる例として、様々なチップ中の回路基板にて、または単一のデバイスで実行する様々なプロセスにて実装され得る。
【００７９】
様々な例が、多種多様な動作環境においてさらに実装され得る。これらは、いくつかの事例において、多数のアプリケーションのいずれかを動作させるために使用され得る、１または複数のサーバコンピュータ、ユーザコンピュータまたはコンピューティングデバイスを含み得る。ユーザまたはクライアントデバイスは、標準的なオペレーティングシステムを動作させるデスクトップまたはラップトップコンピュータのような、多数の汎用パーソナルコンピュータ、並びに、モバイルソフトウェアを動作させ、多数のネットワーキングプロトコルおよびメッセージングプロトコルをサポートすることが可能なセルラー、無線、およびハンドヘルドデバイスのうちのいずれかを含み得る。そのようなシステムはまた、様々な市販のオペレーティングシステム、および、ディベロップメントおよびデータベース管理のような目的のための他の既知のアプリケーションのいずれかを動作させる、多数のワークステーションを含み得る。これらのデバイスはまた、ダミーターミナル、シンクライアント、ゲームシステム、およびネットワークを介して通信可能なその他のデバイスのような、その他の電子デバイスを含み得る。
【００８０】
例またはそれらの一部分がハードウェアに実装されるという点で、本開示は、以下の技術、またはそれらの組み合わせのいずれかによって実装され得る。すわなち、データ信号に対してロジック機能を実装するための論理ゲートを有するディスクリートロジック回路、適切な組み合わせ論理ゲートを有する特定用途向け集積回路（ＡＳＩＣ）、プログラマブルゲートアレイ（ＰＧＡ）、および／またはフィールドプログラマブルゲートアレイ（ＦＰＧＡ）などのようなプログラム可能なハードウェアといった技術である。
【００８１】
大部分の例は、ＴＣＰ／ＩＰ、ＯＳＩ、ＦＴＰ、ＵＰｎＰ、ＮＦＳ、ＣＩＦＳ、ＡｐｐｌｅＴａｌｋなどのような様々な市販のプロトコルのいずれかを使用した通信をサポートするための、当業者にはよく知られているであろう少なくとも１つのネットワークを利用する。このネットワークは、例えば、ローカルエリアネットワーク、ワイドエリアネットワーク、仮想プライベートネットワーク、インターネット、イントラネット、エクストラネット、公衆交換電話網、赤外線ネットワーク、無線ネットワーク、および、それらのいずれかの組み合わせであり得る。
【００８２】
これらの技術による方法を実装するデバイスは、ハードウェア、ファームウェア、および／またはソフトウェアを含み得て、様々なフォームファクタのいずれかを取り得る。そのようなフォームファクタの代表的な例は、サーバコンピュータ、ラップトップ、スマートフォン、スモールフォームファクタパーソナルコンピュータ、パーソナルデジタルアシスタントなどを含む。本明細書に記載される機能はまた、周辺機器またはアドインカードで具現化され得る。そのような機能はまた、さらなる例として、様々なチップ中の回路基板にて、または単一のデバイスで実行する様々なプロセスにて実装され得る。
【００８３】
ウェブサーバを利用する例において、ウェブサーバは、ＨＴＴＰサーバ、ＦＴＰサーバ、ＣＧＩサーバ、データサーバ、Ｊａｖａ（登録商標）サーバ、およびビジネスアプリケーションサーバを含む、様々なサーバまたはミッドティアアプリケーションのいずれかを動作させ得る。ユーザデバイスからのリクエストに応じて、ウェブサーバはまた、プログラムまたはスクリプトを実行可能であり得る。例えば、ウェブサーバは、１または複数のウェブアプリケーションを実行し得、それは、例えば、Ｊａｖａ（登録商標）、Ｃ、Ｃ＃、またはＣ＋＋、もしくは、Ｐｅｒｌ、Ｐｙｔｈｏｎ、またはＴＣＬ、並びにそれらの組み合わせのような任意のスクリプト言語である、任意のプログラミング言語で書かれた１または複数のスクリプトまたはプログラムとして実装され得る。ウェブサーバはまた、公開市場において市販のものを含む、データベースサーバを包含し得る。
【００８４】
サーバシステムは、上記に検討したような、様々なデータ記憶装置並びに他のメモリおよび記憶媒体を含み得る。これらは、こうしたコンピュータのうちの１または複数に対してローカルな（および／またはそれらに常駐する）記憶媒体上、もしくは、ネットワークにわたって、こうしたコンピュータのうちのいずれかまたは全てから離れた記憶媒体上のような、様々な位置に存在し得る。特定の１セットの例おいて、情報は、当業者にはよく知られたストレージエリアネットワーク（ＳＡＮ）に存在し得る。同様に、コンピュータ、サーバ、またはその他のネットワークデバイスに帰属する機能を実行するためのあらゆる必要なファイルが、必要に応じて、ローカルに、および／またはリモートに記憶され得る。コンピュータ化されたデバイスをシステムが含む場合、そのようなデバイスは、それぞれ、バスを介して電気的に連結され得るハードウェア要素を含み得、要素は、例えば、少なくとも１つの中央処理装置（ＣＰＵ）、少なくとも１つの入力デバイス（例えば、マウス、キーボード、コントローラ、タッチセンサ式ディスプレイ要素、またはキーパッド）、および、少なくとも１つの出力デバイス（例えば、ディスプレイデバイス、プリンタ、またはスピーカ）を含む。そのようなシステムはまた、ディスクドライブ、光ストレージ装置、および、ランダムアクセスメモリ（ＲＡＭ）またはリードオンリメモリ（ＲＯＭ）、並びにリムーバブル媒体デバイス、メモリカード、フラッシュカードなどのようなソリッドステートストレージデバイスのような、１または複数のストレージデバイスを含み得る。
【００８５】
コードまたはコードの一部分を含むための記憶媒体およびコンピュータ可読媒体は、記憶媒体およびコンピューティング媒体を含む、当技術分野において既知のまたは使用される任意の適切な媒体を含み得る。記憶媒体およびコンピューティング媒体は、データまたは情報の記憶および／または送信のためのリムーバブルおよび非リムーバブル媒体を含み得るが、これらに限定されない。リムーバブルおよび非リムーバブル媒体は、所望の情報を記憶するために使用され得て、かつ、システムデバイスによりアクセスされ得る、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたはその他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）、またはその他の光ストレージ装置、磁気カセット、磁気テープ、磁気ディスクストレージ、またはその他の磁気ストレージデバイスを備える。データまたは情報は、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータを含み得る。本明細書にて提供される技術および教示に基づいて、当業者は、本開示の様々な態様を実装するための、その他の仕方および／または方法を理解するであろう。
【００８６】
したがって、明細書および図面は、限定的な意味ではなく、例示とみなされるべきである。しかしながら、特許請求の範囲に記載される本願のより広範な主旨および範囲から逸脱することなく、様々な修正および変更がこれらに成され得ることが明らかであろう。
【図１Ａ】
2019036944.tif 000003
【図１Ｂ】
2019036944.tif 000004
【図１Ｃ】
2019036944.tif 000005
【図２Ａ】
2019036944.tif 000006
【図２Ｂ】
2019036944.tif 000007
【図２Ｃ】
2019036944.tif 000008
【図３】
2019036944.tif 000009
【図４】
2019036944.tif 000010