JP2018045688A - プロキシ装置、その動作方法、及びプロキシ装置に係る装置の動作方法 - Google Patents

プロキシ装置、その動作方法、及びプロキシ装置に係る装置の動作方法 Download PDF

Info

Publication number
JP2018045688A
JP2018045688A JP2017171915A JP2017171915A JP2018045688A JP 2018045688 A JP2018045688 A JP 2018045688A JP 2017171915 A JP2017171915 A JP 2017171915A JP 2017171915 A JP2017171915 A JP 2017171915A JP 2018045688 A JP2018045688 A JP 2018045688A
Authority
JP
Japan
Prior art keywords
bmc
configuration
proxy
chassis
data
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.)
Granted
Application number
JP2017171915A
Other languages
English (en)
Other versions
JP6889071B2 (ja
JP2018045688A5 (ja
Inventor
ポール オラリグ,ソムポング
Paul Olarig Sompong
ポール オラリグ,ソムポング
ティー ファム,ソン
T Pham Son
ティー ファム,ソン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2018045688A publication Critical patent/JP2018045688A/ja
Publication of JP2018045688A5 publication Critical patent/JP2018045688A5/ja
Priority to JP2021085557A priority Critical patent/JP7084528B2/ja
Application granted granted Critical
Publication of JP6889071B2 publication Critical patent/JP6889071B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3034Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3093Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/177Initialisation or configuration control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • 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/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2206/00Indexing scheme related to dedicated interfaces for computers
    • G06F2206/10Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
    • G06F2206/1014One time programmable [OTP] memory, e.g. PROM, WORM

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】ホストがシャーシ内の全ての装置を識別するのに必要とする時間を削減できる、プロキシ装置、その動作方法及びプロキシ装置に係るNVM装置の動作方法を提供する。【解決手段】プロキシ装置125は、装置通信ロジック、レセプションロジック、そして伝送ロジックを含む。装置通信ロジックはコントロールプレーンを通じて、少なくとも1つの装置と関連されたデータに対して少なくとも1つの装置と通信する。レセプションロジックは少なくとも1つの装置に対する情報を要請するクエリ(query)をホストから受信する。伝送ロジックは少なくとも1つの装置に対するデータを含む応答をホストに伝送する。【選択図】図4

Description

[関連する出願データ]
本出願は、全ての目的のために本明細書において参考文献として引用された米国仮特許出願番号62/394,726号(2016年9月14日付け出願)を優先権主張する。
本出願は、全ての目的のために本明細書において参考文献として引用された米国仮(provisional)特許出願番号US15/345,507号(2016年11月7日付け出願)を優先権主張する。
本出願は、全ての目的のために本明細書において参考文献として引用された米国特許出願番号US15/256,495号(2016年9月2日付け出願)、及び、全ての目的のために本明細書において参考文献として引用された米国仮特許出願番号US62/366,622号(2016年7月26日付け出願)に関連する。ここで、該、米国特許出願番号US15/256,495号は、該、米国仮特許出願番号US62/366,622号を優先権主張する。
本出願は、全ての目的のために本明細書において参考文献として引用された米国特許出願番号US15/345,509号(2016年11月7日付け出願)、及び、全ての目的のために本明細書において参考文献として引用された米国仮特許出願番号US62/394,727号(2016年9月14日付け出願)に関連する。ここで、該、米国特許出願番号US15/345,509号は、該、米国仮特許出願番号US62/394,727号を優先権主張する。
本発明はプロキシ装置、その動作方法、及びプロキシ装置に係る装置の動作方法に係り、さらに詳細には、該、プロキシ装置に係る装置が、不揮発性メモリ(NVM)装置、特にNVMeoF(NVM Express(NVMe) over Fabrics)装置であって、シャーシ内に設置されている複数のNVMeoF装置を、ホストがプロキシを用いて発見する場合に関する。
非特許文献1(NVMeoF 仕様(specification)1.0)の1.5.6セクションから抜粋された部分はディスカバリメカニズム(discovery mechanism)を定義する。ホストは、このディスカバリメカニズムを利用してホストがアクセス可能なNVMサブシステムを判断(determine)する。ディスカバリコントローラは最小の機能を支援し、ディスカバリログページ(Discovery Log Page)の検索(retrieve)を可能にするために必要な機能のみを具現する。
ディスカバリコントローラはI/O(Input/Output)キューを具現せず、且つネームスペース(namespaces)を露出しない。ディスカバリサービスはディスカバリコントローラのみを露出するNVMサブシステムである。初期ディスカバリサービスに連結するのに必要な情報を得るためにホストが使用する方法は具現の仕方によって異なる。
ディスカバリコントローラによって提供されるディスカバリログページは1つ以上のエントリを含む。各々のエントリはNVMe伝送を通じてNVMサブシステムに連結するホストに対する必要な情報を明示する。1つのエントリはホストがアクセスできるネームスペースを露出するNVMサブシステムを明示するか、或いは他のディスカバリサービスへの照会(referral)を明示する。支援される最大照会深さ(depth)は8レベルである。
BMC(Baseboard Management Controller、ベース基板管理コントローラ)は、サーバ、PC、スイッチ、そしてその他のコンピュータベースの製品で幅広く使用されて来た。一般的に、ディスカバリ過程を開始し、完了するために、BMCはホストプロセッサ及び/又はOS(Operating System)に依存する。その上に、BMCの主業務はシステムの健全状態(health status)をモニタすることであるので、BMCは何れのシャーシ(Chassis)内にBMCが設置されているかを考慮しない。
BMCと関連されたセンサーは内部の物理的変数(例えば、温度、濕度、電力供給電圧、ファン速度、通信パラメーター、そしてOS機能)を測定する。仮に、このような変数の中で何れかが所定の限界を外れると、ホスト側の管理者(administrator)はその旨の通知を受ける。そうすると、その管理者は遠隔操作によって適当な行動を取る。幾つの状況で、BMCは何らかの修正行動(例えば、ファン速度の増加、或いは、フェイルしたサブシステムの再ブーティング、等)を取る。必要に応じて及び/又は適切にモニタされた装置/システムに対しては遠隔操作により、電源の再投入、又は再ブーティングができる。このような方法で、一人の管理者が多数のサーバと他の装置とを同時に遠隔管理できる。これによって、ネットワークの全体運営費用を減らし、ネットワークの信頼性を保障できる。
従って、ホストがシャーシ内の全てのNVM装置を識別するのに必要とする時間を削減するための方法が依然として要求されている。
NVMeoF仕様1.0
本発明は上述された技術的課題を解決するためのものであって、本発明の目的は、ホストがシャーシ内の全ての装置(例えば、NVM装置)を識別するのに必要とする時間を削減できる、プロキシ装置、その動作方法、及びプロキシ装置に係る装置(例えば、NVM装置)の動作方法を提供することにある。
本発明の実施形態に係るシャーシ内のプロキシ装置は、装置通信ロジック、レセプション(reception)ロジック、そして伝送ロジックを含む。装置通信ロジックはコントロールプレーンを通じて、少なくとも1つの装置と関連されたデータに対して少なくとも1つの装置と通信する。レセプションロジックは少なくとも1つの装置に対する情報を要請するクエリ(query)をホストから受信する。伝送ロジックは少なくとも1つの装置に対するデータを含む応答をホストに伝送する。
本発明の他の実施形態に係るプロキシ装置の動作方法は、プロキシ装置で、少なくとも1つの装置から少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階、データはコントロールプレーンを通じて少なくとも1つの装置から受信され、少なくとも1つのデータを記録にコンパイル(compile)する段階、プロキシ装置で、少なくとも1つの装置の構成に対してクエリをホストから受信する段階、そして記録をプロキシ装置からホストに伝送する段階を含み、プロキシ装置は、少なくとも1つの装置から少なくとも1つのデータを受信し、ホストからクエリが受信される前に1つのデータを記録にコンパイルする。
本発明の他の実施形態に係る、プロキシ装置に係る装置の動作方法は、装置の構成の変化を判断する段階、そしてコントロールプレーンを通じて、装置の構成の変化に対してプロキシ装置に通知する段階を含む。
本発明によれば、プロキシ装置が全ての(NVM)装置と通信しておき、任意の(NVM)装置に関するホストからのクエリに即応できるので、ホストがシャーシ内の全ての装置(例えば、NVM装置)を識別するのに必要とする時間を削減できる。
本発明はセルフ構成(self−configure)するプロキシ装置を含む。これを通じて、本発明のプロキシ装置を含むシャーシ内の装置が独立的にセルフディスカバリ(self−discovery)を遂行できるので、列挙(enumeration)プロセスを削減できる。また、多重伝送プロトコルディスカバリ及び管理に関連するOSとホストプロセッサオーバヘッド(overhead)とが防止できる。
本発明の実施形態に係ってNVM(Non−Volatile Memory)装置のディスカバリを遂行するセルフ構成(self−configuring)BMC(Baseboard Management Controller)が設置されたシャーシを示す。 図1のシャーシを追加的に詳細に示す。 図1のシャーシのミッドプレーン上で装置と通信する図1のBMCを示す。 図1のBMCを詳細に示す。 図4のアクセスロジックを詳細に示す。 シグナリング(signaling)のためのピンと共に図1のBMCを示す。 HA(High Availability)構成での図1のシャーシを示す。 図4のビルトイン(built−in)セルフ構成(self−configuration)ロジックを示す。 図8のドライバに対する多様なソース(sources)を示す。 図4の装置通信ロジックを示す。 図1のBMCからディスカバリログページを要請する図1のホストを示す。 本発明の実施形態に係る図1のBMCがセルフ構成するための手続を例示的に示す順序図である。 本発明の実施形態に係る図1のBMCがセルフ構成するための手続を例示的に示す順序図である。 本発明の実施形態に係る図1のBMCがセルフ構成するための手続を例示的に示す順序図である。 本発明の実施形態に係る図1のBMCがセルフ構成するための手続を例示的に示す順序図である。 図4のアクセスロジックが図1のシャーシの構成を判断するための手続を例示的に示す順序図である。 本発明の実施形態に係る図1のBMCが図1のシャーシ内のNVM装置のディスカバリを遂行するための手続を例示的に示す順序図である。 図4の装置通信ロジックが図1のシャーシ内の図3のNVM装置に対するディスカバリ情報を得るための手続を例示的に示す順序図である。 図1のBMCが装置構成の記録を作成するための手続を例示的に示す順序図である。 本発明の実施形態に係る図1のシャーシ内のNVM装置がNVM装置の構成の変化に関して図1のBMCに通知するための手続を例示的に示す順序図である。
以下、本発明の概念の具体的な実施形態に対する参照が詳細に提供される。本発明の概念の具体的な実施形態に対する例は添付された図面に図示される。後続する詳細な説明で、本発明の概念に対する完全な理解を可能にするために多数の具体的な事項が提供される。しかし、当業者はこのような詳細な説明が無くとも本発明の概念を実施することができることを理解しなければならない。他の例で、公知又は共用の方法、段階、構成、回路、及びネットワークは本発明の実施形態の態様を不必要に曖昧にしないために詳細に記載されない。
本明細書で第1及び第2等が多様な構成要素を説明するために使用されることができるが、このような構成要素はこのような用語によって限定されないことと理解される。前記用語は1つの構成要素を他のことと区別するために使用される。例えば、第1論理段階は第2論理段階と称されることができ、これと類似に本発明の概念の範囲を逸脱しない状態で、第2論理段階は第1論理段階と称されることができる。
本発明の概念の発明の説明に使用された用語は特定な実施形態を技術するための目的のみに使用されることであり、本発明の概念を限定する意図としては使用されない。文脈の上に明確に異なりに指示しない限り、単数形態は本発明の概念の説明及び付加された請求項に使用される時、複数の形態を含む意図として使用されたことと理解されなければならない。また、本明細書に使用された“及び/又は”用語は1つ又はそれ以上の関連された羅列された事項の全ての可能な組合わせを指示するか、或いは含むことと理解されなければならない。“含む”という用語が本明細書に使用される場合、記述された特徴、数字、段階、動作、構成、及び/又は部品の存在を明記することであり、これらの1つ又はそれ以上の他の特徴、数字、段階、動作、構成、部品、及び/又はグループの存在又は付加を排除しないこととさらに理解されなければならない。構成及び特徴の図示は一定な比例に描かれたことはなく、一部の構成及び特徴は拡大/縮小して描かれたこともあり得る。
全ての目的のために本明細書において参考文献として引用された、米国仮(provisional)特許出願番号US62/366、622号(2016年7月26日付け出願)とこれを優先権主張している米国特許出願番号US15/256、495号(2016年9月2日付け出願)はセルフディスカバリプロセスを開示している。これらに記述されたセルフディスカバリプロセスによって、NVM装置はセルフディスカバリを遂行できる。このようなプロセスはBMC(Baseboard Management Controller)に拡張できる。BMCはセルフ構成SSDを補完するための“シャーシパーソナリティ(Personality)”情報を得るためにセルフディスカバリを遂行する。
この新しいBMCはブートアップ初期化の間にセルフディスカバリプロセスを遂行する。ミッドプレーン上のVPD(Vital Product Data)などの“シャーシパーソナリティ”情報をEEPROM(Electrically Erasable Programmable Read Only Memory)の公知の位置から読出すことによって、シャーシ−固有データが獲得され、BMCは適切に応答する。例えばBMCは、自分がNVMe(NVM express)シャーシ内にあるか、又はNVMeoF(NVMe over Fabric)シャーシ内にあるかを発見(discover)できる。
仮に、BMCがNVMeoFシャーシ内にある場合、BMCはディスカバリサービス、ロバスト(robust)エラーレポーティング、そして管理機能のみならず、HA(high_availability)構成内のマルチパージング(multi−pathing)BMCなどの適切なNVMeoF諸機能を可能にする。
BMCセルフディスカバリが、BMCがNVMeシャーシ内にあることを発見した場合、BMCは従来のBMC(即ち、NVMeoFを支援しないBMC)として動作する。NVMeモードでは、ドライブディスカバリはインバンド(in−band)PCIe(Peripheral Component Interconnect express)初期化/リンクトレーニングプロセスを通じて実行される。従って、新しいBMCはNVMeベースのシステムとNVMeoFベースのシステムとの双方において使用できる。
大規模NVMeoFストレージシステムにおいてセルフディスカバリを遂行できるBMCは、列挙(enumeration)/ディスカバリプロセスを顕著に削減できる。これは下の理由のためである。
1)ホストCPUができるよりはるかに迅速に、システム内の公知の位置から読出すことによって、システム内にある全てのNASSD(Network−Attached SSD)装置は独立的にセルフディスカバリを遂行できる。セルフディスカバリは、全ての目的のために本明細書において参考文献として引用された、米国仮特許出願番号US62/366、622号(2016年7月26日付に出願)とこれを優先権主張している米国特許出願番号US15/256、495号(2016年9月2日付に出願)とに開示されている。
2)新しいBMCは、BMCに対してのみ公知の位置から読出すことによって、セルフディスカバリを遂行でき、BMCを含むシャーシ内の各々の装置をピング(ping、探り当てる)/ディスカバ(discover、発見)する遠隔ホスト乃至ローカルプロセッサが含まれる場合に要求される時間よりはるかに短い時間内に即時、適切に行動できる。
さらに新しいストレージ装置(又は、NIC(Network Interface Card)などの他の装置)はシャーシ(又は、ホストマシンと称される)と通信するためにNVMeoFのような伝送プロトコルを使用でき、多重伝送プロトコルを支援できる。このような装置がシャーシ内に装着される時、このような装置はブートアップと初期化の間に、セルフディスカバリを遂行できる。このような装置はEEPROM内の公知の位置からVPDを読出すことができる。全ての目的のために本明細書において参考文献として引用された、米国仮特許出願番号US62/366、622(2016年7月26日付け出願)とこれを優先権主張している米国特許出願番号US15/256、495(2016年9月2日付け出願)はこのようなセルフディスカバリプロセスを開示する。
セルフディスカバリが開始されれば、このような装置は自分がNVMeoFシャーシ内に装着されていることを発見できる。そうすると、このような装置は例えばイーサネット(登録商標)ポートを活性化するように自らを構成し、他の不必要な、使用されない、又は支援されない伝送プロトコル支援が非活性化するように自らを構成する。このような方法により、多重伝送プロトコルディスカバリ及び管理に関連してOSとホストプロセッサとにかかるオーバヘッド(overhead)が回避できる。
大規模ストレージシステムで、このようなセルフ構成装置を使用すると列挙プロセスを大幅に削減できる。これは、システムから公知の位置から読出すことによって、全ての装置が独立的にセルフディスカバリを遂行できるからである。その際、ホストプロセッサとOSの存在は不必要である。
BMCはサーバ又はスイッチに組み込まれた低電力コントローラである。装置を制御し、環境的条件を読出すために、BMCはセンサーに連結する。BMCはコントロールプレーン/パスを通じて全てのNVMeoF装置に対する全ての連結を有する。従って、BMCをプロキシ(proxy、代理者)として利用することは、ディスカバリサービスをホスト又はイニシエータ(initiator)に提供するのに有利である。多数の装置とのBMCのこの相互作用があるので、BMCはホストにアクセスできるNVMサブシステムのリストを提供するディスカバリコントローラとしての役割を果たす。
ここで記述されたBMCはeSSD、NASSD、又はシステムに挿入される他の装置のディスカバリを遂行するためのファームウェア(firmware)を含む。NASSDはイーサネット(登録商標)SSD、InfiniBand SSD、Fibre−Channel SSD、SSD、又はこのような通信プロトコル(イーサネット(登録商標)(Ethernet)、InfiniBand、そしてFibre−Channel)の組合わせを提供するSSDを含む。イーサネット(登録商標)、InfiniBand、そしてFibre−Channel伝送プロトコルは単純に例示的であり、本発明の実施形態は他の伝送プロトコルを支援するNASSDを含む。BMCは専用バスとCPLD(Complex Programmable Logic Device)を通じて各々の装置に直接アクセスする。また、BMCは各々の装置が自分の情報をレポートするミッドプレーン上の、公知の不揮発性メモリ位置を読出す。このような方法は列挙プロセスを削減する。BMCは各々の装置の情報をディスカバリログページとして自分の不揮発性メモリ内に格納する。
BMCはコントロールプレーンを利用して装置と通信する。コントロールプレーン、データプレーン、そして管理プレーンは通信(telecommunication)製品の3つの基本構成要素である。コントロールプレーンは、シグナリング(signaling、信号)トラフィックを伝達するネットワークの一部分であって、ルーティング(routing)の責任を果たす。コントロールプレーンの機能はシステム構成(configuration)と管理(management)を含む。コントロールプレーンと管理プレーンはネットワークがその存在理由として伝送するトラフィック(traffic)を実際に負担するデータプレーンを支援する。行政性(administrative)トラフィックを伝送する管理プレーンはコントロールプレーンのサブセット(subset、部分集合)と看做される。
新しいIPMI(Intelligent Platform Management Interface)コマンド(システム リカバリ、System Discovery)は、ローカル又は遠隔ホストがこのようなディスカバリログページを検索するためのBMCのファームウェアによって支援される。遠隔ホストが同一のネットワーク内にある場合、遠隔ホストはBMCのLANインタフェイスを通じてBMCと連結できる。遠隔ホストはまたBMCのローカルホストと連結できる。ディスカバリログページ内のエントリの各々は、NVMe伝送を通じてNVMサブシステムとホストを連結するために必要な情報を指定できる。
NVMeoF標準はイーサネット(登録商標)リンク又はデータプレーンを通じて遂行できるディスカバリサービスを規定(specify)する。反面に、本発明の実施形態はBMCをプロキシとして使用する。これはコントロールプレーンを通じて遂行されるディスカバリサービスを可能にする。ネットワーキングにおいて、一般的にコントロールプレーンへのアクセスはシステム管理者のみに制限され、多数の人/ノードによってアクセスされるデータプレーンよりも優れて保護される。保安(security)の観点から、コントロールプレーンはデータプレーンよりも優れて保護される。その上に、全てのNVMeoF装置から全てのディスカバリログファイルを得るため、システム管理者は、標準によって指定されたように1つの装置当たり1つのコマンドを発行(issue)する代わりに、1つのコマンドをBMCに対して発行すればよい。
図1は本発明の実施形態に係ってNVM(Non−Volatile Memory)装置のディスカバリを遂行するセルフ構成(self−configuring)BMC(Baseboard Management Controller)が設置されたシャーシを示す。図1で、シャーシ105はタワ(塔型)サーバとして図示されている。但し、シャーシ105はラック(rack、架載)サーバであってもよい。
シャーシ105はプロセッサ110、メモリ115、ストレージ装置120、そしてBMC(125)を含む。プロセッサ110は任意の形態のプロセッサ(例えば、Intel Xeon、Celeron、Itanium、Atomプロセッサ、AMD Opteronプロセッサ、ARMプロセッサ等)でもよい。図1は単一のプロセッサを図示しているが、シャーシ105は任意の数のプロセッサを含み得る。メモリ115は何らかの形態のメモリ(例えば、フラッシュメモリ、SRAM(Static Random Access Memory)、PRAM(Persistent Random Access Memory、位相遷移RAM)、FRAM(登録商標)(Ferroelectric Random Access Memory、強誘電体RAM)、又はMRAM(Magnetoresistive Random Access Memory、磁気抵抗RAM)などのNVRAM(Non−Volatile Random Access Memory、不揮発性RAM))でもよい。但し、一般的に、メモリ115はDRAMである。また、メモリ115は多様なメモリタイプの任意の望ましい組合わせでもよい。
ストレージ装置120は任意の形態のストレージ装置である。このような装置の例はSSDを含むが、他のストレージ形態(例えば、HDD(Hard Disk Drive)又は他のロングターム(long−term)ストレージ装置)もやはり可能である。上述されたように、BMC(125)は従来のBMCとして動作するだけでなく、またシャーシ105の構成に基づいてセルフ構成が可能である。
例えば、シャーシ105がNVMeシャーシ又はNVMeoFシャーシである、とする。NVMeシャーシとしてのシャーシ105と共にセルフ構成した後に、BMC(125)は従来のNVMeBMCとして動作する。一方、NVMeoFシャーシとしてのシャーシ105と共にBMC(125)は従来のBMCとして動作するだけでなく、BMC(125)はまたシャーシ105内の他の装置のディスカバリを遂行する。例えば、他の装置は、ストレージ装置120(NIC:Network Interface Card)、そしてディスカバリの対象になり得るBMC(125)のような他の装置を含む。
BMC(125)がシャーシ105内の他の装置のディスカバリを遂行できると記述されているが、BMC(125)はディスカバリを遂行するプロセッサ110に対する1つの可能なプロキシである。他の可能なプロキシは、RAID(Redundant Array of Independent Disks)コントローラ、他のプロセッサ(一般的に、プロセッサ110とは異なるが、スタートアップ(start−up)動作の遂行に連関される)、又は甚だしくはソフトウェアプロキシも含む。本明細書の残る部分で、BMC(125)への全ての参照には、このような他のプロキシ装置、及び、プロセッサ110に対するプロキシとして動作する任意の他の装置に対して言及する意図がある。
図2は図1のシャーシを追加的に詳細に示す。図2を参照すれば、一般的にシャーシ105は1つ以上のプロセッサ110を含む。プロセッサ110はメモリコントローラ205及びクロック210を含み、シャーシ105の部品の動作を調整する(coordinate)ために使用される。また、プロセッサ110は、例えばRAM(random access memory)、ROM(read−only memory)、又は他の状態保持媒体を含むメモリ115と連結される。また、プロセッサ110はストレージ装置120及びネットワークコネクタ215(例えば、イーサネット(登録商標)コネクタ又は無線コネクタ)と連結される。プロセッサ110は他の構成要素の中で入/出力エンジン230を使用して管理される入/出力インタフェイスポートと使用者インタフェイス225が付着されるバス220と連結される。
図3は図1のシャーシ105のミッドプレーン上の装置と通信する、図1のBMC(125)を示す。図3で、BMC(125)とCPLD(Complex Programmable Logic Device)305とは図1のシャーシ105内のマザーボード310上に位置する。図1のシャーシ105は、またミッドプレーン315を含む。ミッドプレーン315は図1のストレージ装置120の例である多様なNASSD(320)、(325)、(330)のような他の構成要素を含む。NASSD(320)、(325)、(330)は、幾つかの例を挙げると、イーサネット(登録商標)、Fibre Channel、InfiniBand、又はNVMeなどの多数の多様な伝送プロトコルの何れかの使用を支援できる。
但し、本発明の一部の実施形態で、NASSD(320)、(325)、(330)の適用範囲はこのような伝送プロトコルのサブセット(可能な1つの例として、イーサネット(登録商標)SSDのみ)に制限される。図3では3つのNASSD(320)、(325)、(330)を示しているが、本発明の実施形態は任意の望ましい数の装置を支援できる。その上に、図3ではNASSD(320)、(325)、(330)のみを図示しているが、イーサネット(登録商標)SSD又はNICのような他の装置がNASSD(320)、(325)、(330)を代替するか、或いはNASSD(320)、(325)、(330)と共に含まれ得る。本明細書の残る部分で、NASSD(320)、(325)、(330)への全ての参照は、これら任意の代替装置も含む意図がある。このような代替装置はNVMeoF装置としてディスカバリ対象になり、NASSD(320)、(325)、(330)を代替できる。
BMC(125)はI2Cバス335とSMBus(340)とを通じてNASSD(320)、(325)、(330)と通信する。NASSD(320)、(325)、(330)は、またEEPROM(345)及びNVM(350)と通信する。NVM(350)は図1のメモリ115として動作する。EEPROM(345)は図1のシャーシ105内の多様な装置による使用に備えて情報を格納する。例えば、EEPROM(345)はVPD(355)を格納する。VPD(355)はNASSD(320)、(325)、(330)とBMC(125)が使用でき、このような装置に関する核心的な情報を格納する。特に、EEPROM(345)はこのような装置の各々に対して分離されたVPD(355)を格納する。
VPD(355)は幾つかの多様な使用法を有する。本発明の一部の実施形態で、VPD(355)はセルフ構成できる各々の装置に対する関連情報を格納するために使用される。従って、VPD(355)はセルフ構成のためにNASSD(320)、(325)、(330)によって使用される情報を格納する。セルフ構成は全ての目的のために本明細書で参考文献として引用された、特許文献1とこれを優先権主張している特許文献2に開示されている。但し、本発明の他の実施形態で、以下で説明されるBMC(125)自体のセルフ構成を遂行するために、VPD(355)は、またBMC(125)によって使用される情報を格納すること。追加的に、本発明のその他の実施形態で、NASSD(320)、(325)、(330)はVPD(355)に情報を書込む。そうすると、BMC(125)は該当情報を読出す。例えば、NASSD(320)、(325)、(330)はそれらのIP住所をVPD(355)に書込む。そうすると、BMC(125)はVPD(355)から該当IP住所を読出す。そうすると、図1のホスト110がBMC(125)に情報を問い合わせる時、BMC(125)はNASSD(320)、(325)、(330)に対する構成情報を提供する。
図3はミッドプレーン315上のEEPROM(345)とマザーボード310上のNVM(350)とを図示しているが、本発明の実施形態は望ましい任意の箇所に位置するこのような構成要素(EEPROM(345)、NVM(350)のみならず、他の構成要素も含む)を支援する。例えば、本発明の一部の実施形態では、EEPROM(345)とNVM(350)とは全てミッドプレーン315上に位置する。本発明の他の実施形態では、EEPROM(345)とNVM(350)とは全てマザーボード310上に位置する。本発明のその他の実施形態では、NVM(350)はミッドプレーン315に位置し、EEPROM(345)はマザーボード310上に位置する。本発明の他の実施形態では、このような構成要素をその他の位置(例えば、図1のシャーシ105内の他のボードの上、或いは完全に他のシャーシ内)に位置させる。
いずれにせよ、先に述べた「コントロールプレーン」は最も広義の場合、BMCとNASSDとの間に介在する部材、即ち上記の、図3を参照して説明した、BMC(125)とNASSD1(320)、NASSD2(325)、…、NASSDn(330)を除く全ての部材とその接続を指す。
図4は図1のBMC(125)を詳細に示す。図4で、BMC125は2つの部分405、410に分割されて図示されている。部分405は本発明の一部の実施形態でセルフ構成を遂行するBMC(125)と関連される。部分410は本発明の他の実施形態で、図1のホスト110に対するプロキシの役割を果たすBMC(125)と関連される。本発明の実施形態が部分405、410の中で少なくとも1つを、要請に応じて含むことに留意しなければならない。
セルフ構成を遂行するために、BMC(125)はアクセスロジック415、ビルトインセルフ構成ロジック420、そしてエラーレポーティング(error reporting)ロジック425を含む。アクセスロジック415はBMC(125)がそれ自身を構成する方法に関する情報にアクセスする。アクセスロジック415は以下で図5を参照して追加的に記述される。図1のシャーシ105の構成に基づいて、適切なドライバを使用するために、ビルトインセルフ構成ロジック420はBMC(125)を構成する。ビルトインセルフ構成ロジック420は以下で図8を参照して追加的に記述される。
エラーレポーティングロジック425は問題がある場合、図1のホスト110にエラーをレポートする。BMC(125)が図1のホスト110にレポートできる問題の例は、図1のシャーシ105がHAシャーシであるが、BMC(125)がHAドライバをアクセスできないか、又はロードできない場合、或いは、BMC(125)がBMC(125)のペアリング(pairing)パートナとHAシステムとして通信できない場合等を含む。
図1のホスト110に対するディスカバリプロキシとして役割を果たすために、BMC(125)は装置通信ロジック430、ログページ生成ロジック435、レセプションロジック(receptionlogic)440、そして伝送ロジック445を含む。装置(例えば、図3のNASSD(320)、(325)、(330))の構成を知るために、装置通信ロジック430はBMC(125)が装置と通信できるようにする。装置通信ロジック430は以下で図10を参照して追加的に記述される。
ログページ生成ロジック435は、図3のNASSD(320)、(325)、(330)から受信された情報を得て、適当な時に図1のホスト110にレポートできるディスカバリログページを生成する。ログページ生成ロジック435は、図3のNASSD(320)、(325)、(330)から受信された情報を単純に収集するか、或いはログページを編集して図3のNASSD(320)、(325)、(330)から反複受信された情報を除去する。ログページの構造は全ての目的のために本明細書で参考文献として引用された非特許文献1(NVMeoF仕様1.0(2016年6月5日付けの1.0バージョン))に記述されている。
本発明の一部の実施形態では、BMC(125)はBMC(125)自体のストレージを有することができる。例えば、他の可能な例の中で、自体のストレージは図3のNVM(350)内に、或いは図3のEEPROM(345)内に存在する。図3のNASSD(320)、(325)、(330)は、その構成情報をBMC(125)に対してこのようなストレージ内に維持されるログページに直接書込むことができる。
レセプションロジック440と伝送ロジック445は、図1のホスト110との通信を可能にする。例えば、レセプションロジック440は図3のNASSD(320)、(325)、(330)に関連する図1のホスト110からクエリ(query)を受信する。伝送ロジック445はこのようなクエリに応答して図1のホスト110に応答を再び伝送する。レセプションロジック440と伝送ロジック445が上述した目的に専用される必要はないことに留意されたい。レセプションロジック440と伝送ロジック445とは、また他の目的のために使用できる。例えば、図10を参照して以下で説明されるように、装置通信ロジック430は図3のNASSD(320)、(325)、(330)にメッセージを伝送する。このようなメッセージは伝送ロジック445を利用して伝送される。また、このようなメッセージへの応答はレセプションロジック440を利用して受信される。
図5は図4のアクセスロジック415を詳細に示す。図5で、アクセスロジック415はVPDリーディング(reading)ロジック505とピンリーディングロジック510とを含む。VPDリーディングロジック505は図3のVPD(355)から情報を読出す。図3のVPD(355)はBMC(125)に特化されたVPDである。図3のVPD(355)内の情報は図1のシャーシ105の構成を含む。反面に、図1のBMC(125)の1つ以上のピン上の1つ以上の信号を読出すことによって、ピンリーディングロジック510は図1のシャーシ105の構成を判断する。図1のBMC(125)のこのようなピンは図1のシャーシ105の構成を指定するのに専用される。
図6はシグナリング(signaling)のためのピンを備える図1のBMC(125)を示す。図6には、BMC(125)が多様なピンを含むことが示されている。ピン605、610は図1のシャーシ105の構成を指定するために使用される。ピン605、610上でシグナリングされる値に基づいて、BMC(125)は図1のシャーシ105の構成を判断する。他の可能な例の中で、ピン605、610はGPIO(general purpose input/output)ピンである。
図5に戻ると、図1のシャーシ105の構成を判断し、適合するドライバをロードするために、ピンリーディングロジック510は図6のピン605、610から読出された情報を利用する。例えば、図8を参照して以下で説明されるように、図1のシャーシ105は3つの相異なる構成を有し得る。3つの相異なる構成はNVMe、NVMeoF、そしてHAを含む。3つの相異なる可能な構成例の中から1つを選ぶためには2つのビットが必要である。2つのビットのために2つのピン上で伝送される信号が必要とする。2つのピンが値‘00’を指定する場合、該当する組合わせは図1のシャーシ105がNVMeシャーシであることを特定する。2つのピンが値‘01’を指定する場合、該当する組合わせは図1のシャーシ105がNVMeoFシャーシであることを特定する。そして、2つのピンが値‘10’を指定する場合、該当する組合わせは図1のシャーシ105がHAシャーシであることを特定する。
又は、3つの可能な構成例は単一ピンによって管理される。例えば、値‘0’はNVMeシャーシを特定し、値‘1’はNVMeoFシャーシを特定し、そして‘0’と‘1’との間の振動はHAシャーシを特定する。但し、3つの以上の組合わせがある場合、シャーシの構成を指定するために、1つ以上のピンが必要とする。
上述した構成例が3つの可能な構成例(NVMe、NVMeoF、そしてHA)の場合を記述したが、本発明の他の実施形態では、4つのドライバ構成(NVMe、NVMeoF、NVMeHA、そしてNVMeoFHA)が存在する。本発明のこのような実施形態で、例えば、ピン605のハイ(high)値は図1のシャーシ105がHAシャーシであることを特定し、ピン605のロー(Low)値は図1のシャーシ105がHAシャーシではないことを特定する。反面に、ピン610のハイ値は図1のシャーシ105がNVMeoFを使用していることを特定し、ピン610のロー値は図1のシャーシ105がNVMeを使用していることを特定する。本発明のその他の実施形態で、上述した以外にも多様なドライバ形態があり得る。本発明の実施形態は任意の望む数のドライバ形態も包括する。
図5で、VPDリーディングロジック505とピンリーディングロジック510とは、図1のBMC(125)が図1のシャーシ105の構成を判断する方法の選択肢を示す。従って、アクセスロジック415は1つを含むか、又は他の1つを含み、但し必ずしも両方を含まない。しかし、図1のシャーシ105の構成を相異なる(2つの)方法によりであると判断できるように図1のBMC(125)を支援するために、本発明の実施形態は、VPDリーディングロジック505とピンリーディングロジック510との双方を含む。
HAシャーシは本明細書で数回言及されている。図7はHA(High Availability)構成の場合の図1のシャーシ105を示す。プロセッサ110とBMC(125)とは他のプロセッサ705及び他のBMC(710)とペアリング(pairing)される。本発明の一部の実施形態で、プロセッサ705は図1のシャーシ105内にある。そして、本発明の他の実施形態で、プロセッサ705は他のシャーシ内にある。プロセッサ110はプロセッサ705との通信を維持し、BMC(125)はBMC(710)との通信を維持する。このような通信はハートビート(heart beat、‘心拍’)を含む。即ち、仮にBMC(125)とBMC(710)との中で何れか1つが応答しなければ、他のBMCはエラーがあることを認知する。例えば、他の可能な例の中でPCIe又はイーサネット(登録商標)を通じて、ペアリングパートナは通信する。
仮にペアリングパートナがフェイルすれば(例えば、複数のシャーシの中で1つがパワーを喪失する場合)、残りのプロセッサは引継経路(take−over path)を活性化し、残りのBMCが通信を設定し、シャーシのドメインを乗り越える(cross)ことを許容する。フェイルしたシャーシ内のBMCがスタンバイ(stand−by)パワーで動作するので、残っているプロセッサはフェイルしたシャーシのBMCと通信できる。フェイルしたプロセッサが再開(restart)されることを期待して、残っているプロセッサはフェイルしたプロセッサをリセット(reset)するようにトライする。フェイルしたプロセッサがリセットされなければ、残っているプロセッサはホストがフェイルしたシャーシを監督するように警報又はインタラプト(interrupt)をホストに伝送する。第3者であるソフトウェア又はエージェント(agent)は使用可能な作業ノード(図1に示される、プロセッサ110、BMC(125)、メモリ115、ストレージ装置120からなる一式)を選択し、使用可能な作業ノードのプロセッサを残っているプロセッサの新しいペアリングパートナにする。
ハートビート通信に対する必要と、残っているノードがフェイルしたノードの引継のための残っているノードに対する必要のため、HAシャーシに対して必要になるドライバは非HAシャーシで使用されるドライバと相異なる。従って、BMC(125)は、非HAシャーシ内ではHAシャーシ内でと相異なって動作する。
HAドライバがBMC(125)にロードされるまで、BMC(125)がBMC(125)のペアリングパートナを見ることができないこともある。従って、本発明の一部の実施形態で、BMC(125)が未だ自分のペアリングパートナと通信できない場合でも、HAドライバはロードされなければならない。そして、ペアリングパートナに対する確認はHAドライバがロードされた後に発生しなければならない。
図8は図4のビルトイン(built−in)セルフ構成(self−configuration)ロジック420の詳細を示す。上述したように、ビルトインセルフ構成ロジック420は図4のアクセスロジック415によって判断された情報を得、これに従って図1のBMC(125)を構成する。ビルトインセルフ構成ロジック420はドライバダウンローダ(driver downloader))とドライバローダ(driver loader)810とを含む。ドライバダウンローダ805はドライバソースから適切なドライバ(例えば、NVMeドライバ815、NVMeoFドライバ820、そしてHAドライバ825)をダウンロードする。ドライバソースが図1のBMC(125)のファームウェア内にある場合、ドライバが全くダウンロードされる必要が無く、むしろ単純にファームウェアから読出しできることに留意しなければならない。一旦、ダウンロードされるか、或いはただ配置されれば、ドライバローダ810はBMC(125)に選択されたドライバをロードする。
図9は図8のドライバに対する多様なソース(sources)を示す。図9で、シャーシ105はEEPROM(345)を含む。EEPROM(345)はドライバソースである。本発明のこのような実施形態で、適合するドライバはEEPROM(345)に格納され、必要に応じてEEPROM(345)から読出される。
シャーシ105は、またネットワーク905に連結されていると図示されている。ネットワーク905はシャーシ105とマシン910、915との間の通信を可能にする。マシン910はLAN(Local Area Network)上のマシンである。反面に、マシン915はインタネットのようなグローバルネットワーク上のマシンである。但し、選択されたドライバに対してどんなソースが存在するかに拘わらず、図8のドライバダウンローダ805はドライバソースから適合するドライバをダウンロードし(或いは、読出し)、図8のドライバローダ810がドライバを図1のBMC(125)内にロードする。
図10は図4の装置通信ロジック430を示す。図10で、装置通信ロジック430は読出しロジック1005とポーリングロジック(polling logic)1010とを含む。図1のBMC(125)は読出しロジック1005を利用して図3のVPD(355)から(例えば、図3のNASSD(320)、(325)、(330)の中で1つの構成を表わす情報を読出す。また、NASSD(320)、(325)、(330)が新しい情報が使用可能であることを通知するように図1のBMC(125)にメッセージを伝送すれば、BMC(125)は読出しロジック1005を利用してVPD(355)から新しい情報を読出すことができる。
反面に、図1のBMC(125)は、ポーリングロジック1010を使用して図3のNASSD(320)、(325)、(330)を周期的にポーリング(polling)することができる。図3のNASSD(320)、(325)、(330)がそれらの構成上の変化を図1のBMC(125)に通知しない本発明の実施形態では、図1のBMC(125)はポーリングロジック1010を使用してNASSD(320)、(325)、(330)に、それらの各々の現在情報と何らかの情報が変更されたかを問い合わせる。そうすると、NASSD(320)、(325)、(330)は応答して、それらの各々の構成が変化したか否か、そして変化した場合に構成がどのようにして変化したかを示す。
図11は図1のBMC(125)に対してディスカバリログページを要請する図1のホスト110を示す。図11で、ホスト110はクエリ1105をBMC(125)に伝送する。一般的に、クエリ1105はホスト110がBMC(125)の構成情報を受信する準備がなされた時に伝送される。この時点はBMC(125)がNASSD(320)、(325)、(330)に対する構成情報を収集し、集成(assemble)した一定時間後である。そうすると、BMC(125)はログページ(logpage)1115を含む応答1110として反応する。
このような方法で、BMC(125)はシャーシ105に設置された全ての装置に対する情報又は少なくともBMC(125)のドメイン内の全ての装置に対する情報をホスト110に提供できる。例えば、図1の単一シャーシ105は2つのマザーボード(例えば、2つの半幅(half−width)のマザーボードであるか、又は2つのスタックされた(stacked)全幅(full−width)のマザーボード)を含み、各々のマザーボードは固有のBMCとマザーボードに付着された装置とを含む。このような例で、BMCの各々は自分のドメイン内の装置に関する情報を収集する責任がある。但し、装置が全て同一のシャーシ内にあったとしても、BMCの各々は他のBMCのドメイン内の装置に対する情報を収集する責任はない。
マシン(machine)の始動過程を迅速に処理できる点で、本発明の実施形態は従来のシステムに比べて技術的な長所を有する。従来のシステムでは、ホストは各々の装置の構成情報を各々の装置に順に問い合わせなければならない。しかし、ホストが他の多数の始動(start−up)動作を完了した時点まで、ホストがこの問い合わせ動作を遂行できない。
反面に、BMCはより速く始動動作をできる。また、ホストが他の始動過程の遂行に忙しい間に、BMCはホストに対するプロキシとして動作して多様な装置に対してそれらの構成に関して問い合わせできる。そうすると、ホストが準備された時、ホストは構成情報に関してBMCに問い合わせでき、全ての付着された装置に関して遥かに速く分かる。その上に、データプレーンを利用して遂行される従来のディスカバリサービスと比較して、コントロールプレーン上でBMC(125)を通じてディスカバリサービスを遂行することは保安上、より安全であり、データプレーンの帯域幅も何ら消費しない。
本発明の実施形態が従来のシステムに比べて有する他の技術的長所は、シャーシ内に存在する全ての装置のディスカバリを遂行するために、ホストがBMCに対して1つのコマンドのみを発行(issue)すればよい点である。例えば、仮にシャーシが24個の装置を含む場合、ホストは“全ての装置へのディスカバリ(discovery all devices)”コマンドをBMCに対して発行すると、BMCは24個の装置をディスカバリする。このアプローチは、ホストが24個のディスカバリコマンドを24個の装置に発行するという従来のシステムにおける事態を回避できる。
図12乃至図15は本発明の実施形態に係る図1のBMC(125)がセルフ構成するための手続を例示的に示す順序図である。図12のS1203段階で図4のアクセスロジック415は図1のシャーシ105の構成(例えば、NVMe、NVMeoF、又はHAの何れか)を判断(determine)する。S1206段階で図1のBMC125は図1のシャーシ105がHAシャーシであるか否かを判断する(HAシャーシは、NVMe又はNVMeoFなどの多重の特徴(flavor)を含む場合がある)。図1のシャーシ105がHAシャーシではない場合、プロセシングは図14のS1236に続ける。
図12をさらに参照すると、図1のシャーシ105がHAシャーシである場合、S1209で、図4のビルトインセルフ構成ロジック420は図8のHAドライバ825を選択する。S1212で、図4のビルトインセルフ構成ロジック420は図8のHAドライバ825が使用可能であるか否かを判断する。使用可能でない場合、S1215で、図4のエラーレポーティングロジック425はエラーをレポートする。
図8のHAドライバ825が使用可能である場合、図13のS1218で、図8のドライバダウンローダ805は図8のHAドライバ825をダウンロードする。そして、S1221で、図8のドライバローダ810は図8のHAドライバ825をロードする。
S1224で、図1のBMC(125)は自分のペアリングパートナ(図7のBMC(710))との通信をトライする。S1227で、図1のBMC125はペアリングパートナが使用可能であるか否かを判断する。仮に図1のBMC125のペアリングパートナが使用可能である場合、S1230で、図1のBMC(125)は図1のシャーシ105に設置された装置がデュアル−パス(dual−path)装置であるか否かを判断する。図1のBMC125がBMC125のペアリングパートナが使用可能であると判断できず(S1227)、又は図1のシャーシ105内に設置された装置がデュアルパス装置ではない(S1230)場合、S1233で、図1のBMC(125)は図1のシャーシ105がHA装置として動作しないことをレポートする。
図1のシャーシ105がHA装置として動作する(S1227、S1230、S1233において)か、或いは、動作しない(S1206)か、に拘わらず、図14のS1236で、図1のBMC(125)は図1のシャーシ105の構成がNVMeoFシャーシであるか否かを判断する。NVMeoFシャーシであれば、S1239で、図1のBMC(125)は図8のNVMeoFドライバ820を選択し、S1242で、図8のドライバダウンローダ805は図8のNVMeoFドライバ820をダウンロードする。そして、S1245で、図8のドライバローダ810は図8のNVMeoFドライバ820をロードする。追加的に、S1248で、図1のBMC125は図1のシャーシ105内に設置された他の装置に対する情報を収集して図1のホスト110に対するプロキシとしての役割を果たす。
図1のシャーシ105がNVMeoFシャーシではない場合、図15のS1251で、図1のBMC125は図1のシャーシ105の構成がNVMeシャーシであるか否かを判断する。NVMeシャーシである場合、S1254で、図1のBMC125は図8のNVMeドライバ815を選択し、S1257で、図8のドライバダウンローダ805は図8のNVMeドライバ815をダウンロードする。そして、S1260で、図8のドライバローダ810は図8のNVMeドライバ815をロードする。以後、プロセシングは終了される。S1251で、図1のシャーシ105がNVMeシャーシではない場合、コントロールはエラーをレポートするためにS1215に戻る。
図12乃至図15は本発明の例示的な実施形態を示す。本発明の他の実施形態では、2つ以上のシャーシの構成があり得る。本発明のその他の実施形態では、他のいずれのドライバもロードされない場合、図1のBMC(125)はNVMeドライバをデフォルト使用する。図12乃至図15の他の変形された実施形態もやはり可能である。
図16は図4のアクセスロジック415が図1のシャーシの構成を判断するための手続を例示的に示す順序図である。図16のS1305で、図5のVPDリーディングロジック505は図3のVPD(355)から図1のシャーシ105の構成を読出す。又は、S1310で、図1のBMC(125)上の図6の1つ以上のピン605、610を通じて伝送される信号から、ピンリーディングロジック510は図1のシャーシ105の構成を読出す。
図17は本発明の実施形態に係る図1のBMC(125)が図1のシャーシ105内のNVM装置のディスカバリを遂行するための手続を例示的に示す順序図である。図17のS1405で、BMC(125)は図3のNASSD(320)、(325)、(330)の構成に関するデータを受信する。破線の矢印1410に図示されたように、S1405は全ての装置に対して必要とする時毎に反複される。
S1415で、図3のNASSD(320)、(325)、(330)から受信された情報から、図1のBMC(125)は記録(例えば、図11のログページ1115)をコンパイル(compile)する。S1420で、図1のホスト110は図3のNASSD(320)、(325)、(330)の構成に関する要請を伝送し、図1のBMC(125)はその要請を受信する。S1425で、図1のBMC(125)は装置構成の記録を図1のホスト110に伝送する。
図18は図4の装置通信ロジック430が図1のシャーシ105内の図3のNASSD(320)、(325)、(330)に対するディスカバリ情報を得るための手続を例示的に示す順序図である。図18のS1505で、図10の読出しロジック1005は装置に対する構成データを図3のVPD(355)から読出す。又は、S1510で、図10のポーリングロジック1010は装置の構成データに対して装置をポーリング(polling)し、S1515で、図1のBMC(125)は構成データを装置から受信する。
図19は図1のBMC125が装置構成の記録を作成するための手続を例示的に示す順序図である。図19のS1605で、図1のBMC(125)は多様な装置に対してVPD(355)から収集された情報を記録に単純にコンパイルする。又は、S1610で、図4のログページ生成ロジック435は収集された装置構成から図11のログページ1115を生成する。
図20は本発明の実施形態に係る図1のシャーシ105内のNVM装置がNVM装置の構成の変化に関して図1のBMC(125)に通知するための手続を例示的に示す順序図である。図20のS1705で、装置(例えば、図3のNASSD(320)、(325)、(330))は自分の構成が変化されたか否かを判断する。S1710で、装置は変化をVPD(355)に書込み、S1715で、装置は変化がVPD(355)に書込まれたことをプロキシ装置(例えば、図1のBMC(125))に通知する。又は、S1720で、装置は装置がプロキシ装置から装置の現在構成に対して問い合わせを受ける時まで待つ。その問い合わせを受ける時点に、S1725で、装置は自分の現在構成をプロキシ装置に伝送する。
図12乃至図20で、本発明の一部の実施形態が図示されている。しかし、ブロック(或いはstep)の順序を変更し、ブロックを省略するか、或いは図面に図示されないリンクを含むことによって、本発明の他の実施形態もやはり可能であることが当業者には分かるであろう。明示的に説明されたか否かに関わらず、順序図のこのような全ての変形は本発明の実施形態と看做される。
下の説明は本発明の技術的思想の一部側面が具現される適切な単数又は複数の機械(マシン)の簡単且つ一般的な説明を提供する。単数又は複数の機械の少なくとも一部は、他の機械から受信される指示、仮想現実(VR)環境との相互作用、生体フィードバック、又はその他の入力信号のみならず、キーボード、マウス等のような通常的な入力装置からの入力によって制御されることができる。
ここで使用されるように、“機械(machine)”の用語は、単一機械、仮想機械、若しくは、共に動作する機械、仮想機械、又は装置が互いに通信できるように結合されたシステムを広く含む。例示的な機械は、例えば自動車、汽車、タクシー等のような個人用又は公共輸送のような輸送装置のみならず、個人用コンピュータ、ワークステーション、サーバ、ポータブルコンピュータ、ハンドヘルド装置、電話、タブレット等のようなコンピューティング装置を含む。
該、単数又は複数の機械は、プログラム可能な又はプログラム不可能な論理装置又はアレイなどの埋め込み型コントローラ、ASIC(Application Specific Integrated Circuit)、埋め込み型コンピュータ、スマートカード、並びにその類似品を含む。該、単数又は複数の機械は、ネットワークインタフェイス、モデム、又は他の通信結合を介する等の方法により1つ以上の遠隔機械に対する1つ以上の連結を活用できる。複数の機械はイントラネット、インタネット、LAN(local area networks)、WAN(wide area networks)等の物理的及び/又は論理的ネットワークの手段で互いに連結できる。この分野に熟練した者ならば、ネットワーク通信が多様な有線及び/又は無線近距離又は遠距離キャリヤ及び無線周波数(RF)、衛星、マイクロ波、IEEE802.11、ブルートゥース(登録商標)、光学、赤外線、ケーブル、レーザー等を含むプロトコルを活用することを理解すべきである。
本発明の技術的思想の実施形態は、関数、手続、データ構造、応用プログラム、等を含む連関されたデータを参照して又は結合して記述される。該、連関されたデータは、機械によってアクセスされる時に、機械が遂行する作業か、若しくは、抽象的なデータタイプ又は低レベルハードウェアコンテキストを定義することに帰着する。
連関されたデータは、例えば、RAM、ROM等のような揮発性及び/又は不揮発性メモリ、若しくは他のストレージ装置、及びハードドライブ、フロッピーディスク、光学ストレージ、テープ、フラッシュメモリ、メモリスティック、デジタルビデオディスク、生体ストレージ等を含む連関されたストレージ媒体に格納される。連関されたデータは、物理的及び/又は論理的ネットワークを含む伝送環境を経てパケット、直列データ、並列データ、伝送信号等の形態をとって伝達され、圧縮された又は暗号化されたフォーマットを用いて利用される。連関されたデータは、分散環境で使用され、機械アクセスに対して地域的及び/又は遠隔に格納される。
本発明の技術的思想の実施形態は1つ以上のプロセッサによって実行可能であり、ここに説明されたように本発明の技術的思想の元素を遂行するようにする命令を含む実在する非臨時機械読出し媒体を含むことができる。
図示された実施形態を参照して説明された本発明の技術的思想の原則を有すれば、図示された実施形態がこのような原則から逸脱しなく、配列及び詳細で修正されることができ、必要である任意の方法に組合わされることができることが理解されるべきである。先の説明が具体的な実施形態に集中したが、他の構成もまた考慮される。具体的に、“本発明の技術的思想の実施形態に係る”のような説明又はここに使用された類似なことに拘らず、このような文句は一般的に実施形態の可能性を参照し、本発明の技術的思想を具体的な実施形態の構成で限定することを意図しない。ここに使用されるように、このような用語は他の実施形態で組合わせ可能な同一又は異なる実施形態を参照することができる。
先に説明された実施形態は本発明の技術的思想をそれに限定することと解釈されない。少ない実施形態のみが説明されたが、この分野に熟練された者は本記載の新規な説明及び長所から実質的に逸脱しなく、このような実施形態に多い修正が可能であることを十分に理解できる。従って、このような全ての修正は請求項で定義されるように本発明の技術的思想の範囲内に含まれることと意図される。
発明の概念の実施形態は制限事項無しで次のステートメントに拡張できる。
ステートメント1.
本発明の実施形態はBMC(Baseboard Management Controller)を含むことができる。BMCは、
シャーシの構成を判断するアクセスロジックと、
前記シャーシの前記構成に応答して、前記BMCを構成するビルトイン(built−in)セルフ構成(self−configuration)ロジックと、を含み、
前記BMCはBIOS(Basic Input Output System)、装置ドライバ、又はオペレーティングシステム(operating system)を使用しなく、セルフ構成(self−configure)されることができる。
ステートメント2.
本発明の実施形態はステートメント1に従うBMCを含み、
前記ビルトインセルフ構成ロジックは、前記BMCに対する前記構成に応答して、NVMe(Non−Volatile Memory express)ドライバ又はNVMeoF(NVM over Fabric)ドライバを使用するように前記BMCを構成するように動作する。
ステートメント3.
本発明の実施形態はステートメント2に従うBMCを含み、
前記NVMeoFドライバを使用することはBMCを含むシャーシ内の少なくとも1つの装置の構成をBMCが判断するようにする。
ステートメント4.
本発明の実施形態はステートメント2に従うBMCを含み、
前記アクセスロジックはVPD(Vital Product Data)から前記シャーシの前記構成を読出すVPDリーディングロジックを含む。
ステートメント5.
本発明の実施形態はステートメント4に従うBMCを含み、
前記VPDはEEPROM(Electrically Erasable Programmable Read Only Memory)に格納される。
ステートメント6.
本発明の実施形態はステートメント2に従うBMCを含み、
前記アクセスロジックは前記BMC上の少なくとも1つのピン上の信号から前記シャーシの前記構成を判断するピンリーディングロジックを含む。
ステートメント7.
本発明の実施形態はステートメント2に従うBMCを含み、
前記ビルトインセルフ構成ロジックは、前記シャーシの前記構成に応答して、前記NVMeドライバ又は前記NVMeoFドライバをロードするドライバローダを含む。
ステートメント8.
本発明の実施形態はステートメント7に従うBMCを含み、
前記ビルトインセルフ構成ロジックはドライバソースから前記NVMeドライバ又は前記NVMeoFドライバをダウンロード(download)するドライバダウンローダをさらに含む。
ステートメント9.
本発明の実施形態はステートメント8に従うBMCを含み、
前記ドライバソースはEEPROM、ローカル(local)コンピュータネットワーク上の第1サイト(site)、そしてグローバル(grobal)コンピュータネットワーク上の第2サイト内のストレージを含むセットから抽出される。
ステートメント10.
本発明の実施形態はステートメント2に従うBMCを含み、
前記アクセスロジックは前記シャーシの前記構成がHA(High Availability)シャーシを含むか否かを判断するように動作する。
ステートメント11.
本発明の実施形態はステートメント10に従うBMCを含み、
前記ビルトインセルフ構成ロジックはHAドライバをロードするように動作する。
ステートメント12.
本発明の実施形態はステートメント11に従うBMCを含み、
前記ビルトインセルフ構成ロジックは、前記BMCがペアリングパートナ(pairing partner)が使用可能であるか否かを決定(determine)する前に、前記HAドライバをロードするように動作する。
ステートメント13.
本発明の実施形態はステートメント11に従うBMCを含み、
前記BMCは前記HAドライバが使用可能しない場合にエラーをレポートするエラーレポーティングロジック(error reporting logic)をさらに含む。
ステートメント14.
本発明の実施形態はステートメント10に従うBMCを含み、
前記BMCは前記BMCがペアリングパートナと通信しない場合にエラーをレポートするエラーレポーティングロジックをさらに含む。
ステートメント15.本発明の実施形態は方法を含み、
前記方法は、BMCによって、前記BMCを含むシャーシの構成を判断する段階と、前記シャーシの前記構成に応答して、ドライバを選択する段階と、前記選択されたドライバをローディングする段階と、を含み、
前記BMCはBIOS、装置ドライバ、又はオペレーティングシステムを使用しなく、セルフ構成されることができる。
ステートメント16.本発明の実施形態はステートメント15に従う方法を含み、
前記シャーシの前記構成はNVMeペアリングとNVMeoFシャーシを含むセットから抽出され、前記シャーシの前記構成に応答してドライバを選択する段階は前記シャーシの前記構成に応答して前記BMCに対するNVMeドライバ及びNVMeoFドライバの中で1つを選択する段階を含む。
ステートメント17.
本発明の実施形態はステートメント16に従う方法を含み、
前記BMCによって、前記BMCを含むシャーシの構成を判断する段階は前記BMCによって前記シャーシの前記構成が前記NVMeoFシャーシを含むとことを判断する段階を含み、前記方法は前記BMCによって前記BMCを含む前記シャーシ内の少なくとも1つの装置の前記構成を判断する段階をさらに含む。
ステートメント18.
本発明の実施形態はステートメント16に従う方法を含み、
前記BMCによって、前記BMCを含むシャーシの構成を判断する段階はVPDから前記シャーシの前記構成を読出す段階を含む。
ステートメント19.
本発明の実施形態はステートメント18に従う方法を含み、
前記VPDはEEPROMに格納される。
ステートメント20.
本発明の実施形態はステートメント16に従う方法を含み、
前記BMCによって、前記BMCを含むシャーシの構成を判断する段階は前記シャーシの前記構成を判断するために前記BMC上の少なくとも1つのピンから信号にアクセスする段階を含む。
ステートメント21.
本発明の実施形態はステートメント16に従う方法を含み、
前記方法はドライバソースから前記選択されたドライバをダウンロードする段階をさらに含む。
ステートメント22.
本発明の実施形態はステートメント21に従う方法を含み、
前記ドライバソースはEEPROM、ローカルコンピュータネットワーク上の第1サイト、そしてグローバルコンピュータネットワーク上の第2サイト内のストレージを含むセットから抽出される。
ステートメント23.
本発明の実施形態はステートメント16に従う方法を含み、
前記BMCによって、前記BMCを含むシャーシの構成を判断する段階は前記シャーシの前記構成がHAシャーシを含むとことを判断する段階を含む。
ステートメント24.
本発明の実施形態はステートメント23に他の方法を含み、
前記シャーシの前記構成に従って前記BMCに対するドライバを選択する段階はHAドライバを選択する段階を含む。
ステートメント25.
本発明の実施形態はステートメント24に従う方法を含み、
前記方法は前記HAドライバが使用可能しない場合にエラーをレポーティングする段階をさらに含む。
ステートメント26.
本発明の実施形態はステートメント24に従う方法をさらに含み、
前記方法は前記BMCに対するペアリングパートナへの通信を試図する段階をさらに含む。
ステートメント27.
本発明の実施形態はステートメント26に従う方法を含み、
前記方法は前記BMCが前記ペアリングパートナと通信しない場合にエラーをレポーティングする段階をさらに含む。
ステートメント28.
本発明の実施形態はステートメント26に従う方法を含み、
前記BMCに対するペアリングパートナへの通信を試図する段階は前記HAドライバをローディングした後に前記BMCに対する前記ペアリングパートナへの通信を試図する段階を含む。
ステートメント29.
本発明の実施形態は非一時的(Non−Transitory)命令を格納する類型のストレージ媒体(tangible storage medium)を含む装置において、
前記非一時的命令はマシンによって実行される時、
BMCによって、前記BMCを含むシャーシの構成を決定(determine)する段階と、前記シャーシの前記構成に応答して、ドライバを選択する段階と、前記選択されたドライバをローディングする段階と、を遂行し、
前記BMCはBIOS、装置ドライバ、又はオペレーティングシステムを使用しなく、セルフ構成されることができる。
ステートメント30.
本発明の実施形態はステートメント29に従う装置を含み、
前記シャーシの前記構成はNVMeペアリングとNVMeoFシャーシを含むセットから抽出され、前記シャーシの前記構成に応答してドライバを選択する段階は前記シャーシの前記構成に応答して前記BMCに対するNVMeドライバ及びNVMeoFドライバの中で1つを選択する段階を含む。
ステートメント31.
本発明の実施形態はステートメント30に従う装置を含み、
前記BMCによって、前記BMCを含むシャーシの構成を判断する段階は前記BMCによって前記シャーシの前記構成が前記NVMeoFシャーシを含むとことを判断する段階を含み、前記非一時的命令はマシンによって実行される時:前記BMCによって前記BMCを含む前記シャーシ内の少なくとも1つの装置の前記構成を判断する段階をさらに遂行する。
ステートメント32.
本発明の実施形態はステートメント30に従う装置を含み、
前記BMCによって、前記BMCを含むシャーシの構成を判断する段階はVPDから前記シャーシの前記構成を読出す段階を含む。
ステートメント33.
本発明の実施形態はステートメント30に従う装置を含み、
前記VPDはEEPROMに格納される。
ステートメント34.
本発明の実施形態はステートメント30に従う装置を含み、
前記BMCによって、前記BMCを含むシャーシの構成を判断する段階は前記シャーシの前記構成を判断するために前記BMC上の少なくとも1つのピンから信号にアクセスする段階を含む。
ステートメント35.
本発明の実施形態はステートメント30に従う装置を含み、
前記非一時的命令はマシンによって実行される時、ドライバソースから前記選択されたドライバをダウンロードする段階をさらに遂行する。
ステートメント36.
本発明の実施形態はステートメント35に従う装置を含み、
前記ドライバソースはEEPROM、ローカルコンピュータネットワーク上の第1サイト、そしてグローバルコンピュータネットワーク上の第2サイト内のストレージを含むセットから抽出される。
ステートメント37.
本発明の実施形態はステートメント30に従う装置を含み、
前記BMCによって、前記BMCを含むシャーシの構成を判断する段階は前記BMCによって、前記シャーシがHAシャーシであることを判断する段階を含む。
ステートメント38.
本発明の実施形態はステートメント37に従う装置を含み、
前記シャーシの前記構成に従って前記BMCに対するドライバを選択する段階はHAドライバを選択する段階を含む。
ステートメント39.
本発明の実施形態はステートメント38に従う装置を含み、
前記非一時的命令はマシンによって実行される時、前記HAドライバが使用可能しない場合にエラーをレポーティングする段階をさらに遂行する。
ステートメント40.
本発明の実施形態はステートメント38に従う装置を含み、
前記非一時的命令はマシンによって実行される時、前記BMCに対するペアリングパートナへの通信を試図する段階をさらに遂行する。
ステートメント41.
本発明の実施形態はステートメント40に従う装置を含み、
前記非一時的命令はマシンによって実行される時、前記BMCが前記ペアリングパートナと通信しない場合にエラーをレポーティングする段階をさらに遂行する。
ステートメント42.
本発明の実施形態はステートメント40に従う装置を含み、
前記BMCに対するペアリングパートナへの通信を試図する段階は前記HAドライバをローディングした後に前記BMCに対する前記ペアリングパートナへの通信を試図する段階を含む。
ステートメント43.
本発明の実施形態はシャーシ内のプロキシ装置を含み、
コントロールプレーンを通じて少なくとも1つの装置と関連されたデータに対して前記少なくとも1つの装置と通信する装置通信ロジックと、
前記少なくとも1つの装置に対する情報を要請するクエリ(query)をホストから受信するレセプションロジックと、
前記少なくとも1つの装置に対するデータを含む応答を前記ホストに伝送する伝送ロジックと、を含む。
ステートメント44.
本発明の実施形態はステートメント43に従うプロキシ装置を含み、
前記プロキシ装置はBMC、RAID(Redundant Array of Independent Disks)コントローラ、そしてプロセッサを含むセットから抽出される。
ステートメント45.
本発明の実施形態はステートメント43に従うプロキシ装置を含み、
前記少なくとも1つの装置はストレージ装置とNIC(Network Interface Card)とを含むセットから抽出される。
ステートメント46.
本発明の実施形態はステートメント43に従うプロキシ装置を含み、
前記装置通信ロジックは、前記少なくとも1つの装置に対するVPDから、前記少なくとも1つの装置に対する前記データを読出す読出しロジックを含む。
ステートメント47.
本発明の実施形態はステートメント46に従うプロキシ装置を含み、
前記VPDはEEPROMに格納される。
ステートメント48.
本発明の実施形態はステートメント43に従うプロキシ装置を含み、
前記装置通信ロジックは前記少なくとも1つの装置と関連された前記データに対して前記少なくとも1つの装置をポーリング(polling)するポーリング(polling)ロジックを含み、前記レセプションロジックは前記少なくとも1つの装置から前記少なくとも1つの装置と関連された前記データを受信するように動作する。
ステートメント49.本発明の実施形態はステートメント43に従うプロキシ装置を含み、
前記シャーシは、前記少なくとも1つの装置と関連された前記データからログページ(Log Page)を生成することができる前記プロキシ装置と関連された永久(permanent)格納装置を含む。
ステートメント50.本発明の実施形態はステートメント49に従うプロキシ装置を含み、
前記プロキシ装置は、前記少なくとも1つの装置に対する前記データからログページを生成するログページ生成ロジックをさらに含む。
ステートメント51.本発明の実施形態はステートメント49に従うプロキシ装置を含み、
前記伝送ロジックは、前記クエリに応答して、前記ログページを前記ホストに伝送するように動作する。
ステートメント52.
本発明の実施形態に係る方法は、
プロキシ装置において、少なくとも1つの装置から前記少なくとも1つの装置の構成に関して少なくとも1つのデータを受信する段階、
前記データはコントロールプレーンを通じて前記少なくとも1つの装置から受信され、
前記少なくとも1つのデータを記録にコンパイル(compile)する段階と、
前記プロキシ装置で、前記少なくとも1つの装置の前記構成に対してクエリをホストから受信する段階と、
前記記録を前記プロキシ装置から前記ホストに伝送する段階と、を含み、
前記プロキシ装置は、前記少なくとも1つの装置から前記少なくとも1つのデータを受信することができ、前記ホストから前記クエリが受信される前に前記1つのデータを前記記録にコンパイルすることができる。
ステートメント53.
本発明の実施形態はステートメント52に従う方法を含み、
前記プロキシ装置はBMC、RAIDコントローラ、プロセッサ、又はソフトウェアプロキシ装置を含むセットから抽出される。
ステートメント54.
本発明の実施形態はステートメント52に従う方法を含み、
前記少なくとも1つの装置はストレージ装置及びNICを含むセットから抽出される。
ステートメント55.
本発明の実施形態はステートメント52に従う方法を含み、
前記少なくとも1つの装置から前記少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階は、前記プロキシ装置で前記少なくとも1つの装置から少なくとも1つの装置の構成に対して少なくとも1つのデータをコントロールプレーンに沿って受信する段階を含む。
ステートメント56.
本発明の実施形態はステートメント52に従う方法を含み、
前記少なくとも1つの装置から少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階は、前記少なくとも1つの装置の前記構成に対して前記少なくとも1つの装置をポーリングする段階を含む。
ステートメント57.
本発明の実施形態はステートメント52に従う方法を含み、
前記少なくとも1つの装置から少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階は、前記少なくとも1つの装置の中で1つの構成が変化する時、前記少なくとも1つの装置の中で1前記1つからデータを受信する段階を含む。
ステートメント58.
本発明の実施形態はステートメント52に従う方法を含み、
前記少なくとも1つの装置から少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階は、少なくとも1つのVPDから前記少なくとも1つのデータを読出す段階を含む。
ステートメント59.
本発明の実施形態はステートメント58に従う方法を含み、
前記少なくとも1つのVPDはEEPROM内に格納される。
ステートメント60.
本発明の実施形態はステートメント52に従う方法を含み、
前記少なくとも1つのデータを記録にコンパイルする段階は前記1つのデータからログページを生成する段階を含む。
ステートメント61.
本発明の実施形態はステートメント60に従う方法を含み、
前記プロキシ装置から前記ホストに前記少なくとも1つの装置の前記構成を伝送する段階は前記プロキシ装置から前記ホストに前記ログページを伝送する段階を含む。
ステートメント62.
本発明の実施形態はステートメント52に従う方法を含み、
前記プロキシ装置から前記ホストに前記少なくとも1つの装置の前記構成を伝送する段階は前記プロキシ装置から前記ホストに前記少なくとも1つのデータを伝送する段階を含む。
ステートメント63.
本発明の実施形態は方法を含み、前記方法は、
装置によって、前記装置の構成の変化を判断する段階と、
コントロールプレーンを通じて、前記装置の前記構成の前記変化に対してプロキシ装置に通知する段階と、を含む。
ステートメント64.
本発明の実施形態はステートメント63に従う方法を含み、
前記プロキシ装置はBMC、RAIDコントローラ、プロセッサ、又はソフトウェアプロキシ装置を含むセットから抽出される。
ステートメント65.
本発明の実施形態はステートメント63に従う方法を含み、
前記少なくとも1つの装置はストレージ装置とNICとを含むセットから抽出される。
ステートメント66.
本発明の実施形態はステートメント63に従う方法を含み、
前記装置の前記構成の前記変化に対してプロキシ装置に通知する段階は、前記プロキシ装置によって読出されるVPDに、前記装置の前記構成の前記変化を書込む段階を含む。
ステートメント67.
本発明の実施形態はステートメント66に従う方法を含み、
前記装置の前記構成の前記変化に対してプロキシ装置に通知する段階は、前記装置の前記構成の前記変化が前記VPDに書込まれたことを前記プロキシ装置に通知する段階をさらに含む。
ステートメント68.
本発明の実施形態はステートメント63に従う方法を含み、前記装置の前記構成の前記変化に対してプロキシ装置に通知する段階は、
前記装置の前記構成の現在状態に対して前記プロキシ装置からクエリを受信する段階と、
前記プロキシ装置に、前記装置の前記構成の前記変化を含む応答を伝送する段階と、を含む。
ステートメント69.本発明の実施形態は非一時的命令を格納する類型のストレージ媒体を含む装置において、
前記非一時的命令はマシンによって実行される時、
プロキシ装置において、前記少なくとも1つの装置から少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階、前記データはコントロールプレーンを通じて前記少なくとも1つの装置から受信され、
前記少なくとも1つのデータを記録にコンパイルする段階と、
前記プロキシ装置で、前記少なくとも1つの装置の前記構成に対してクエリをホストから受信する段階と、
前記記録を前記プロキシ装置から前記ホストに伝送する段階と、を遂行し、
前記プロキシ装置は、前記少なくとも1つの装置から前記少なくとも1つのデータを受信することができ、前記ホストから前記クエリが受信される前に前記1つのデータを前記記録にコンパイルすることができる。
ステートメント70.
本発明の実施形態はステートメント69に従う装置を含み、
前記プロキシ装置はBMC、RAIDコントローラ、プロセッサ、又はソフトウェアプロキシ装置を含むセットから抽出される。
ステートメント71.
本発明の実施形態はステートメント69に従う装置を含み、
前記少なくとも1つの装置はストレージ装置及びNICを含むセットから抽出される。
ステートメント72.
本発明の実施形態はステートメント69に従う装置を含み、
前記プロキシ装置で前記少なくとも1つの装置から少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階は、前記プロキシ装置で前記少なくとも1つの装置から少なくとも1つの装置の構成に対して少なくとも1つのデータをコントロールプレーンに沿って受信する段階を含む。
ステートメント73.
本発明の実施形態はステートメント69に従う装置を含み、
前記プロキシ装置で前記少なくとも1つの装置から少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階は、前記少なくとも1つの装置の前記構成に対して前記少なくとも1つの装置をポーリングする段階を含む。
ステートメント74.
本発明の実施形態はステートメント69に従う装置を含み、
前記プロキシ装置で前記少なくとも1つの装置から少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階は、前記少なくとも1つの装置の中で1つの構成が変化する時、前記少なくとも1つの装置の中で1前記1つからデータを受信する段階を含む。
ステートメント75.
本発明の実施形態はステートメント69に従う装置を含み、
前記プロキシ装置で前記少なくとも1つの装置から少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階は、少なくとも1つのVPDから前記少なくとも1つのデータを読出す段階を含む。
ステートメント76.
本発明の実施形態はステートメント75に従う装置を含み、
前記少なくとも1つのVPDはEEPROM内に格納される。
ステートメント77.
本発明の実施形態はステートメント69に従う装置を含み、
前記少なくとも1つのデータを記録にコンパイルする段階は前記1つのデータからログページを生成する段階を含む。
ステートメント78.
本発明の実施形態はステートメント77に従う装置を含み、
前記プロキシ装置から前記ホストに前記少なくとも1つの装置の前記構成を伝送する段階は前記プロキシ装置から前記ホストに前記ログページを伝送する段階を含む。
ステートメント79.
本発明の実施形態はステートメント69に従う装置を含み、
前記プロキシ装置から前記ホストに前記少なくとも1つの装置の前記構成を伝送する段階は前記プロキシ装置から前記ホストに前記少なくとも1つのデータを伝送する段階を含む。
ステートメント80.
本発明の実施形態は非一時的命令を格納する類型のストレージ媒体を含む装置において、
前記非一時的命令はマシンによって実行される時、
装置で、前記装置の構成の変化を判断する段階と、
コントロールプレーンを通じて、前記装置の前記構成の前記変化に対してプロキシ装置に通知する段階と、を遂行する。
ステートメント81.
本発明の実施形態はステートメント80に従う装置を含み、
前記プロキシ装置はBMC、RAIDコントローラ、プロセッサ、又はソフトウェアプロキシ装置を含むセットから抽出される。
ステートメント82.本発明の実施形態はステートメント80に従う装置を含み、
前記少なくとも1つの装置はストレージ装置及びNICを含むセットから抽出される。
ステートメント83.
本発明の実施形態はステートメント80に従う装置を含み、
前記装置の前記構成の前記変化に対してプロキシ装置に通知する段階は、前記プロキシ装置によって読出されるVPDに、前記装置の前記構成の前記変化を書込む段階を含む。
ステートメント84.
本発明の実施形態はステートメント83に従う装置を含み、
前記装置の前記構成の前記変化に対してプロキシ装置に通知する段階は、前記装置の前記構成の前記変化が前記VPDに書込まれたことを前記プロキシ装置に通知する段階をさらに含む。
ステートメント85.
本発明の実施形態はステートメント80に従う装置を含み、
前記装置の前記構成の前記変化に対してプロキシ装置に通知する段階は、
前記装置の前記構成の現在状態に対して前記プロキシ装置からクエリを受信する段階と、
前記プロキシ装置に、前記装置の前記構成の前記変化を含む応答を伝送する段階と、を含む。
結果的に、本明細書で記述された実施形態に対する多様な広範囲である変更の観点で、このような詳細な説明と添付された資料は単なる例示的なことと意図され、本発明の概念の範囲を制限することと看做されてはならない。従って、本発明の概念として請求されることは、次の請求の範囲及びその均等物の範囲及び思想内にあり得る全ての変形である。
105 シャーシ
110、705 プロセッサ、ホスト、ホストCPU、ホストプロセッサ
115 メモリ
120 ストレージ装置
125、710 BMC(Baseboard Management Controller、ベース基板管理コントローラ)、プロキシ
205 メモリコントローラ
210 クロック
215 ネットワークコネクタ
220 バス
225 使用者インタフェイス
230 入/出力エンジン
305 CPLD
310 マザーボード
315 ミッドプレーン
320、325、330 NASSD(Network−Attached SSD)
335 I2Cバス
340 SMBus
345 EEPROM
350 不揮発性メモリ
355 VPD(Vital Product Data)
415 アクセスロジック
420 ビルトインセルフ構成ロジック
425 エラーレポーティングロジック
430 装置通信ロジック
435 ログページ生成ロジック
440 レセプションロジック
445 伝送ロジック
505 VPDリーディングロジック
510 ピンリーディングロジック
605、610 ピン
805 ドライバダウンローダ
810 ドライバローダ
815 NVMeドライバ
820 NVMeoFドライバ
825 HAドライバ
905 ネットワーク
910、915 マシン
1005 読出しロジック
1010 ポーリングロジック
1105 クエリ
1110 応答
1115 ログページ

Claims (20)

  1. シャーシ内のプロキシ装置において、
    コントロールプレーンを通じて少なくとも1つの装置と関連されたデータに関して前記少なくとも1つの装置と通信する装置通信ロジックと、
    前記少なくとも1つの装置に関する情報を要請するクエリ(query)をホストから受信するレセプション(reception)ロジックと、
    前記少なくとも1つの装置に関するデータを含む応答を前記ホストに伝送する伝送ロジックと、を含む、ことを特徴とするプロキシ装置。
  2. 前記プロキシ装置は、BMC(Baseboard Management Controller)、RAID(Redundant Array of Independent Disks)コントローラ、そしてプロセッサを含むセットから抽出される、ことを特徴とする請求項1に記載のプロキシ装置。
  3. 前記装置通信ロジックは、前記少なくとも1つの装置に対するVPD(Vital Product Data)から前記少なくとも1つの装置に対する前記データを読出す読出しロジックを含む、ことを特徴とする請求項1に記載のプロキシ装置。
  4. 前記VPDは、EEPROM(Electrically Erasable Programmable Read Only Memory)に格納される、ことを特徴とする請求項3に記載のプロキシ装置。
  5. 前記装置通信ロジックは、前記少なくとも1つの装置と関連された前記データに対して前記少なくとも1つの装置をポーリング(polling)するポーリング(polling)ロジックを含み、前記レセプションロジックは、前記少なくとも1つの装置から前記少なくとも1つの装置と関連された前記データを受信するように動作する、ことを特徴とする請求項1に記載のプロキシ装置。
  6. 前記シャーシは、前記少なくとも1つの装置と関連された前記データからログページ(Log Page)を生成する前記プロキシ装置と関連された永久(permanent、不揮発性)格納装置を含む、ことを特徴とする請求項1に記載のプロキシ装置。
  7. 前記伝送ロジックは、前記クエリに応答して、前記ログページを前記ホストに伝送するように動作する、ことを特徴とする請求項6に記載のプロキシ装置。
  8. プロキシ装置で、少なくとも1つの装置から前記少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階と、
    前記データは、コントロールプレーンを通じて前記少なくとも1つの装置から受信され、
    前記少なくとも1つのデータを記録(record)にコンパイル(compile)する段階と、
    前記プロキシ装置で、前記少なくとも1つの装置の前記構成に対してクエリをホストから受信する段階と、
    前記記録を前記プロキシ装置から前記ホストに伝送する段階と、を含み、
    前記プロキシ装置は、前記少なくとも1つの装置から前記少なくとも1つのデータを受信し、前記ホストから前記クエリを受信する前に前記少なくとも1つのデータを前記記録にコンパイルする、ことを特徴とするプロキシ装置の動作方法。
  9. 前記プロキシ装置は、BMC、RAIDコントローラ、プロセッサ、又はソフトウェアプロキシ装置を含むセットから抽出される、ことを特徴とする請求項8に記載のプロキシ装置の動作方法。
  10. 前記プロキシ装置で少なくとも1つの装置から前記少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階は、前記少なくとも1つの装置の前記構成に対して前記少なくとも1つの装置をポーリングする段階を含む、ことを特徴とする請求項8に記載のプロキシ装置の動作方法。
  11. 前記プロキシ装置で少なくとも1つの装置から前記少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階は、前記少なくとも1つの装置の中で1つの構成が変化する時、前記少なくとも1つの装置の中で前記1つからデータを受信する段階を含む、ことを特徴とする請求項8に記載のプロキシ装置の動作方法。
  12. 前記プロキシ装置で前記少なくとも1つの装置から少なくとも1つの装置の構成に対して少なくとも1つのデータを受信する段階は、少なくとも1つのVPDから前記少なくとも1つのデータを読出す段階を含む、ことを特徴とする請求項8に記載のプロキシ装置の動作方法。
  13. 前記少なくとも1つのVPDは、EEPROM内に格納される、ことを特徴とする請求項12に記載のプロキシ装置の動作方法。
  14. 前記少なくとも1つのデータを記録にコンパイルする段階は、前記1つのデータからログページを生成する段階を含む、ことを特徴とする請求項8に記載のプロキシ装置の動作方法。
  15. 前記プロキシ装置から前記ホストに前記少なくとも1つの装置の前記構成を伝送する段階は、前記プロキシ装置から前記ホストに前記ログページを伝送する段階を含む、ことを特徴とする請求項14に記載のプロキシ装置の動作方法。
  16. 前記プロキシ装置から前記ホストに前記少なくとも1つの装置の前記構成を伝送する段階は、前記プロキシ装置から前記ホストに前記少なくとも1つのデータを伝送する段階を含む、ことを特徴とする請求項8に記載のプロキシ装置の動作方法。
  17. プロキシ装置に係る装置の動作方法において、
    前記装置によって、前記装置の構成の変化を判断(determine)する段階と、
    コントロールプレーンを通じて、前記装置の前記構成の前記変化に対してプロキシ装置に通知する段階と、を含むことを特徴とする動作方法。
  18. 前記装置の中で少なくとも1つは、ストレージ装置とNICとを含むセットから抽出される、ことを特徴とする請求項17に記載の動作方法。
  19. 前記装置の前記構成の前記変化に対してプロキシ装置に通知する段階は、前記プロキシ装置によって読出されるVPDに、前記装置の前記構成の前記変化を書込む段階を含む、ことを特徴とする請求項17に記載の動作方法。
  20. 前記装置の前記構成の前記変化に対してプロキシ装置に通知する段階は、前記装置の前記構成の前記変化が前記VPDに書込まれたことを前記プロキシ装置に通知する段階をさらに含む、ことを特徴とする請求項19に記載の動作方法。
JP2017171915A 2016-09-14 2017-09-07 プロキシ装置、その動作方法、及びプロキシ装置に係る装置の動作方法 Active JP6889071B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021085557A JP7084528B2 (ja) 2016-09-14 2021-05-20 管理装置及びその動作方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201662394726P 2016-09-14 2016-09-14
US62/394,726 2016-09-14
US15/345,507 US10346041B2 (en) 2016-09-14 2016-11-07 Method for using BMC as proxy NVMeoF discovery controller to provide NVM subsystems to host
US15/345,507 2016-11-07

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021085557A Division JP7084528B2 (ja) 2016-09-14 2021-05-20 管理装置及びその動作方法

Publications (3)

Publication Number Publication Date
JP2018045688A true JP2018045688A (ja) 2018-03-22
JP2018045688A5 JP2018045688A5 (ja) 2020-10-08
JP6889071B2 JP6889071B2 (ja) 2021-06-18

Family

ID=61560391

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2017171915A Active JP6889071B2 (ja) 2016-09-14 2017-09-07 プロキシ装置、その動作方法、及びプロキシ装置に係る装置の動作方法
JP2021085557A Active JP7084528B2 (ja) 2016-09-14 2021-05-20 管理装置及びその動作方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2021085557A Active JP7084528B2 (ja) 2016-09-14 2021-05-20 管理装置及びその動作方法

Country Status (5)

Country Link
US (6) US10346041B2 (ja)
JP (2) JP6889071B2 (ja)
KR (1) KR102297321B1 (ja)
CN (2) CN118069463A (ja)
TW (1) TWI710908B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019212279A (ja) * 2018-05-31 2019-12-12 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド スマートネットワークインターフェイスカード操作用の方法及び装置
JP2021510215A (ja) * 2018-07-17 2021-04-15 華為技術有限公司Huawei Technologies Co.,Ltd. I/o要求処理方法およびデバイス
US11860672B2 (en) 2018-03-02 2024-01-02 Samsung Electronics Co., Ltd. Method for supporting erasure code data protection with embedded PCIE switch inside FPGA+SSD
JP7497146B2 (ja) 2018-09-18 2024-06-10 三星電子株式会社 多数の装置環境でペアリングするfpgaとssdを識別するためのストレージ装置及びコプロセッサを含むシステム及び方法

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180032471A1 (en) * 2016-07-26 2018-02-01 Samsung Electronics Co., Ltd. Self-configuring ssd multi-protocol support in host-less environment
US11983138B2 (en) * 2015-07-26 2024-05-14 Samsung Electronics Co., Ltd. Self-configuring SSD multi-protocol support in host-less environment
US10346041B2 (en) 2016-09-14 2019-07-09 Samsung Electronics Co., Ltd. Method for using BMC as proxy NVMeoF discovery controller to provide NVM subsystems to host
US11461258B2 (en) 2016-09-14 2022-10-04 Samsung Electronics Co., Ltd. Self-configuring baseboard management controller (BMC)
US11144496B2 (en) 2016-07-26 2021-10-12 Samsung Electronics Co., Ltd. Self-configuring SSD multi-protocol support in host-less environment
US10210123B2 (en) 2016-07-26 2019-02-19 Samsung Electronics Co., Ltd. System and method for supporting multi-path and/or multi-mode NMVe over fabrics devices
US10372659B2 (en) 2016-07-26 2019-08-06 Samsung Electronics Co., Ltd. Multi-mode NMVE over fabrics devices
US20190109720A1 (en) 2016-07-26 2019-04-11 Samsung Electronics Co., Ltd. Modular system (switch boards and mid-plane) for supporting 50g or 100g ethernet speeds of fpga+ssd
US10444722B2 (en) * 2017-09-29 2019-10-15 Intel Corporation Techniques to direct access requests to storage devices
US10768943B2 (en) * 2017-12-19 2020-09-08 Hewlett Packard Enterprise Development Lp Adapter configuration over out of band management network
US10521378B2 (en) * 2018-03-09 2019-12-31 Samsung Electronics Co., Ltd. Adaptive interface storage device with multiple storage protocols including NVME and NVME over fabrics storage devices
KR102646616B1 (ko) * 2018-06-15 2024-03-11 삼성전자주식회사 판독 명령 실행을 위한 NVMeoF RAID 구현 방법
US11238005B2 (en) * 2018-07-20 2022-02-01 Samsung Electronics Co., Ltd. SFF-TA-100X based multi-mode protocols solid state devices
CN110045923A (zh) * 2019-02-25 2019-07-23 联想企业解决方案(新加坡)有限公司 服务器和在服务器中识别不受支持的存储设备的方法
US11487690B2 (en) * 2019-06-28 2022-11-01 Hewlett Packard Enterprise Development Lp Universal host and non-volatile memory express storage domain discovery for non-volatile memory express over fabrics
US11243859B2 (en) * 2019-10-09 2022-02-08 Microsoft Technology Licensing, Llc Baseboard management controller that initiates a diagnostic operation to collect host information
CN111176967A (zh) * 2019-12-28 2020-05-19 北京浪潮数据技术有限公司 一种远程带外ssd日志信息的查询方法、装置及bmc
US11061838B1 (en) * 2020-01-09 2021-07-13 Dell Products L.P. System and method for graphics processing unit management infrastructure for real time data collection
US11194678B2 (en) * 2020-03-02 2021-12-07 Silicon Motion, Inc. Method and apparatus for performing node information exchange management of all flash array server
US11237997B2 (en) 2020-03-16 2022-02-01 Dell Products L.P. Target driven zoning for ethernet in non-volatile memory express over-fabrics (NVMe-oF) environments
US11163716B2 (en) * 2020-03-16 2021-11-02 Dell Products L.P. Discovery controller registration of non-volatile memory express (NVMe) elements in an NVMe-over-fabrics (NVMe-oF) system
US11489921B2 (en) 2020-03-16 2022-11-01 Dell Products L.P. Kickstart discovery controller connection command
US11301398B2 (en) 2020-03-16 2022-04-12 Dell Products L.P. Symbolic names for non-volatile memory express (NVMe™) elements in an NVMe™-over-fabrics (NVMe-oF™) system
US11489723B2 (en) 2020-03-16 2022-11-01 Dell Products L.P. Multicast domain name system (mDNS)-based pull registration
US11240308B2 (en) 2020-03-16 2022-02-01 Dell Products L.P. Implicit discovery controller registration of non-volatile memory express (NVMe) elements in an NVME-over-fabrics (NVMe-oF) system
US11503140B2 (en) 2020-12-11 2022-11-15 Western Digital Technologies, Inc. Packet processing by programmable network interface
US11520518B2 (en) 2021-03-06 2022-12-06 Dell Products L.P. Non-volatile memory express over fabric (NVMe-oF) zone subsets for packet-by-packet enforcement
US11463521B2 (en) 2021-03-06 2022-10-04 Dell Products L.P. Dynamic connectivity management through zone groups
KR20220154968A (ko) 2021-05-14 2022-11-22 최수빈 실리카겔 제습제를 포함한 옷걸이
US11907530B2 (en) 2022-03-25 2024-02-20 Dell Products L.P. Scalable quality of service (QoS) for a nonvolatile memory express™ environment
US20240020056A1 (en) * 2022-07-12 2024-01-18 Dell Products L.P. Systems and methods for send log page commands for pull model devices

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04257050A (ja) * 1991-02-12 1992-09-11 Fujitsu Ltd Scsi装置の自動認識・接続方式
US20120102580A1 (en) * 2010-10-22 2012-04-26 International Business Machines Corporation Out Of Band Vital Product Data Collection
US20140032641A1 (en) * 2012-07-27 2014-01-30 Vmware, Inc. Virtual intelligent platform management interface for hardware components
JP2014241545A (ja) * 2013-06-12 2014-12-25 株式会社日立製作所 通信システム及び通信システムの冗長化の方法
WO2015049742A1 (ja) * 2013-10-02 2015-04-09 株式会社日立製作所 ストレージシステムおよびストレージシステム制御方法
WO2015191649A1 (en) * 2014-06-11 2015-12-17 Microsoft Technology Licensing, Llc Providing multiple synchronous serial console sessions using data buffering

Family Cites Families (250)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6345303B1 (en) * 1997-03-25 2002-02-05 Intel Corporation Network proxy capable of dynamically selecting a destination device for servicing a client request
JP3033550B2 (ja) 1998-01-13 2000-04-17 三菱電機株式会社 Scsiインタフェース接続装置、scsiコントローラ、scsiケーブル及びscsiバックプレーン
US6295567B1 (en) 1998-01-26 2001-09-25 Dell Usa, L.P. Chassis type determination in an electronic system
US7107253B1 (en) 1999-04-05 2006-09-12 American Board Of Family Practice, Inc. Computer architecture and process of patient generation, evolution and simulation for computer based testing system using bayesian networks as a scripting language
US6463499B1 (en) 1999-10-14 2002-10-08 Hewlett-Packard Company Data bus cable having SCSI and IIC bus functionality and process for using the same
US6427198B1 (en) 2000-02-15 2002-07-30 International Business Machines Corporation Method, system, and program for determining system configuration
US8620520B2 (en) 2000-05-09 2013-12-31 Robert Bosch Gmbh Method for controlling devices, and a device in a communications network in a motor vehicle
US7143153B1 (en) 2000-11-09 2006-11-28 Ciena Corporation Internal network device dynamic health monitoring
US6611863B1 (en) * 2000-06-05 2003-08-26 Intel Corporation Automatic device assignment through programmable device discovery for policy based network management
WO2002025460A1 (en) 2000-09-19 2002-03-28 Phatnoise, Inc. Device-to-device network
WO2002067483A2 (en) * 2000-10-27 2002-08-29 Softconnex Technologies Automatic embedded host configuration system and method
US20020123365A1 (en) 2000-12-31 2002-09-05 Thorson Walter R. Scalable base station architecture
US20020095491A1 (en) * 2001-01-18 2002-07-18 Edmonds Doug E. System and related methods for remote production line monitoring using the Web
US7272121B2 (en) 2001-06-19 2007-09-18 Telcordia Technologies, Inc. Methods and apparatus for a modular wireless system
JP4257050B2 (ja) 2001-07-17 2009-04-22 東洋エクステリア株式会社 車椅子利用者用花壇
US7512585B2 (en) 2002-07-11 2009-03-31 Oracle International Corporation Support for multiple mechanisms for accessing data stores
WO2004010286A2 (en) 2002-07-23 2004-01-29 Gatechange Technologies, Inc. Self-configuring processing element
US6662119B1 (en) 2002-08-02 2003-12-09 3Com Corporation Method and apparatus for monitoring connector degradation
US7873700B2 (en) 2002-08-09 2011-01-18 Netapp, Inc. Multi-protocol storage appliance that provides integrated support for file and block access protocols
US7249173B2 (en) 2002-10-25 2007-07-24 Emulex Design & Manufacturing Corporation Abstracted node discovery
US20040153844A1 (en) 2002-10-28 2004-08-05 Gautam Ghose Failure analysis method and system for storage area networks
US20040147281A1 (en) 2002-11-12 2004-07-29 Integration Associates Inc. Transmitter and receiver circuits with controller-less operation capability
US20070077553A1 (en) 2003-10-30 2007-04-05 Rosetta Genomics Bioinformatically detectable group of novel vaccinia regulatory genes and uses thereof
KR100537503B1 (ko) 2002-12-31 2005-12-19 삼성전자주식회사 공간형정보입력장치 구성 방법, 재구성 방법, 착용인식방법 및그 장치
US20040153851A1 (en) 2003-01-13 2004-08-05 Venugopal Raghavan V. System and method for detecting an operationally impermissible configuration
US7876772B2 (en) 2003-08-01 2011-01-25 Foundry Networks, Llc System, method and apparatus for providing multiple access modes in a data communications network
US7120759B2 (en) * 2003-08-29 2006-10-10 International Business Machines Corporation Storage system and method for prestaging data in a cache for improved performance
US7870268B2 (en) 2003-09-15 2011-01-11 Intel Corporation Method, system, and program for managing data transmission through a network
US7073010B2 (en) * 2003-12-02 2006-07-04 Super Talent Electronics, Inc. USB smart switch with packet re-ordering for interleaving among multiple flash-memory endpoints aggregated as a single virtual USB endpoint
CN1327341C (zh) 2004-01-13 2007-07-18 英业达股份有限公司 基板管理控制器的固件自动配置系统及方法
US8713295B2 (en) 2004-07-12 2014-04-29 Oracle International Corporation Fabric-backplane enterprise servers with pluggable I/O sub-system
US7536486B2 (en) 2004-07-30 2009-05-19 Microsoft Corporation Automatic protocol determination for portable devices supporting multiple protocols
US7694312B2 (en) 2004-09-10 2010-04-06 Pleora Technologies Inc. Methods and apparatus for enabling bus connectivity over a data network
US7564869B2 (en) 2004-10-22 2009-07-21 Cisco Technology, Inc. Fibre channel over ethernet
US7188206B2 (en) * 2004-10-22 2007-03-06 Conwise Technology Corporation Ltd. USB compound device without embedded hub and implement method in USB system
US7506078B2 (en) * 2004-10-29 2009-03-17 Intel Corporation Integrated circuit capable of assigning a unique identity to ATA/ATAPI devices
US8396981B1 (en) 2005-06-07 2013-03-12 Oracle America, Inc. Gateway for connecting storage clients and storage servers
US10180809B2 (en) 2006-05-17 2019-01-15 Richard Fetik Secure application acceleration system, methods and apparatus
TW200801897A (en) 2006-06-29 2008-01-01 Ibm Single system board with automatic feature selection based on installed configuration selection unit
US8230235B2 (en) 2006-09-07 2012-07-24 International Business Machines Corporation Selective encryption of data stored on removable media in an automated data storage library
US7707323B2 (en) * 2006-09-11 2010-04-27 Research In Motion Limited Method and apparatus for enabling enhanced USB interaction
US8065347B1 (en) 2006-12-21 2011-11-22 Clinphone Plc Managing protocol amendments in electronically recorded clinical trials
US7620854B2 (en) 2007-01-30 2009-11-17 Hewlett-Packard Development Company, L.P. Method and system for handling input/output (I/O) errors
CN101611614A (zh) * 2007-02-12 2009-12-23 皇家飞利浦电子股份有限公司 网络化控制系统和用于网络化控制系统的设备
US7882393B2 (en) 2007-03-28 2011-02-01 International Business Machines Corporation In-band problem log data collection between a host system and a storage system
US7577776B2 (en) * 2007-05-14 2009-08-18 Aten International Co., Ltd Multiple virtual USB devices with virtual HUB implemented using one USB device controller
US8180862B2 (en) 2007-08-30 2012-05-15 International Business Machines Corporation Arrangements for auto-merging processing components
US8023434B2 (en) 2007-09-18 2011-09-20 International Business Machines Corporation Arrangements for auto-merging and auto-partitioning processing components
US8161393B2 (en) 2007-09-18 2012-04-17 International Business Machines Corporation Arrangements for managing processing components using a graphical user interface
US8667224B1 (en) * 2007-12-20 2014-03-04 Emc Corporation Techniques for data prefetching
US8812970B2 (en) * 2008-02-27 2014-08-19 Microsoft Corporation Dynamic device state representation in a user interface
US8930537B2 (en) 2008-02-28 2015-01-06 International Business Machines Corporation Zoning of devices in a storage area network with LUN masking/mapping
US7788428B2 (en) 2008-03-27 2010-08-31 Sony Ericsson Mobile Communications Ab Multiplex mobile high-definition link (MHL) and USB 3.0
US8700821B2 (en) 2008-08-22 2014-04-15 Intel Corporation Unified multi-transport medium connector architecture
US7908368B2 (en) * 2008-09-23 2011-03-15 International Business Machines Corporation Method and apparatus for redirecting data traffic based on external switch port status
US8099251B2 (en) 2008-10-17 2012-01-17 Dell Products L.P. Systems and methods for certifying a racked computer assembly
US7944812B2 (en) 2008-10-20 2011-05-17 International Business Machines Corporation Redundant intermediary switch solution for detecting and managing fibre channel over ethernet FCoE switch failures
JP5035230B2 (ja) 2008-12-22 2012-09-26 富士通株式会社 ディスク搭載機構及びストレージ装置
EP2428000B1 (en) * 2009-05-07 2012-08-29 Koninklijke Philips Electronics N.V. Method for controlling transmissions from a resource-restricted device, and batteryless device
JP5509730B2 (ja) 2009-08-26 2014-06-04 日本電気株式会社 フォールトトレラントコンピュータ及び電源制御方法
US8286009B2 (en) 2009-08-31 2012-10-09 GE Intelligent Platforms Embedded Systems, Inc. Computer including a carrier board and methods of assembly
US8599863B2 (en) 2009-10-30 2013-12-03 Calxeda, Inc. System and method for using a multi-protocol fabric module across a distributed server interconnect fabric
US8291171B2 (en) * 2009-11-30 2012-10-16 Hewlett-Packard Development Company, L.P. Altering prefetch depth based on ready data
CN102104953A (zh) 2009-12-17 2011-06-22 深圳富泰宏精密工业有限公司 双卡手机及其智能卡注册方法
US9465756B2 (en) 2009-12-23 2016-10-11 Violin Memory Inc. Configurable interconnection system
CN101847429B (zh) 2010-04-13 2012-05-23 苏州达通泰科信息技术有限公司 具有网络直放功能的多闪存并行存储装置
US9251058B2 (en) 2010-09-28 2016-02-02 SanDisk Technologies, Inc. Servicing non-block storage requests
US8634415B2 (en) 2011-02-16 2014-01-21 Oracle International Corporation Method and system for routing network traffic for a blade server
US20120311654A1 (en) * 2011-05-31 2012-12-06 Broadcom Corporation Bridged control of multiple media devices via a selected user interface in a wireless media network
US8754681B2 (en) 2011-06-17 2014-06-17 Netlogic Microsystems, Inc. Multi-part clock management
US8620865B2 (en) 2011-06-24 2013-12-31 Netapp, Inc. System and method for providing a unified storage system that supports file/object duality
US9280357B2 (en) 2011-07-12 2016-03-08 Hewlett-Packard Development Company, L.P. Configuration based on chassis identifications
WO2013022915A1 (en) 2011-08-09 2013-02-14 Lsi Corporation I/o device and computing host interoperation
JP5821393B2 (ja) 2011-08-15 2015-11-24 日本電気株式会社 情報処理装置、起動方法、プログラム
US9037786B2 (en) 2011-09-23 2015-05-19 Avalanche Technology, Inc. Storage system employing MRAM and array of solid state disks with integrated switch
KR101522848B1 (ko) 2011-10-05 2015-05-26 엘에스아이 코포레이션 비휘발성 스토리지에 대한 셀프-저널링 및 계층적 일치성
WO2013077867A1 (en) 2011-11-22 2013-05-30 Intel Corporation Access control for non-volatile random access memory across platform agents
US8832327B1 (en) * 2011-12-22 2014-09-09 Western Digital Technologies, Inc. Loading different device drivers for one device
US8953644B2 (en) 2011-12-27 2015-02-10 Intel Corporation Multi-protocol I/O interconnect time synchronization
US9146855B2 (en) 2012-01-09 2015-09-29 Dell Products Lp Systems and methods for tracking and managing non-volatile memory wear
BR112014017543A2 (pt) 2012-01-17 2017-06-27 Intel Corp técnicas de validação de comando para o acesso a um dispositivo de armazenamento por um cliente remoto
US9253275B2 (en) 2012-01-30 2016-02-02 International Business Machines Corporation Cognitive dynamic allocation in caching appliances
CN104115526B (zh) * 2012-02-16 2019-07-16 飞利浦灯具控股公司 通信网络中高效的代理表管理
US10019353B2 (en) 2012-03-02 2018-07-10 Longitude Enterprise Flash S.A.R.L. Systems and methods for referencing data on a storage medium
US8811406B2 (en) 2012-03-14 2014-08-19 International Business Machines Corporation Delivering multicast frames to aggregated link trunks in a distributed switch
US10102170B2 (en) 2012-05-18 2018-10-16 Dell Products, Lp System and method for providing input/output functionality by an I/O complex switch
CN103425219B (zh) 2012-05-18 2016-12-07 鸿富锦精密工业(深圳)有限公司 电源控制系统及方法
US8843772B2 (en) 2012-05-22 2014-09-23 Dell Products Lp Systems and methods for dynamic power allocation in an information handling system environment
JP6007667B2 (ja) * 2012-08-17 2016-10-12 富士通株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
US9280504B2 (en) 2012-08-24 2016-03-08 Intel Corporation Methods and apparatus for sharing a network interface controller
JP2015532759A (ja) 2012-09-06 2015-11-12 ピーアイ−コーラル, インコーポレーテッドPi−Coral, Inc. 軸方向に整列した電子機器用筐体
WO2014039922A2 (en) 2012-09-06 2014-03-13 Pi-Coral, Inc. Large-scale data storage and delivery system
US9043527B2 (en) 2013-01-04 2015-05-26 American Megatrends, Inc. PCI express channel implementation in intelligent platform management interface stack
US20140195634A1 (en) 2013-01-10 2014-07-10 Broadcom Corporation System and Method for Multiservice Input/Output
US9652376B2 (en) 2013-01-28 2017-05-16 Radian Memory Systems, Inc. Cooperative flash memory control
US8998636B2 (en) 2013-01-29 2015-04-07 Hewlett-Packard Development Company, L.P. Interconnect assembly
US8892805B2 (en) 2013-03-07 2014-11-18 Silicon Graphics International Corp. High performance system that includes reconfigurable protocol tables within an ASIC wherein a first protocol block implements an inter-ASIC communications protocol and a second block implements an intra-ASIC function
US9244877B2 (en) 2013-03-14 2016-01-26 Intel Corporation Link layer virtualization in SATA controller
US9110677B2 (en) * 2013-03-14 2015-08-18 Sandisk Technologies Inc. System and method for predicting and improving boot-up sequence
US9756128B2 (en) 2013-04-17 2017-09-05 Apeiron Data Systems Switched direct attached shared storage architecture
US20140330995A1 (en) 2013-05-03 2014-11-06 Paul S. Levy Data storage system
US20140344431A1 (en) 2013-05-16 2014-11-20 Aspeed Technology Inc. Baseboard management system architecture
US9734106B2 (en) 2013-05-31 2017-08-15 Dell Products L.P. Systems and methods for providing connections to an information handling system
KR20140144520A (ko) 2013-06-11 2014-12-19 삼성전자주식회사 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법
US9785356B2 (en) 2013-06-26 2017-10-10 Cnex Labs, Inc. NVM express controller for remote access of memory and I/O over ethernet-type networks
US9785355B2 (en) 2013-06-26 2017-10-10 Cnex Labs, Inc. NVM express controller for remote access of memory and I/O over ethernet-type networks
US9430412B2 (en) 2013-06-26 2016-08-30 Cnex Labs, Inc. NVM express controller for remote access of memory and I/O over Ethernet-type networks
US10063638B2 (en) 2013-06-26 2018-08-28 Cnex Labs, Inc. NVM express controller for remote access of memory and I/O over ethernet-type networks
US9092321B2 (en) 2013-07-24 2015-07-28 NXGN Data, Inc. System and method for performing efficient searches and queries in a storage node
CN103412769B (zh) * 2013-07-25 2017-11-21 华为技术有限公司 外接卡参数配置方法、设备以及系统
US20150039815A1 (en) 2013-08-02 2015-02-05 OCZ Storage Solutions Inc. System and method for interfacing between storage device and host
US8943234B1 (en) 2013-08-05 2015-01-27 Lsi Corporation Multi-protocol storage controller
US9584632B2 (en) 2013-08-28 2017-02-28 Wipro Limited Systems and methods for multi-protocol translation
JP6216187B2 (ja) 2013-09-02 2017-10-18 株式会社オービックビジネスコンサルタント 情報処理システム、参照サーバ装置、情報処理方法、及びプログラム
US9460042B2 (en) 2013-09-03 2016-10-04 Hewlett Packard Enterprise Development Lp Backplane controller to arbitrate multiplexing of communication
US9125050B2 (en) 2013-09-26 2015-09-01 Dell Products L.P. Secure near field communication server information handling system lock
US20150106660A1 (en) 2013-10-16 2015-04-16 Lenovo (Singapore) Pte. Ltd. Controller access to host memory
KR20150047785A (ko) 2013-10-25 2015-05-06 삼성전자주식회사 서버 시스템 및 스토리지 시스템
KR20150047784A (ko) 2013-10-25 2015-05-06 삼성전자주식회사 서버 시스템 및 스토리지 시스템
KR20150057069A (ko) * 2013-11-18 2015-05-28 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR102147629B1 (ko) 2013-11-18 2020-08-27 삼성전자 주식회사 플렉시블 서버 시스템
KR101533427B1 (ko) 2013-12-19 2015-07-03 주식회사 퓨쳐텍 대용량 가상저장공간을 제공하는 이동식 저장장치 및 그 제공방법
US9619243B2 (en) 2013-12-19 2017-04-11 American Megatrends, Inc. Synchronous BMC configuration and operation within cluster of BMC
US9648148B2 (en) 2013-12-24 2017-05-09 Intel Corporation Method, apparatus, and system for QoS within high performance fabrics
US20150205541A1 (en) 2014-01-20 2015-07-23 Samya Systems, Inc. High-capacity solid state disk drives
US20150301964A1 (en) 2014-02-18 2015-10-22 Alistair Mark Brinicombe Methods and systems of multi-memory, control and data plane architecture
WO2015126383A1 (en) 2014-02-19 2015-08-27 Hewlett-Packard Development Company, L.P. Adapter for transmitting signals
JP2017512350A (ja) 2014-03-08 2017-05-18 ディアマンティ インコーポレイテッド 集中型ネットワーキング及びストレージのための方法及びシステム
US9887008B2 (en) 2014-03-10 2018-02-06 Futurewei Technologies, Inc. DDR4-SSD dual-port DIMM device
US9727503B2 (en) 2014-03-17 2017-08-08 Mellanox Technologies, Ltd. Storage system and server
US10311003B2 (en) 2014-03-26 2019-06-04 Lenovo (Singapore) Pte. Ltd. Detection and identifcation of supported connection protocols in a multi-purpose storage bay
JP6342196B2 (ja) 2014-03-31 2018-06-13 能美防災株式会社 支援システム
JP6474199B2 (ja) 2014-03-31 2019-02-27 株式会社Lixil 水洗便器
US20150286599A1 (en) 2014-04-03 2015-10-08 Thomson Licensing Chassis identification method using modulation
JP2015207123A (ja) * 2014-04-18 2015-11-19 富士通株式会社 ストレージ装置、ストレージ制御方法およびストレージ制御プログラム
JP6273353B2 (ja) 2014-04-21 2018-01-31 株式会社日立製作所 計算機システム
US20150317176A1 (en) * 2014-05-02 2015-11-05 Cavium, Inc. Systems and methods for enabling value added services for extensible storage devices over a network via nvme controller
US20150324311A1 (en) 2014-05-08 2015-11-12 International Business Machines Corporation Allocating lanes of a serial computer expansion bus among installed devices
US9477295B2 (en) 2014-05-15 2016-10-25 Dell Products, L.P. Non-volatile memory express (NVMe) device power management
US9525639B2 (en) 2014-05-28 2016-12-20 Broadcom Corporation 2.5 GBPS/5GBPS ethernet communications over a full duplex communication channel
US9244865B2 (en) 2014-05-28 2016-01-26 SanDisk Technologies, Inc. Obtaining diagnostic information through host interfaces
US10223316B2 (en) 2014-06-18 2019-03-05 Ngd Systems, Inc. Interface compatible with M.2 connector socket for ultra high capacity solid state drive
US10067844B2 (en) 2014-06-18 2018-09-04 Ngd Systems, Inc. Method of channel content rebuild in ultra-high capacity SSD
JP6181304B2 (ja) 2014-06-19 2017-08-16 株式会社日立製作所 ストレージ装置およびインタフェース装置
US9477564B2 (en) 2014-06-20 2016-10-25 Intel Corporation Method and apparatus for dynamic node healing in a multi-node environment
US9645902B2 (en) 2014-06-23 2017-05-09 Liqid Inc. Modular switched fabric for data storage systems
TWI547377B (zh) 2014-06-25 2016-09-01 Simulated wood with pores and fibers and its preparation method
WO2016003408A1 (en) 2014-06-30 2016-01-07 Hewlett-Packard Development Company, L.P. Runtime drive detection and configuration
JP6580895B2 (ja) 2014-08-08 2019-09-25 株式会社コーセー アスタキサンチン含有デスモグレイン減少剤
FR3025333B1 (fr) 2014-08-26 2017-12-08 Bull Sas Serveur comprenant une pluralite de modules
US9653124B2 (en) 2014-09-04 2017-05-16 Liqid Inc. Dual-sided rackmount storage assembly
CN109766302B (zh) 2014-09-12 2022-09-16 华为技术有限公司 设备管理的方法和装置
US9836309B2 (en) 2014-09-17 2017-12-05 Dell Products L.P. Systems and methods for in-situ fabric link optimization in a modular information handling system chassis
US20160094619A1 (en) 2014-09-26 2016-03-31 Jawad B. Khan Technologies for accelerating compute intensive operations using solid state drives
US10579574B2 (en) 2014-09-30 2020-03-03 Keysight Technologies, Inc. Instrumentation chassis with high speed bridge board
US9904330B2 (en) 2014-10-10 2018-02-27 Sanmina Corporation Base board architecture for a server computer and method therefor
US9565269B2 (en) 2014-11-04 2017-02-07 Pavilion Data Systems, Inc. Non-volatile memory express over ethernet
US9712619B2 (en) 2014-11-04 2017-07-18 Pavilion Data Systems, Inc. Virtual non-volatile memory express drive
US9921750B2 (en) * 2014-11-20 2018-03-20 Samsung Electronics Co., Ltd. Solid state drive (SSD) memory cache occupancy prediction
US10006882B2 (en) 2014-11-21 2018-06-26 EnLiSense, LLC Biosensing system and methods using electron-ionic mechanisms at fluid-sensor interfaces
WO2016085016A1 (ko) 2014-11-28 2016-06-02 윤동구 디바이스 확장 기능을 갖는 확장형 멀티 디바이스 베이 시스템
US9965367B2 (en) 2014-12-17 2018-05-08 Quanta Computer Inc. Automatic hardware recovery system
US9846576B2 (en) 2014-12-27 2017-12-19 Intel Corporation Technologies for reprogramming network interface cards over a network
CN104579772B (zh) 2014-12-30 2018-12-14 华为技术有限公司 计算机设备与计算机设备的配置管理方法
US9906596B2 (en) 2015-01-23 2018-02-27 Kodiak Data Resource node interface protocol
CN104615577A (zh) 2015-02-09 2015-05-13 浪潮集团有限公司 一种大数据服务器
US9767067B2 (en) 2015-02-19 2017-09-19 Dell Products, L.P. Baseboard management systems and methods with distributed intelligence for multi-node platforms
US20160259754A1 (en) 2015-03-02 2016-09-08 Samsung Electronics Co., Ltd. Hard disk drive form factor solid state drive multi-card adapter
US20160261375A1 (en) 2015-03-04 2016-09-08 Qualcomm Incorporated Packet format and coding method for serial data transmission
US9612764B2 (en) 2015-03-04 2017-04-04 International Business Machines Corporation Frame choosing during storage constraint condition
US10210120B2 (en) 2015-03-26 2019-02-19 Intel Corporation Method, apparatus and system to implement secondary bus functionality via a reconfigurable virtual switch
US10019388B2 (en) 2015-04-28 2018-07-10 Liqid Inc. Enhanced initialization for data storage assemblies
US9811481B2 (en) 2015-04-30 2017-11-07 American Megatrends, Inc. Distributed intelligent platform management interface (D-IPMI) system and method thereof
US9792240B2 (en) 2015-05-05 2017-10-17 Dell Products, L.P. Method for dynamic configuration of a PCIE slot device for single or multi root ability
US10114778B2 (en) 2015-05-08 2018-10-30 Samsung Electronics Co., Ltd. Multi-protocol IO infrastructure for a flexible storage platform
US10104017B2 (en) 2015-05-12 2018-10-16 Jeda Networks, Inc. Methods, systems and apparatus for the virtualization of high performance networks
US20160366071A1 (en) 2015-06-10 2016-12-15 Cisco Technology, Inc. Methods and systems for multiple gigabit ethernet link recovery
CN104951252B (zh) 2015-06-12 2018-10-16 北京联想核芯科技有限公司 一种数据访问方法及PCIe存储设备
TWI536179B (zh) 2015-07-02 2016-06-01 緯創資通股份有限公司 連接電路及具有該連接電路之計算機系統
US9713215B2 (en) 2015-07-16 2017-07-18 Quanta Computer Inc. Identification of storage device for trouble shooting
US20180032471A1 (en) 2016-07-26 2018-02-01 Samsung Electronics Co., Ltd. Self-configuring ssd multi-protocol support in host-less environment
US10191523B2 (en) 2015-08-03 2019-01-29 Dell Products L.P. Systems and methods for management of exhaust temperature in an information handling system
US9658791B2 (en) 2015-08-14 2017-05-23 International Business Machines Corporation Managing temperature of solid state disk devices
US10481948B2 (en) 2015-08-25 2019-11-19 Box, Inc. Data transfer in a collaborative file sharing system
US9830082B1 (en) 2015-09-08 2017-11-28 EMC IP Holding Company LLC Hybrid hyper-converged infrastructure and storage appliance
US20170068628A1 (en) 2015-09-08 2017-03-09 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Reducing ethernet latency in a multi-server chassis
GB2542149B (en) 2015-09-09 2019-11-27 Imagination Tech Ltd Synchronising devices
US9734093B2 (en) 2015-09-18 2017-08-15 Dell Products, L.P. Management of secured storage devices in an information handling system
KR20170040897A (ko) 2015-10-06 2017-04-14 주식회사 스토리지안 멀티 인터페이스 포트를 갖는 에스에스디 더블러 및 이를 위한 멀티 디바이스 베이 시스템
US10467163B1 (en) 2015-10-27 2019-11-05 Pavilion Data Systems, Inc. Solid state drive multiplexer
CN105260275A (zh) 2015-10-27 2016-01-20 浪潮电子信息产业股份有限公司 一种适用于高端主机的自动配置分区的开关机测试方法
US10206297B2 (en) 2015-11-23 2019-02-12 Liqid Inc. Meshed architecture rackmount storage assembly
US10275356B2 (en) 2015-12-11 2019-04-30 Quanta Computer Inc. Component carrier with converter board
CN105512007B (zh) 2015-12-17 2018-12-04 英业达科技有限公司 一种pcie硬盘状态灯的控制方法及系统
US20180275919A1 (en) * 2015-12-23 2018-09-27 Hewlett Packard Enterprise Development Lp Prefetching data in a distributed storage system
US10498654B2 (en) 2015-12-28 2019-12-03 Amazon Technologies, Inc. Multi-path transport design
US10235314B2 (en) 2015-12-28 2019-03-19 EMC IP Holding Company LLC Fabric for modular solid-state storage systems
US10255215B2 (en) 2016-01-29 2019-04-09 Liqid Inc. Enhanced PCIe storage device form factors
US10929327B1 (en) 2016-02-22 2021-02-23 ZT Group Int'l, Inc. Expansion device housing multiple components
US9934173B1 (en) 2016-02-24 2018-04-03 Xilinx, Inc. Pseudo cut-through architecture between non-volatile memory storage and remote hosts over a fabric
US10474589B1 (en) 2016-03-02 2019-11-12 Janus Technologies, Inc. Method and apparatus for side-band management of security for a server computer
US10223313B2 (en) 2016-03-07 2019-03-05 Quanta Computer Inc. Scalable pooled NVMe storage box that comprises a PCIe switch further connected to one or more switches and switch ports
EP3920675A1 (en) 2016-03-14 2021-12-08 Intel Corporation Data storage system connectors with parallel array of dense memory cards and high airflow
US20170262029A1 (en) 2016-03-14 2017-09-14 Intel Corporation Data storage system with parallel array of dense memory cards and high airflow
US20170269871A1 (en) 2016-03-16 2017-09-21 Intel Corporation Data storage system with persistent status display for memory storage devices
US10430351B2 (en) 2016-03-17 2019-10-01 Dell Products L.P. Systems and methods for virtual service processor data bridging
US10331520B2 (en) 2016-03-18 2019-06-25 Dell Products L.P. Raid hot spare disk drive using inter-storage controller communication
US9952634B2 (en) 2016-03-28 2018-04-24 Lenovo (Singapore) Pte. Ltd. Interfacing with multiple components connected to a printed circuit board
US10310980B2 (en) * 2016-04-01 2019-06-04 Seagate Technology Llc Prefetch command optimization for tiered storage systems
US9842084B2 (en) 2016-04-05 2017-12-12 E8 Storage Systems Ltd. Write cache and write-hole recovery in distributed raid over shared multi-queue storage devices
US9959240B2 (en) 2016-04-14 2018-05-01 Dell Products, L.P. Manually configurable PCIe lane count for PCIe SSD backplane
US10467170B2 (en) 2016-04-18 2019-11-05 Hewlett Packard Enterprise Development Lp Storage array including a bridge module interconnect to provide bridge connections to different protocol bridge protocol modules
US10108450B2 (en) * 2016-04-21 2018-10-23 Samsung Electronics Co., Ltd. Mechanism for SSDs to efficiently manage background activity with notify
CN105912275A (zh) 2016-04-27 2016-08-31 华为技术有限公司 在非易失性存储系统中建立连接的方法和装置
US20170317901A1 (en) 2016-04-29 2017-11-02 Cisco Technology, Inc. Integrated approach to monitor gbp health and adjust policy service level
US10089028B2 (en) 2016-05-27 2018-10-02 Dell Products L.P. Remote secure drive discovery and access
US10620840B2 (en) 2016-05-27 2020-04-14 Intel Corporation Computer product, method, and system to dynamically manage storage devices accessed remotely over a network
US10114653B2 (en) 2016-06-09 2018-10-30 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Multiple-stage bootloader and firmware for baseboard manager controller and primary processing subsystem of computing device
US10254807B2 (en) 2016-06-13 2019-04-09 Dell Products L.P. Systems and methods for policy-based per-zone air mover management for offline management controller
US10452576B2 (en) 2016-06-24 2019-10-22 Avago Technologies International Sales Pte. Limited NVMe drive detection from a SAS/SATA connector
US10289588B2 (en) 2016-06-30 2019-05-14 Quanta Computer Inc. Riser card
US10333736B2 (en) 2016-07-12 2019-06-25 Eaton Intelligent Power Limited Method and apparatus for re-establishing a ring topology following a loss of power
US11461258B2 (en) 2016-09-14 2022-10-04 Samsung Electronics Co., Ltd. Self-configuring baseboard management controller (BMC)
US10372659B2 (en) 2016-07-26 2019-08-06 Samsung Electronics Co., Ltd. Multi-mode NMVE over fabrics devices
US10387353B2 (en) 2016-07-26 2019-08-20 Samsung Electronics Co., Ltd. System architecture for supporting active pass-through board for multi-mode NMVE over fabrics devices
US10210123B2 (en) 2016-07-26 2019-02-19 Samsung Electronics Co., Ltd. System and method for supporting multi-path and/or multi-mode NMVe over fabrics devices
US10346041B2 (en) 2016-09-14 2019-07-09 Samsung Electronics Co., Ltd. Method for using BMC as proxy NVMeoF discovery controller to provide NVM subsystems to host
US10365981B2 (en) 2016-08-19 2019-07-30 Samsung Electronics Co., Ltd. Adaptive multipath fabric for balanced performance and high availability
US10572397B2 (en) 2016-09-30 2020-02-25 Hewlett Packard Enterprise Development Lp Masking storage device presence
US10235312B2 (en) * 2016-10-07 2019-03-19 Samsung Electronics Co., Ltd. Memory system and host device that maintain compatibility with memory devices under previous standards and/or versions of standards
US20180131633A1 (en) 2016-11-08 2018-05-10 Alibaba Group Holding Limited Capacity management of cabinet-scale resource pools
US10496566B2 (en) 2016-12-20 2019-12-03 Samsung Electronics Co., Ltd. Method and apparatus for data recovering during a board replacement
US20180227369A1 (en) 2017-02-09 2018-08-09 Kaiser Foundation Hospitals Converged service computing platform
US10089276B1 (en) 2017-03-17 2018-10-02 Eaton Intelligent Power Limited Distributed logic control apparatus
US10560550B1 (en) 2017-04-10 2020-02-11 Juniper Networks, Inc. Automatic configuration of a replacement network device in a high-availability cluster
US10733137B2 (en) 2017-04-25 2020-08-04 Samsung Electronics Co., Ltd. Low latency direct access block storage in NVME-of ethernet SSD
US10310745B2 (en) * 2017-05-19 2019-06-04 Samsung Electronics Co., Ltd. Method and apparatus for fine tuning and optimizing NVMe-oF SSDs
US10599600B2 (en) * 2017-06-16 2020-03-24 Western Digital Technologies, Inc. Peripheral Component Interconnect Express (PCIe) switching for multi-host computing system deployments
US10289517B2 (en) 2017-06-21 2019-05-14 Western Digital Technologies, Inc. Identifying system device locations
US10896129B2 (en) 2017-08-07 2021-01-19 Dynavisor, Inc. Method and system for storage virtualization
US10503590B2 (en) 2017-09-21 2019-12-10 International Business Machines Corporation Storage array comprising a host-offloaded storage function
US10942666B2 (en) 2017-10-13 2021-03-09 Cisco Technology, Inc. Using network device replication in distributed storage clusters
US10521378B2 (en) 2018-03-09 2019-12-31 Samsung Electronics Co., Ltd. Adaptive interface storage device with multiple storage protocols including NVME and NVME over fabrics storage devices
US10649674B2 (en) 2018-05-03 2020-05-12 Western Digital Technologies, Inc. Extended controller pre-initialization using boot partitions in solid state systems
US11238005B2 (en) 2018-07-20 2022-02-01 Samsung Electronics Co., Ltd. SFF-TA-100X based multi-mode protocols solid state devices
US10592144B2 (en) 2018-08-03 2020-03-17 Western Digital Technologies, Inc. Storage system fabric with multichannel compute complex
WO2020077027A1 (en) 2018-10-11 2020-04-16 Varada Ltd. Method and system for executing queries on indexed views
CA3130468A1 (en) 2019-03-14 2020-09-17 Yadong Li Distributed system generating rule compiler engine apparatuses, methods, systems and media
US11113046B1 (en) 2019-09-24 2021-09-07 Amazon Technologies, Inc. Integration and remote control of a pre-assembled computer system into a server for a virtualization service
US11726672B2 (en) 2020-12-24 2023-08-15 Samsung Electronics Co., Ltd. Operating method of storage device setting secure mode of command, and operating method of storage system including the storage device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04257050A (ja) * 1991-02-12 1992-09-11 Fujitsu Ltd Scsi装置の自動認識・接続方式
US20120102580A1 (en) * 2010-10-22 2012-04-26 International Business Machines Corporation Out Of Band Vital Product Data Collection
US20140032641A1 (en) * 2012-07-27 2014-01-30 Vmware, Inc. Virtual intelligent platform management interface for hardware components
JP2014241545A (ja) * 2013-06-12 2014-12-25 株式会社日立製作所 通信システム及び通信システムの冗長化の方法
WO2015049742A1 (ja) * 2013-10-02 2015-04-09 株式会社日立製作所 ストレージシステムおよびストレージシステム制御方法
WO2015191649A1 (en) * 2014-06-11 2015-12-17 Microsoft Technology Licensing, Llc Providing multiple synchronous serial console sessions using data buffering

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11860672B2 (en) 2018-03-02 2024-01-02 Samsung Electronics Co., Ltd. Method for supporting erasure code data protection with embedded PCIE switch inside FPGA+SSD
JP2019212279A (ja) * 2018-05-31 2019-12-12 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド スマートネットワークインターフェイスカード操作用の方法及び装置
JP2021510215A (ja) * 2018-07-17 2021-04-15 華為技術有限公司Huawei Technologies Co.,Ltd. I/o要求処理方法およびデバイス
US11249663B2 (en) 2018-07-17 2022-02-15 Huawei Technologies Co., Ltd. I/O request processing method and device
JP7094364B2 (ja) 2018-07-17 2022-07-01 華為技術有限公司 I/o要求処理方法およびデバイス
JP7497146B2 (ja) 2018-09-18 2024-06-10 三星電子株式会社 多数の装置環境でペアリングするfpgaとssdを識別するためのストレージ装置及びコプロセッサを含むシステム及び方法

Also Published As

Publication number Publication date
KR102297321B1 (ko) 2021-09-03
US10346041B2 (en) 2019-07-09
US11983406B2 (en) 2024-05-14
CN118069463A (zh) 2024-05-24
US11983405B2 (en) 2024-05-14
JP6889071B2 (ja) 2021-06-18
KR20180030377A (ko) 2018-03-22
US20210382627A1 (en) 2021-12-09
TWI710908B (zh) 2020-11-21
CN107818021A (zh) 2018-03-20
US20220365683A1 (en) 2022-11-17
JP2021120908A (ja) 2021-08-19
US20190286584A1 (en) 2019-09-19
US20180074717A1 (en) 2018-03-15
JP7084528B2 (ja) 2022-06-14
TW201812597A (zh) 2018-04-01
US11989413B2 (en) 2024-05-21
US20240184447A1 (en) 2024-06-06
US11126352B2 (en) 2021-09-21
CN107818021B (zh) 2024-03-08
US20210072898A1 (en) 2021-03-11

Similar Documents

Publication Publication Date Title
JP7084528B2 (ja) 管理装置及びその動作方法
JP7028590B2 (ja) セルフ構成するbmc及びその動作方法
EP3255527B1 (en) Remote keyboard-video-mouse technologies
US20170102952A1 (en) Accessing data stored in a remote target using a baseboard management controler (bmc) independently of the status of the remote target's operating system (os)
TWI581589B (zh) 網際網路小型電腦系統介面啓動參數部署系統及其方法
US11036667B2 (en) System and method to scale baseboard management controller management of storage instrumentation
US10558453B1 (en) System and method to achieve shared drive firmware version consistency via ESRT update
US10795846B1 (en) Scalable NVMe storage management over system management bus
US11170111B1 (en) System and method for publishing and configuring a management service interface

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200828

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200828

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200828

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200909

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210203

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: 20210420

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210520

R150 Certificate of patent or registration of utility model

Ref document number: 6889071

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250