JP7205110B2 - Information processing device, information processing method and information processing program - Google Patents

Information processing device, information processing method and information processing program Download PDF

Info

Publication number
JP7205110B2
JP7205110B2 JP2018156828A JP2018156828A JP7205110B2 JP 7205110 B2 JP7205110 B2 JP 7205110B2 JP 2018156828 A JP2018156828 A JP 2018156828A JP 2018156828 A JP2018156828 A JP 2018156828A JP 7205110 B2 JP7205110 B2 JP 7205110B2
Authority
JP
Japan
Prior art keywords
mctp
devices
device list
information
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018156828A
Other languages
Japanese (ja)
Other versions
JP2020030706A (en
Inventor
孝 村山
憲司 岩澤
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2018156828A priority Critical patent/JP7205110B2/en
Publication of JP2020030706A publication Critical patent/JP2020030706A/en
Application granted granted Critical
Publication of JP7205110B2 publication Critical patent/JP7205110B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理装置、情報処理方法及び情報処理プログラムに関する。 The present invention relates to an information processing device, an information processing method, and an information processing program.

情報処理装置に搭載されたデバイス同士がPCIe(Peripheral Component Interconnect express)バスを介して直接通信する技術として、MCTP(Management Component Transport Protocol) over PCIeという技術がある。MCTP over PCIeでは、PCH(Platform Controller Hub)上で動作するノードマネージャがバスオーナとなり、MCTPに対応したデバイスに対して通信用の識別子であるMCTP Endpoint ID(Identifier)を割り振る処理を行う。以下では、MCTPに対応したデバイスをMCTPデバイスと言う。MCTP Endpoint IDを割り振る処理はMCTP Discovery処理と呼ばれ、以下ではディスカバリ処理と表す。このディスカバリ処理により割り振られたMCTP Endpoint IDを使用することで、各MCTPデバイス同士の通信が可能となる。 2. Description of the Related Art A technology called MCTP (Management Component Transport Protocol) over PCIe is available as a technology in which devices mounted in an information processing apparatus directly communicate with each other via a PCIe (Peripheral Component Interconnect express) bus. In MCTP over PCIe, a node manager operating on a PCH (Platform Controller Hub) becomes a bus owner and performs processing for allocating an MCTP Endpoint ID (Identifier), which is an identifier for communication, to a device compatible with MCTP. A device compatible with MCTP is hereinafter referred to as an MCTP device. The process of allocating the MCTP Endpoint ID is called MCTP Discovery process, and is hereinafter referred to as discovery process. By using the MCTP Endpoint ID allocated by this discovery process, communication between MCTP devices becomes possible.

また近年、情報処理装置には、システムボード上にCPU(Central Processing Unit)とは独立して電源投入やエラー監視と言ったサーバの管理や制御を行うBMC(Baseboard Management Controller)が搭載されたものがある。BMCは、例えば、IPMI(Intelligent Platform Management Interface)の規格に準拠したインタフェースを用いてハードウェアの監視を行う。BMCは、自己が管理するMCTPデバイスリストに登録されたMCTPデバイスを監視する。BMCが管理するMCTPデバイスリストは、BMC内部のMCTPエージェントが、定期的にMCTPデバイス情報一覧をバスオーナであるノードマネージャから取得して作成する。具体的には、BMCは、バスオーナであるノードマネージャからBMCを含むMCTPデバイスの一覧をGet Routing Talbe Entriesコマンドを使用して取得して、MCTPデバイスリストを作成する。BMCから装置のデバイスを取得する外部の管理サーバなどは、BMCに対して有効なMCTPデバイスについて問い合わせを行い、BMCから通知された有効なMCTPデバイスに対して情報の採取を行う。 In recent years, information processing equipment has been equipped with a BMC (Baseboard Management Controller), which manages and controls the server, such as turning on the power and monitoring errors, independently of the CPU (Central Processing Unit) on the system board. There is The BMC monitors hardware using, for example, an interface conforming to the IPMI (Intelligent Platform Management Interface) standard. The BMC monitors MCTP devices registered in its own MCTP device list. The MCTP device list managed by the BMC is created by the MCTP agent inside the BMC periodically acquiring the MCTP device information list from the node manager, which is the bus owner. Specifically, the BMC acquires a list of MCTP devices including the BMC from the node manager, which is the bus owner, using the Get Routing Talbe Entries command, and creates an MCTP device list. An external management server or the like that acquires the devices of the apparatus from the BMC inquires of the BMC about valid MCTP devices, and collects information from the valid MCTP devices notified from the BMC.

BMCは、目的のMCTPデバイスとMCTP通信を行う場合、PCIeデバイスとしてのPCIeアドレス情報を基にMVTPデバイスリストからMCTP Endoint IDを取得する。そして、BMCは、取得したMCTP Endoint IDを用いて目的のMCTPデバイスと通信を行う。 When performing MCTP communication with a target MCTP device, the BMC acquires the MCTP Endpoint ID from the MVTP device list based on the PCIe address information as the PCIe device. The BMC then uses the obtained MCTP Endoint ID to communicate with the target MCTP device.

ここで、ディスカバリ処理について説明する。バスオーナであるノードマネージャは、PCIeバスの初期化時に初期化開始指示を情報処理装置に搭載された全てのデバイスに発行する。その後、ノードマネージャは、以下の処理を定期的に繰り返す。ノードマネージャは、情報処理装置にPCIeデバイスが搭載されているか否かを判定する。PCIeデバイスが存在する場合、ノードマネージャは、そのPCIeデバイスに対してEndpoint Discoveryコマンドを発行する。PCIeデバイスがEndpoint Discoveryコマンドに応答を返してきた場合、ノードマネージャは、そのPCIeデバイスにMCTP Endpoint IDを割り振る。既に検出されてMCTP Endpoint IDを割り当て済みのPCIeデバイスは、Endpoint Discoveryコマンドに対する応答を行わない。 Here, discovery processing will be described. A node manager, which is a bus owner, issues an initialization start instruction to all the devices mounted on the information processing apparatus when the PCIe bus is initialized. After that, the node manager periodically repeats the following process. The node manager determines whether or not the information processing device is equipped with a PCIe device. If the PCIe device exists, the node manager issues an Endpoint Discovery command to that PCIe device. If the PCIe device responds to the Endpoint Discovery command, the Node Manager allocates an MCTP Endpoint ID to the PCIe device. A PCIe device that has already been discovered and assigned an MCTP Endpoint ID does not respond to the Endpoint Discovery command.

BMCは、自己のMCTPデバイスリストをノードマネージャが有する最新のMCTPデバイスの一覧と一致させるため、定期的にノードマネージャに対してポーリングを行い最新のMCTPデバイスの一覧を取得する。BMCは、自己に対するディスカバリ処理により自己のMCTP Endpoint IDが確定した時点からこのポーリング処理を開始する。 In order to match its own MCTP device list with the latest MCTP device list possessed by the node manager, the BMC periodically polls the node manager and acquires the latest MCTP device list. The BMC starts this polling process when its own MCTP Endpoint ID is determined by its own discovery process.

なお、PCIeデバイス間の通信技術として、予め保持する構成パラメータに基づいてデバイス情報を構成し、構成したデバイス情報を用いてパケットによる通信を行う従来技術がある。また、作業の終了時刻を判定する技術として、作業の開始及び終了のイベントを検出して作業に費やした時間を算出し、算出した時間と予定時間を用いて遅延率を求め、求めた遅延率を用いて作業の終了時刻を推定する技術がある。 As a communication technique between PCIe devices, there is a conventional technique of configuring device information based on prestored configuration parameters and performing packet communication using the configured device information. In addition, as a technology for determining the work end time, the work start and end events are detected, the time spent on the work is calculated, the calculated time and the estimated time are used to calculate the delay rate, and the calculated delay rate There is a technique for estimating the end time of work using

特表2017-503238号公報Japanese Patent Publication No. 2017-503238 特開2011-215977号公報JP 2011-215977 A

しかしながら、ポーリングを行って最新のMCTPデバイスの一覧を入手する方法では、BMCは、バスオーナであるノードマネージャと自己以外のMCTPデバイスとの間で行われているディスカバリ処理の進行状況を把握しない。そのため、BMCは、自己に対するディスカバリ処理完了後、どの時点でノードマネージャによる全てのPCIeデバイスに対するディスカバリ処理が完了したかを把握することが難しい。すなわち、BMCは、MCTPデバイスリストの完成を判定することが困難である。そこで、BMCは、定期的にノードマネージャに対してMCTPデバイスの一覧を要求し続けることになり、PCIeバスに定期的にBMCからノードマネージャに対して通信が発生する。ノードマネージャは、CPUと密接にかかわるPCH上で動作するため、定期的な通信が発生すると、情報処理装置の処理性能を低下させるおそれがある。 However, in the method of obtaining the latest list of MCTP devices by polling, the BMC does not grasp the progress of the discovery process performed between the node manager, which is the bus owner, and MCTP devices other than itself. Therefore, it is difficult for the BMC to grasp when the node manager has completed the discovery processing for all PCIe devices after completing the self-discovery processing. That is, the BMC has difficulty determining the completion of the MCTP device list. Therefore, the BMC continues to periodically request the list of MCTP devices from the node manager, and communication occurs periodically from the BMC to the node manager on the PCIe bus. Since the node manager operates on the PCH, which is closely related to the CPU, periodic communication may reduce the processing performance of the information processing apparatus.

また、構成パラメータに基づいて構成したデバイス情報を用いてパケット通信を行う従来技術では、ディスカバリ処理について考慮されておらず、この従来技術を用いても情報処理装置の処理性能を向上させることは困難である。さらに、作業の開始及び終了のイベントから遅延率を求めて終了時間を予測する従来技術を用いてもディスカバリ処理の完了時間を把握することは難しいため、情報処理装置の処理性能を向上させることは困難である。 In addition, the conventional technology that performs packet communication using device information configured based on configuration parameters does not consider discovery processing, and even with this conventional technology, it is difficult to improve the processing performance of the information processing apparatus. is. Furthermore, it is difficult to grasp the completion time of the discovery process even using the conventional technology that predicts the end time by obtaining the delay rate from the work start and end events, so it is difficult to improve the processing performance of the information processing apparatus. Have difficulty.

開示の技術は、上記に鑑みてなされたものであって、情報処理装置の処理性能を向上させる情報処理装置、情報処理方法及び情報処理プログラムを提供することを目的とする。 The disclosed technology has been made in view of the above, and aims to provide an information processing device, an information processing method, and an information processing program that improve the processing performance of the information processing device.

本願の開示する情報処理装置、情報処理方法及び情報処理プログラムの一つの態様において、特定部は、1つ又は複数の搭載デバイスの情報をBIOSから取得し、前記搭載デバイスの中からMCTPを用いて通信を行う通信機能を有する1つ又は複数のデバイスを特定する。割当部は、前記搭載デバイスの中からMCTPを用いて通信を行う通信機能を有する1つ又は複数のデバイスを検出し検出したデバイスに対する前記MCTPを用いた通信に用いる通信情報の割り当てを順次実行する。取得部は、前記特定部により特定された前記デバイスのリストに含まれる前記デバイスの全てについて割り当てられた前記通信情報を取得するまで前記割当部から前記通信情報の取得を繰り返す。 In one aspect of the information processing apparatus, information processing method, and information processing program disclosed in the present application, the identification unit acquires information on one or more mounted devices from the BIOS, and uses MCTP from among the mounted devices to Identify one or more devices with communication capabilities with which to communicate. The assigning unit detects one or more devices having a communication function for communicating using MCTP from among the mounted devices, and sequentially assigns communication information used for communication using MCTP to the detected devices. do. The obtaining unit repeats obtaining the communication information from the assigning unit until the communication information assigned to all of the devices included in the device list identified by the identifying unit is obtained.

1つの側面では、本発明は、情報処理装置の処理性能を向上させることができる。 In one aspect, the present invention can improve the processing performance of an information processing device.

図1は、情報処理装置のブロック図である。FIG. 1 is a block diagram of an information processing device. 図2は、PCIeデバイス情報の一例の図である。FIG. 2 is a diagram of an example of PCIe device information. 図3は、MCTP対応状況データベースの一例を示す図である。FIG. 3 is a diagram showing an example of the MCTP support status database. 図4は、予測MCTPデバイスリストの一例を示す図である。FIG. 4 is a diagram showing an example of a predicted MCTP device list. 図5は、実施例1に係るMCTPデバイス一覧の取得処理を表すシーケンス図である。FIG. 5 is a sequence diagram illustrating a process of acquiring an MCTP device list according to the first embodiment; 図6は、完了予測時間中にディスカバリ処理が完了しなかった場合のMCTPデバイス一覧の取得処理を表すシーケンス図である。FIG. 6 is a sequence diagram showing the MCTP device list acquisition process when the discovery process is not completed within the expected completion time. 図7は、実施例1に係るMCTPデバイスリストの取得処理のフローチャートである。FIG. 7 is a flowchart of an MCTP device list acquisition process according to the first embodiment. 図8は、実施例2に係るMCTPデバイス一覧の取得処理を表すシーケンス図である。FIG. 8 is a sequence diagram illustrating an MCTP device list acquisition process according to the second embodiment. 図9は、実施例2に係るMCTPデバイスリストの取得処理のフローチャートである。FIG. 9 is a flowchart of an MCTP device list acquisition process according to the second embodiment. 図10は、情報処理装置のハードウェア構成図である。FIG. 10 is a hardware configuration diagram of an information processing apparatus.

以下に、本願の開示する情報処理装置、情報処理方法及び情報処理プログラムの実施例を図面に基づいて詳細に説明する。なお、以下の実施例により本願の開示する情報処理装置、情報処理方法及び情報処理プログラムが限定されるものではない。 Hereinafter, embodiments of an information processing apparatus, an information processing method, and an information processing program disclosed in the present application will be described in detail based on the drawings. The information processing apparatus, information processing method, and information processing program disclosed in the present application are not limited to the following embodiments.

図1は、情報処理装置のブロック図である。情報処理装置1は、CPU11、PCH12、PCIeスロット14、PCIeデバイス140及びBMC15を有する。 FIG. 1 is a block diagram of an information processing device. The information processing device 1 has a CPU 11 , a PCH 12 , a PCIe slot 14 , a PCIe device 140 and a BMC 15 .

PCIeデバイス140は、PCIeの規格に準拠したIO(Input Output)デバイスであり、PCIeスロット14に装着される。PCIeデバイス140には、MCTP対応のデバイスと、MCTP非対応のデバイスが存在する。各PCIeスロット14に接続されるPCIeデバイス140は、全てがMCTP対応でもよいし、全てがMCTP非対応でもよいし、MCTP対応とMCTP非対応とが混在してもよい。以下では、PCIeスロット14に接続するデータバスをPCIeバスという。また、MCTPに対応したPCIeデバイス140を、MCTPデバイスという場合がある。このPCIeデバイス140が、「搭載デバイス」の一例にあたる。そして、MCTP通信を行う機能が、「所定の通信機能」の一例にあたる。また、MCTPデバイスが、「特定されたデバイス」の一例にあたる。 The PCIe device 140 is an IO (Input Output) device conforming to the PCIe standard, and is attached to the PCIe slot 14 . The PCIe devices 140 include devices that support MCTP and devices that do not support MCTP. All of the PCIe devices 140 connected to each PCIe slot 14 may support MCTP, may not support MCTP, or may be compatible with both MCTP and non-MCTP. A data bus connected to the PCIe slot 14 is hereinafter referred to as a PCIe bus. Also, the PCIe device 140 that supports MCTP may be called an MCTP device. This PCIe device 140 corresponds to an example of a “mounted device”. A function of performing MCTP communication corresponds to an example of the "predetermined communication function". Also, the MCTP device corresponds to an example of the "identified device".

CPU11は、情報処理装置1の起動時にBIOS(Basic Input Output System)110を実行して動作させる。BIOS110は、PCIeスロット14に接続されたPCIeデバイス140を含む周辺機器の設定及び管理を行う。 The CPU 11 executes and operates a BIOS (Basic Input Output System) 110 when the information processing apparatus 1 is activated. BIOS 110 configures and manages peripherals including PCIe device 140 connected to PCIe slot 14 .

また、BIOS110は、情報処理装置1の起動時に、各PCIeスロット14に接続されたPCIeデバイス140を含む周辺機器の認識を行う。そして、BIOS110は、認識したPCIeデバイス140の各種情報を含むPCIeデバイス情報をBMC15へ送信する。例えば、BIOS110は、IPMIコマンドであるSet PCI Device Infoを用いてPCIeデバイス情報をBMC15へ送信する。 The BIOS 110 also recognizes peripheral devices including the PCIe device 140 connected to each PCIe slot 14 when the information processing apparatus 1 is activated. The BIOS 110 then transmits PCIe device information including various types of information about the recognized PCIe device 140 to the BMC 15 . For example, the BIOS 110 transmits PCIe device information to the BMC 15 using the IPMI command Set PCI Device Info.

また、CPU11は、OS(Operating System)を動作させる。OS上では、エージェントが動作する。OS上で動作するPCIeスロット14を管理するエージェントは、ホットプラグ対応のPCIeデバイス140がPCIeスロット14に接続された場合、PCIeデバイス情報をBMC15へ送信する。 The CPU 11 also operates an OS (Operating System). An agent operates on the OS. An agent operating on the OS and managing the PCIe slot 14 transmits PCIe device information to the BMC 15 when a hot-pluggable PCIe device 140 is connected to the PCIe slot 14 .

PCIeデバイス情報は、例えば、図2に示すフォーマット201で示す情報を含む。図2は、PCIeデバイス情報の一例の図である。図2に向かって左側の数字は、各情報のサイズをバイト単位で表した値である。本実施例においてBIOS110が送信するPCIeデバイス情報は、図2のフォーマット201に示すように、ベンダIDであるPCI Vender ID及びデバイスIDであるPCI Device IDを含む。さらに、PCIeデバイス情報は、図2のフォーマット201に示すように、PCIeアドレスであるPCI物理アドレス、PCIeデバイス140のファームウェアバージョン及びファームウェアバージョン長を含む。例えば、PCIeデバイス140としては、ネットワークアダプタカードなどが存在する。 The PCIe device information includes, for example, information shown in format 201 shown in FIG. FIG. 2 is a diagram of an example of PCIe device information. The numbers on the left side of FIG. 2 represent the size of each piece of information in bytes. The PCIe device information transmitted by the BIOS 110 in this embodiment includes a PCI Vendor ID that is a vendor ID and a PCI Device ID that is a device ID, as shown in the format 201 of FIG. Furthermore, the PCIe device information includes the PCI physical address, which is the PCIe address, the firmware version of the PCIe device 140, and the firmware version length, as shown in the format 201 of FIG. For example, the PCIe device 140 includes a network adapter card.

PCH12は、PCIeスロット14に接続するPCIeバスを含む各種データバスの管理を行う。PCH12は、ノードマネージャ120を動作させる。PCH12は、データバスの管理に関してCPU11と通信を行う。このPCH12が、「通信情報管理装置」の一例にあたる。 The PCH 12 manages various data buses including the PCIe bus connected to the PCIe slot 14 . PCH 12 operates node manager 120 . PCH 12 communicates with CPU 11 regarding data bus management. This PCH 12 corresponds to an example of a "communication information management device".

ノードマネージャ120は、例えば、PCIeバスの管理を行う。ノードマネージャ120は、PCIeバスに接続されるPCIeスロット14に接続されたPCIeデバイス140のうちMCTPに準拠したPCIeデバイス140を検出する。ノードマネージャ120は、検出したMCTPデバイスが接続されたPCIeスロット14のPCIeアドレスを表すデバイスアドレスを取得する。そして、ノードマネージャ120は、検出したMCTPデバイスにMCTPデバイス間の直接通信に用いる通信用識別子を割り振るディスカバリ処理を行う。通信用識別子は、例えば、Endpoint IDである。そして、ノードマネージャ120は、各デバイスアドレスとそのデバイスアドレスを有するMCTPデバイスに割り振った通信識別子とを対応付けて記憶する。この、通信識別子が、「通信情報」の一例にあたる。 The node manager 120 manages the PCIe bus, for example. The node manager 120 detects MCTP-compliant PCIe devices 140 among the PCIe devices 140 connected to the PCIe slots 14 connected to the PCIe bus. The node manager 120 obtains a device address representing the PCIe address of the PCIe slot 14 to which the detected MCTP device is connected. Then, the node manager 120 performs discovery processing to allocate communication identifiers used for direct communication between MCTP devices to the detected MCTP devices. The communication identifier is, for example, Endpoint ID. Then, the node manager 120 associates and stores each device address with the communication identifier assigned to the MCTP device having that device address. This communication identifier corresponds to an example of "communication information".

さらに、ノードマネージャ120は、MCTPデバイス一覧の取得要求をMCTPデバイスリスト生成部154から受信する。そして、ノードマネージャ120は、保持する各デバイスアドレスとそのデバイスアドレスを有するMCTPデバイスに割り振った通信識別子との対応情報をMCTPデバイス一覧としてMCTPデバイスリスト生成部154へ送信する。ここで、ノードマネージャ120は、MCTPデバイス一覧の取得要求の受信時に保持する対応情報を送信するので、ディスカバリ処理を行っていないMCTPデバイスが残っている場合、そのMCTPデバイスに関する情報はMCTPデバイス一覧には含まれない。このノードマネージャ120が、「割当部」及び「通信情報管理プロセス」の一例にあたる。 Further, the node manager 120 receives an MCTP device list acquisition request from the MCTP device list generator 154 . Then, the node manager 120 transmits to the MCTP device list generation unit 154 as an MCTP device list correspondence information between each held device address and the communication identifier assigned to the MCTP device having that device address. Here, the node manager 120 transmits the correspondence information it holds when receiving the request to acquire the MCTP device list. Therefore, if there is an MCTP device that has not undergone discovery processing, the information about that MCTP device is included in the MCTP device list. is not included. This node manager 120 corresponds to an example of an "allocation unit" and a "communication information management process."

BMC15は、CPU11から独立して電源管理や状態監視といった情報処理装置1の基本的な操作を行う。例えば、BMC15は、MCTPデバイスであるPCIeデバイス140とMCTP通信を行い、そのPCIeデバイス140のデータを採取する。本実施例に係るBMC15は、予測MCTPデバイスリスト生成部151、完了時間算出部152、MCTP対応状況データベース153、MCTPデバイスリスト生成部154、処理完了判定部155、デバイス管理部156及び遅延タイマ157を有する。このBMC15が、「管理装置」の一例にあたる。また、BMC15が実行する各種処理が、「管理プロセス」の一例にあたる。 The BMC 15 performs basic operations of the information processing apparatus 1 such as power management and status monitoring independently of the CPU 11 . For example, the BMC 15 performs MCTP communication with a PCIe device 140, which is an MCTP device, and collects data from the PCIe device 140. FIG. The BMC 15 according to this embodiment includes a predicted MCTP device list generation unit 151, a completion time calculation unit 152, an MCTP support status database 153, an MCTP device list generation unit 154, a process completion determination unit 155, a device management unit 156, and a delay timer 157. have. This BMC 15 corresponds to an example of a "management device". Also, various processes executed by the BMC 15 correspond to an example of a "management process".

MCTP対応状況データベース153は、MCTPデバイスを特定するための情報が格納される。MCTP対応状況データベース153は、例えば、図3に示す特定情報202を含む。図3は、MCTP対応状況データベースの一例を示す図である。MCTP対応状況データベース153は、特定情報202に含まれるMCTPデバイスの製造元を表すベンダID、MCTPデバイスの識別情報であるPCIデバイスID、及び、MCTPに対応したファームウェアバージョンの情報を有する。あるPCIeデバイス140のベンダID、PCIデバイスID及びファームウェアバージョンがMCTP対応状況データベース153に登録されている場合、そのPCIeデバイス140はMCTPデバイスである。また、ファームウェアバージョンが「null」の場合、ファームウェアバージョンの情報が存在しないことを表し、そのPCIeデバイス140がファームウェアバージョンに依らずMCTPに対応することを表す。 The MCTP compatibility database 153 stores information for identifying MCTP devices. The MCTP compliance status database 153 includes, for example, specific information 202 shown in FIG. FIG. 3 is a diagram showing an example of the MCTP support status database. The MCTP compatibility database 153 has vendor IDs representing manufacturers of MCTP devices included in the specific information 202, PCI device IDs that are identification information of the MCTP devices, and information on firmware versions compatible with MCTP. If the vendor ID, PCI device ID, and firmware version of a given PCIe device 140 are registered in the MCTP support status database 153, that PCIe device 140 is an MCTP device. If the firmware version is "null", it means that there is no firmware version information, and that the PCIe device 140 supports MCTP regardless of the firmware version.

予測MCTPデバイスリスト生成部151は、情報処理装置1の起動後に、各PCIeスロット14に接続されたPCIeデバイス140のそれぞれのPCIeデバイス情報の入力をBIOS110から受ける。具体的には、予測MCTPデバイスリスト生成部151は、各PCIeデバイス140について図2で示したフォーマット201で示される各情報の入力を受ける。 The predictive MCTP device list generation unit 151 receives input of PCIe device information of each PCIe device 140 connected to each PCIe slot 14 from the BIOS 110 after the information processing apparatus 1 is started. Specifically, the predictive MCTP device list generator 151 receives input of each information shown in the format 201 shown in FIG. 2 for each PCIe device 140 .

次に、予測MCTPデバイスリスト生成部151は、取得したPCIeデバイス情報に含まれるPCI物理アドレスの情報から、それぞれのPCIeデバイス140が接続されたPCIeスロット14を判別する。さらに、予測MCTPデバイスリスト生成部151は、各PCIeデバイス140のベンダID、デバイスID及びファームウェアバージョンをPCIeデバイス情報から取得する。 Next, the predicted MCTP device list generator 151 determines the PCIe slot 14 to which each PCIe device 140 is connected from the PCI physical address information included in the acquired PCIe device information. Furthermore, the predicted MCTP device list generation unit 151 acquires the vendor ID, device ID, and firmware version of each PCIe device 140 from the PCIe device information.

次に、予測MCTPデバイスリスト生成部151は、MCTP対応状況データベース153を参照し、各PCIeデバイス140がMCTPに対応しているかを確認し、MCTPに対応したPCIeデバイス140であるMCTPデバイスを特定する。そして、予測MCTPデバイスリスト生成部151は、通信用識別子及び物理アドレスの対応を表す情報を生成する。 Next, the predicted MCTP device list generation unit 151 refers to the MCTP support status database 153, checks whether each PCIe device 140 supports MCTP, and identifies the MCTP device that is the PCIe device 140 that supports MCTP. . Then, the predicted MCTP device list generation unit 151 generates information representing the correspondence between the communication identifier and the physical address.

本実施例では、予測MCTPデバイスリスト生成部151は、例えば、図4に示すような予測MCTPデバイスリスト203を生成する。図4は、予測MCTPデバイスリストの一例を示す図である。図4の予測MCTPデバイスリスト203におけるMCTP Endpoint IDは、通信用識別子にあたる。また、予測MCTPデバイスリスト203におけるデバイスアドレスは、各MCTPデバイスの物理アドレスにあたる。ここで、本実施例では、予測MCTPデバイスリスト203における1番の登録欄には、ノードマネージャ120が動作するPCH12の情報が登録される。PCH12のMCTP Endopoint IDは、固定であるので予測MCTPデバイスリスト203の初期状態で既に登録済みである。また、本実施例では、予測MCTPデバイスリスト203における2番の登録欄に、BMC15自身の情報が登録される。予測MCTPデバイスリスト203を生成した段階では、BMC15に対するディスカバリ処理が完了していないので、BMC15のMCTP Endpoint IDは未登録である。 In this embodiment, the predicted MCTP device list generator 151 generates a predicted MCTP device list 203 as shown in FIG. 4, for example. FIG. 4 is a diagram showing an example of a predicted MCTP device list. MCTP Endpoint ID in the predicted MCTP device list 203 in FIG. 4 corresponds to a communication identifier. Also, the device address in the predicted MCTP device list 203 corresponds to the physical address of each MCTP device. Here, in this embodiment, the information of the PCH 12 on which the node manager 120 operates is registered in the No. 1 registration field in the predicted MCTP device list 203 . Since the PCH 12 MCTP Endpoint ID is fixed, it has already been registered in the initial state of the expected MCTP device list 203 . Further, in this embodiment, the information of the BMC 15 itself is registered in the second registration field in the predicted MCTP device list 203 . Since the discovery process for the BMC 15 has not been completed at the stage of generating the predicted MCTP device list 203, the MCTP Endpoint ID of the BMC 15 is unregistered.

具体的な予測MCTPデバイスリスト203の作成処理の流れについて説明する。予測MCTPデバイスリスト生成部151は、情報処理装置1の起動時に予測MCTPデバイスリスト203を初期化する。初期化時に、予測MCTPデバイスリスト生成部151は、PCH12に関する情報を残しておいてもよい。その後、予測MCTPデバイスリスト生成部151は、BIOS110から取得した各MCTPデバイスのデバイスアドレスを予測MCTPデバイスリスト203へ順次登録していくことで予測MCTPデバイスリスト203を完成させる。 A specific flow of processing for creating the predicted MCTP device list 203 will be described. The predicted MCTP device list generation unit 151 initializes the predicted MCTP device list 203 when the information processing apparatus 1 is activated. At the time of initialization, the predicted MCTP device list generator 151 may leave information about the PCH 12 . After that, the predicted MCTP device list generation unit 151 completes the predicted MCTP device list 203 by sequentially registering the device address of each MCTP device obtained from the BIOS 110 in the predicted MCTP device list 203 .

そして、予測MCTPデバイスリスト生成部151は、生成した予測MCTPデバイスリスト203をMCTPデバイスリスト生成部154及び完了時間算出部152へ出力する。ここで、予測MCTPデバイスリスト生成部151は、完了時間算出部152へは、予測MCTPデバイスリスト203を送信せずに、予測MCTPデバイスリスト203に登録したMCTPデバイスの数を通知してもよい。この予測MCTPデバイスリスト生成部151が、「特定部」の一例にあたる。 Predicted MCTP device list generation section 151 then outputs the generated predicted MCTP device list 203 to MCTP device list generation section 154 and completion time calculation section 152 . Here, predictive MCTP device list generating section 151 may notify completion time calculating section 152 of the number of MCTP devices registered in predictive MCTP device list 203 without transmitting predictive MCTP device list 203 . The predicted MCTP device list generation unit 151 corresponds to an example of the "specification unit".

完了時間算出部152は、予測MCTPデバイスリスト203の入力を予測MCTPデバイスリスト生成部151から受ける。完了時間算出部152は、取得した予測MCTPデバイスリスト203から情報処理装置1に搭載されたMCTPデバイスのうちPCH12を除いたデバイス数を取得する。ここで、完了時間算出部152は、1デバイスのディスカバリ処理にかかると予測される予測処理時間を予め有する。そこで、完了時間算出部152は、予測処理時間にデバイス数を乗算して、BMC15のディスカバリ処理が完了してから残りの全てのMCTPデバイスのディスカバリ処理が完了するまでの完了予測時間を求める。その後、完了時間算出部152は、算出した完了予測時間を処理完了判定部155へ出力する。この完了時間算出部152が、「算出部」の一例にあたる。そして、予測完了時間が、「割当時間」の一例にあたる。 Completion time calculator 152 receives input of predicted MCTP device list 203 from predicted MCTP device list generator 151 . The completion time calculator 152 obtains the number of MCTP devices installed in the information processing apparatus 1 excluding the PCH 12 from the obtained predicted MCTP device list 203 . Here, the completion time calculator 152 has in advance a predicted processing time that is predicted to be required for the discovery processing of one device. Therefore, the completion time calculator 152 multiplies the predicted processing time by the number of devices to obtain the predicted completion time from the completion of the discovery processing of the BMC 15 to the completion of the discovery processing of all remaining MCTP devices. After that, the completion time calculator 152 outputs the calculated estimated completion time to the process completion determination unit 155 . The completion time calculator 152 corresponds to an example of a "calculator". The predicted completion time corresponds to an example of "allocation time".

処理完了判定部155は、情報処理装置1の起動時に遅延タイマ157を起動させる。遅延タイマ157は、自己の起動時からの経過時間を計測するタイマである。その後、処理完了判定部155は、完了予測時間の入力を完了時間算出部152から受ける。そして、処理完了判定部155は、遅延タイマ157から経過時間を随時取得し、経過時間が完了予測時間に達すると、完了予測時間の経過をMCTPデバイスリスト生成部154へ通知する。この処理完了判定部155が、「判定部」の一例にあたる。 The processing completion determination unit 155 activates the delay timer 157 when the information processing apparatus 1 is activated. The delay timer 157 is a timer that measures the time that has elapsed since its activation. After that, the process completion determination unit 155 receives input of the estimated completion time from the completion time calculation unit 152 . Then, the process completion determination unit 155 acquires the elapsed time from the delay timer 157 as needed, and when the elapsed time reaches the estimated completion time, notifies the MCTP device list generation unit 154 of the elapse of the estimated completion time. The processing completion determination unit 155 corresponds to an example of a "determination unit".

MCTPデバイスリスト生成部154は、予測MCTPデバイスリスト203の入力を予測MCTPデバイスリスト生成部151から受ける。そして、MCTPデバイスリスト生成部154は、完了予測時間経過の通知をMCTPデバイスリスト生成部154から受けるまで待機する。 The MCTP device list generator 154 receives input of the predicted MCTP device list 203 from the predicted MCTP device list generator 151 . Then, the MCTP device list generation section 154 waits until it receives from the MCTP device list generation section 154 notification that the estimated completion time has elapsed.

その後、完了予測時間経過の通知を受けると、MCTPデバイスリスト生成部154は、MCTPデバイス一覧の取得要求をノードマネージャ120へ送信する。その後、MCTPデバイスリスト生成部154は、MCTPデバイス一覧をノードマネージャ120から受信する。 After that, upon receiving the notification that the estimated completion time has elapsed, the MCTP device list generation unit 154 transmits an MCTP device list acquisition request to the node manager 120 . After that, the MCTP device list generator 154 receives the MCTP device list from the node manager 120 .

次に、MCTPデバイスリスト生成部154は、受信したMCTPデバイス一覧に含まれるデバイスアドレスに対応する通信識別情報を、予測MCTPデバイスリスト203における同じデバイスアドレスの欄に登録する。そして、MCTPデバイスリスト生成部154は、予測MCTPデバイスリスト203に登録されたMCTPデバイスが全てMCTPデバイス一覧に存在するか否かを判定する。予測MCTPデバイスリスト203に登録されたMCTPデバイスが全てMCTPデバイス一覧に存在する場合、MCTPデバイスリスト生成部154は、登録が完了した予測MCTPデバイスリスト203をMCTPデバイスリストとして取得する。MCTPデバイスリストの生成が完了すると、MCTPデバイスリスト生成部154は、取得したMCTPデバイスリストをデバイス管理部156へ出力する。 Next, the MCTP device list generator 154 registers the communication identification information corresponding to the device address included in the received MCTP device list in the column of the same device address in the predicted MCTP device list 203 . Then, the MCTP device list generation unit 154 determines whether all the MCTP devices registered in the predicted MCTP device list 203 are present in the MCTP device list. When all the MCTP devices registered in the predicted MCTP device list 203 are present in the MCTP device list, the MCTP device list generation unit 154 acquires the registered predicted MCTP device list 203 as an MCTP device list. When the generation of the MCTP device list is completed, MCTP device list generation section 154 outputs the acquired MCTP device list to device management section 156 .

これに対して、予測MCTPデバイスリスト203に登録されたMCTPデバイスのうちMCTPデバイス一覧に存在しないものが存在する場合、MCTPデバイスリスト生成部154は、MCTPデバイス一覧の取得要求をノードマネージャ120へ再度送信する。MCTPデバイスリスト生成部154は、予測MCTPデバイスリスト203に登録されたMCTPデバイスが全て存在するMCTPデバイス一覧を取得するまで、MCTPデバイスリストの生成処理を繰り返す。 On the other hand, if there is an MCTP device registered in the predicted MCTP device list 203 that does not exist in the MCTP device list, the MCTP device list generation unit 154 sends an MCTP device list acquisition request to the node manager 120 again. Send. The MCTP device list generation unit 154 repeats the MCTP device list generation process until it acquires an MCTP device list in which all MCTP devices registered in the predicted MCTP device list 203 are present.

MCTPデバイスリストの生成処理を繰り返す場合、MCTPデバイスリスト生成部154は、リトライ回数を取得する。また、MCTPデバイスリスト生成部154は、自己が有する時計を用いて、最初のMCTPデバイス一覧の取得からの経過時間を取得する。ここで、MCTPデバイスリスト生成部154は、エラー発生の判定の基準となるリトライ閾値及びリカバリ可能時間を予め有する。 When repeating the MCTP device list generation process, the MCTP device list generation unit 154 acquires the number of retries. Also, the MCTP device list generation unit 154 uses its own clock to obtain the elapsed time from the initial acquisition of the MCTP device list. Here, the MCTP device list generation unit 154 has in advance a retry threshold value and a recoverable time that serve as criteria for error occurrence determination.

MCTPデバイスリスト生成部154は、リトライ回数がリトライ閾値を超過したかを判定する。また、MCTPデバイスリスト生成部154は、最初のMCTPデバイス一覧の取得からの経過時間がリカバリ可能時間を超過したかを判定する。リトライ回数がリトライ閾値を超過しておらず、且つ、経過時間がリカバリ可能時間を超過していない場合、MCTPデバイスリスト生成部154は、MCTPデバイスリストの生成処理を繰り返す。 The MCTP device list generator 154 determines whether the number of retries exceeds the retry threshold. In addition, the MCTP device list generation unit 154 determines whether the elapsed time from acquisition of the first MCTP device list has exceeded the recoverable time. If the retry count does not exceed the retry threshold and the elapsed time does not exceed the recoverable time, the MCTP device list generation unit 154 repeats the MCTP device list generation processing.

一方、リトライ回数がリトライ閾値を超過した又は経過時間がリカバリ可能時間を超過した場合、MCTPデバイスリスト生成部154は、MCTPデバイスリストの取得に失敗したと判定して、MCTPデバイスリストの取得処理を終了する。 On the other hand, if the number of retries exceeds the retry threshold or the elapsed time exceeds the recoverable time, the MCTP device list generation unit 154 determines that acquisition of the MCTP device list has failed, and starts the MCTP device list acquisition process. finish.

デバイス管理部156は、MCTPデバイスリストの入力をMCTPデバイスリスト生成部154から受ける。その後、デバイス管理部156は、MCTP通信が有効なPCIeデバイス140に関する問合せを外部の管理サーバ2から受ける。そして、デバイス管理部156は、MCTPデバイスリストに登録されたMCTPデバイスとの間でMCTPデバイスリストに登録された通信識別情報を用いて通信を行い、各MCTPデバイスの情報を採取する。その後、デバイス管理部156は、採取した各MCTPデバイスの情報を管理サーバ2へ送信する。このデバイス管理部156が、「制御部」の一例にあたる。 The device management section 156 receives input of the MCTP device list from the MCTP device list generation section 154 . After that, the device management unit 156 receives an inquiry about the PCIe device 140 for which MCTP communication is valid from the external management server 2 . Then, the device management unit 156 communicates with the MCTP devices registered in the MCTP device list using the communication identification information registered in the MCTP device list, and collects the information of each MCTP device. After that, the device management unit 156 transmits the collected information of each MCTP device to the management server 2 . This device management unit 156 corresponds to an example of a "control unit".

次に、図5を参照して、BMCによるMCTPデバイス一覧の取得処理のタイミングについて説明する。図5は、実施例1に係るMCTPデバイス一覧の取得処理を表すシーケンス図である。ここでは、MCTPデバイスとして、MCTPデバイス#1~#3が存在する場合で説明する。 Next, the timing of the MCTP device list acquisition process by the BMC will be described with reference to FIG. FIG. 5 is a sequence diagram illustrating a process of acquiring an MCTP device list according to the first embodiment; Here, a case where MCTP devices #1 to #3 exist as MCTP devices will be described.

BMC15は、情報処理装置1の起動後にノードマネージャ120によるディスカバリ処理を受ける(ステップS101)。これにより、BMC15は、通信識別情報が割り振られる。 The BMC 15 undergoes discovery processing by the node manager 120 after the information processing device 1 is activated (step S101). As a result, the BMC 15 is assigned communication identification information.

また、BMC15は、PCIeデバイス情報をBIOS110から受信する(ステップS102)。 Also, the BMC 15 receives the PCIe device information from the BIOS 110 (step S102).

その後、BMC15は、完了予測時間を算出し、算出した完了予測時間まで待機してディスカバリ処理の完了を待ち合わせる(ステップS103)。 After that, the BMC 15 calculates the predicted completion time and waits until the calculated predicted completion time to wait for the completion of the discovery process (step S103).

BMC15が待機している間に、ノードマネージャ120は、MCTPデバイス#1に対するディスカバリ処理を行い、MCTPデバイス#1に通信識別子を割り振り記憶する(ステップS104)。また、ノードマネージャ120は、MCTPデバイス#2に対するディスカバリ処理を行い、MCTPデバイス#2に通信識別子を割り振り記憶する(ステップS105)。さらに、ノードマネージャ120は、MCTPデバイス#3に対するディスカバリ処理を行い、MCTPデバイス#3に通信識別子を割り振り記憶する(ステップS106)。 While the BMC 15 is waiting, the node manager 120 performs discovery processing for the MCTP device #1 and allocates and stores a communication identifier to the MCTP device #1 (step S104). The node manager 120 also performs discovery processing for MCTP device #2, and assigns and stores a communication identifier to MCTP device #2 (step S105). Further, the node manager 120 performs discovery processing for MCTP device #3, and assigns and stores a communication identifier to MCTP device #3 (step S106).

その後、BMC15は、MCTPデバイス一覧の取得要求をノードマネージャ120へ送信する(ステップS107)。 After that, the BMC 15 transmits an MCTP device list acquisition request to the node manager 120 (step S107).

ノードマネージャ120は、MCTPデバイス一覧の取得要求を受信して、記憶するMCTPデバイス#1~#3のデバイスアドレスと通信識別子との対応関係を含むMCTPデバイス一覧をBMC15へ送信する(ステップS108)。BMC15は、情報処理装置1に搭載されたMCTPデバイス#1~#3の情報が全ての登録されたMCTPデバイス一覧をノードマネージャ120から受信する。この後、MCTPデバイスリスト生成部154は、ノードマネージャ120に対するMCTPデバイス一覧の取得要求を停止する。 The node manager 120 receives the MCTP device list acquisition request, and transmits to the BMC 15 the MCTP device list including the correspondence between the device addresses and communication identifiers of the stored MCTP devices #1 to #3 (step S108). The BMC 15 receives from the node manager 120 an MCTP device list in which information on all of the MCTP devices #1 to #3 installed in the information processing apparatus 1 is registered. After that, the MCTP device list generation unit 154 stops requesting the node manager 120 to acquire the MCTP device list.

これに対して、BMC15が取得したMCTPデバイス一覧に登録されていないMCTPデバイスが存在する場合がある。そこで、次に、図6を参照して、完了予測中にディスカバリ処理が完了しなかった場合のMCTPデバイス一覧の取得処理について説明する。図6は、完了予測時間中にディスカバリ処理が完了しなかった場合のMCTPデバイス一覧の取得処理を表すフローチャートである。ここでも、MCTPデバイスとして、MCTPデバイス#1~#3が存在する場合で説明する。 On the other hand, there may be MCTP devices that are not registered in the MCTP device list acquired by the BMC 15 . Therefore, next, with reference to FIG. 6, the process of acquiring the MCTP device list when the discovery process is not completed during completion prediction will be described. FIG. 6 is a flowchart showing the MCTP device list acquisition process when the discovery process is not completed within the expected completion time. Here, too, the case where MCTP devices #1 to #3 exist as MCTP devices will be described.

BMC15は、情報処理装置1の起動後にノードマネージャ120によるディスカバリ処理を受ける(ステップS111)。 The BMC 15 undergoes discovery processing by the node manager 120 after the information processing device 1 is activated (step S111).

また、BMC15は、PCIeデバイス情報をBIOS110から受信する(ステップS112)。 Also, the BMC 15 receives the PCIe device information from the BIOS 110 (step S112).

その後、BMC15は、完了予測時間を算出し、算出した完了予測時間まで待機してディスカバリ処理の完了を待ち合わせる(ステップS113)。 After that, the BMC 15 calculates the predicted completion time and waits until the calculated predicted completion time to wait for the completion of the discovery process (step S113).

BMC15が待機している間に、ノードマネージャ120は、MCTPデバイス#1に対するディスカバリ処理を行い、MCTPデバイス#1に通信識別子を割り振り記憶する(ステップS114)。また、ノードマネージャ120は、MCTPデバイス#2に対するディスカバリ処理を行い、MCTPデバイス#2に通信識別子を割り振り記憶する(ステップS115)。さらに、ノードマネージャ120は、MCTPデバイス#3に対するディスカバリ処理を行う。ただし、この場合、エラーが発生して、MCTPデバイス#3に対するディスカバリ処理が完了しない(ステップS116)。 While the BMC 15 is waiting, the node manager 120 performs discovery processing for the MCTP device #1 and allocates and stores a communication identifier to the MCTP device #1 (step S114). The node manager 120 also performs discovery processing for MCTP device #2, and assigns and stores a communication identifier to MCTP device #2 (step S115). Furthermore, the node manager 120 performs discovery processing for MCTP device #3. However, in this case, an error occurs and the discovery process for MCTP device #3 is not completed (step S116).

その後、BMC15は、MCTPデバイス一覧の取得要求をノードマネージャ120へ送信する(ステップS117)。 After that, the BMC 15 transmits an MCTP device list acquisition request to the node manager 120 (step S117).

ノードマネージャ120は、MCTPデバイス一覧の取得要求を受信して、記憶するMCTPデバイス#1及び#2のデバイスアドレスと通信識別子との対応関係を含むMCTPデバイス一覧をBMC15へ送信する(ステップS118)。BMC15は、情報処理装置1に搭載されたMCTPデバイス#1及び#2の情報が登録されたMCTPデバイス一覧をノードマネージャ120から受信する。 The node manager 120 receives the MCTP device list acquisition request, and transmits to the BMC 15 the MCTP device list including the stored correspondence between the device addresses and communication identifiers of the MCTP devices #1 and #2 (step S118). The BMC 15 receives from the node manager 120 an MCTP device list in which information on the MCTP devices #1 and #2 installed in the information processing apparatus 1 is registered.

しかし、この段階では、MCTPデバイス#3に関する情報がMCTPデバイス一覧に登録されていない。そのため、BMC15は、予測MCTPデバイスリスト203に登録されたMCTPデバイス#3が、MCTPデバイス一覧に存在しないことを検出する。そこで、BMC15は、MCTPデバイス一覧の取得要求をノードマネージャ120へ再度送信する(ステップS119)。 However, at this stage, information about MCTP device #3 is not registered in the MCTP device list. Therefore, the BMC 15 detects that the MCTP device #3 registered in the expected MCTP device list 203 does not exist in the MCTP device list. Therefore, the BMC 15 retransmits the MCTP device list acquisition request to the node manager 120 (step S119).

ノードマネージャ120は、MCTPデバイス一覧の取得要求を受信する。このタイミングでも、ノードマネージャ120は、MCTPデバイス#3のディスカバリ処理を完了していない。そこで、ノードマネージャ120は、記憶するMCTPデバイス#1及び#2のデバイスアドレスと通信識別子との対応関係を含むMCTPデバイス一覧をBMC15へ送信する(ステップS120)。BMC15は、情報処理装置1に搭載されたMCTPデバイス#1及び#2の情報が登録されたMCTPデバイス一覧をノードマネージャ120から受信する。 The node manager 120 receives the MCTP device list acquisition request. Even at this timing, the node manager 120 has not completed the discovery process for MCTP device #3. Therefore, the node manager 120 transmits to the BMC 15 the MCTP device list including the stored correspondence between the device addresses and communication identifiers of the MCTP devices #1 and #2 (step S120). The BMC 15 receives from the node manager 120 an MCTP device list in which information on the MCTP devices #1 and #2 installed in the information processing apparatus 1 is registered.

その後、ノードマネージャ120は、MCTPデバイス#3に対するディスカバリ処理を行い、MCTPデバイス#3に通信識別子を割り振り記憶して、MCTPデバイス#3に対するディスカバリ処理を完了する(ステップS121)。 Thereafter, the node manager 120 performs discovery processing for MCTP device #3, allocates and stores a communication identifier to MCTP device #3, and completes discovery processing for MCTP device #3 (step S121).

BMC15は、予測MCTPデバイスリスト203に登録されたMCTPデバイス#3が、受信したMCTPデバイス一覧に存在しないことを再度検出する。そこで、BMC15は、MCTPデバイス一覧の取得要求をノードマネージャ120へ再度送信する(ステップS122)。 The BMC 15 detects again that the MCTP device #3 registered in the predicted MCTP device list 203 does not exist in the received MCTP device list. Therefore, the BMC 15 retransmits a request to obtain the MCTP device list to the node manager 120 (step S122).

ノードマネージャ120は、MCTPデバイス一覧の取得要求を受信して、記憶するMCTPデバイス#1~#3のデバイスアドレスと通信識別子との対応関係を含むMCTPデバイス一覧をBMC15へ送信する(ステップS123)。BMC15は、情報処理装置1に搭載されたMCTPデバイス#1~#3の情報が全ての登録されたMCTPデバイス一覧をノードマネージャ120から受信する。この後、MCTPデバイスリスト生成部154は、ノードマネージャ120に対するMCTPデバイス一覧の取得要求を停止する。 The node manager 120 receives the MCTP device list acquisition request, and transmits the MCTP device list including the correspondence between the device addresses and communication identifiers of the stored MCTP devices #1 to #3 to the BMC 15 (step S123). The BMC 15 receives from the node manager 120 an MCTP device list in which information on all of the MCTP devices #1 to #3 installed in the information processing apparatus 1 is registered. After that, the MCTP device list generation unit 154 stops requesting the node manager 120 to acquire the MCTP device list.

次に、図7を参照して、実施例1に係るMCTPデバイスリストの取得処理の流れについて説明する。図7は、実施例1に係るMCTPデバイスリストの取得処理のフローチャートである。 Next, the flow of the MCTP device list acquisition process according to the first embodiment will be described with reference to FIG. FIG. 7 is a flowchart of an MCTP device list acquisition process according to the first embodiment.

情報処理装置1が起動すると、処理完了判定部155は、遅延タイマ157を起動する(ステップS201)。 When the information processing apparatus 1 is activated, the process completion determination unit 155 activates the delay timer 157 (step S201).

次に、予測MCTPデバイスリスト生成部151は、予測MCTPデバイスリスト203を初期化する(ステップS202)。 Next, the predicted MCTP device list generator 151 initializes the predicted MCTP device list 203 (step S202).

次に、予測MCTPデバイスリスト生成部151は、全てのPCIeデバイス140に関するPCIeデバイス情報を取得したか否かを判定する(ステップS203)。全てのPCIeデバイス140に関するPCIeデバイス情報を所得していない場合(ステップS203:否定)、予測MCTPデバイスリスト生成部151は、全てのPCIeデバイス140に関するPCIeデバイス情報を取得するまでPCIeデバイス情報の取得を繰り返す。 Next, the predicted MCTP device list generation unit 151 determines whether or not PCIe device information regarding all PCIe devices 140 has been acquired (step S203). If the PCIe device information about all the PCIe devices 140 has not been obtained (step S203: No), the predicted MCTP device list generation unit 151 continues obtaining the PCIe device information until the PCIe device information about all the PCIe devices 140 is obtained. repeat.

これに対して、全てのPCIeデバイス140に関するPCIeデバイス情報を所得した場合(ステップS203:肯定)、予測MCTPデバイスリスト生成部151は、PCIeデバイス140の中から未選択の物を1つ選択する(ステップS204)。 On the other hand, when PCIe device information on all PCIe devices 140 has been obtained (step S203: Yes), the predicted MCTP device list generation unit 151 selects one unselected one from among the PCIe devices 140 ( step S204).

次に、予測MCTPデバイスリスト生成部151は、MCTP対応状況データベース153に選択したPCIeデバイス140の情報が存在するか否かを判定する(ステップS205)。選択したPCIeデバイス140の情報が存在しない場合(ステップS205:否定)、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140がMCTPに非対応であると判定して、ステップS209へ進む。 Next, the predicted MCTP device list generation unit 151 determines whether information on the selected PCIe device 140 exists in the MCTP support status database 153 (step S205). If information on the selected PCIe device 140 does not exist (step S205: No), the predicted MCTP device list generation unit 151 determines that the selected PCIe device 140 does not support MCTP, and proceeds to step S209.

一方、選択したPCIeデバイス140の情報が存在する場合(ステップS205:肯定)、予測MCTPデバイスリスト生成部151は、ファームウェアバージョンの情報が予測MCTPデバイスリスト203に存在するか否かを判定する(ステップS206)。 On the other hand, if information about the selected PCIe device 140 exists (Yes at step S205), the predicted MCTP device list generation unit 151 determines whether information about the firmware version exists in the predicted MCTP device list 203 (step S206).

ファームウェアバージョンの情報が予測MCTPデバイスリスト203に存在しない場合(ステップS206:否定)、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140がMCTPに対応すると判定する。そして、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140の情報を予測MCTPデバイスリスト203に追加する(ステップS208)。 If the firmware version information does not exist in the predicted MCTP device list 203 (step S206: NO), the predicted MCTP device list generator 151 determines that the selected PCIe device 140 supports MCTP. The predicted MCTP device list generation unit 151 then adds information about the selected PCIe device 140 to the predicted MCTP device list 203 (step S208).

これに対して、ファームウェアバージョンの情報が予測MCTPデバイスリスト203に存在する場合(ステップS206:肯定)、予測MCTPデバイスリスト生成部151は、そのファームウェアバージョンを対応バージョンとする。そして、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140のファームウェアバージョンが対応バージョンより新しいか否かを判定する(ステップS207)。 On the other hand, if the firmware version information exists in the predicted MCTP device list 203 (step S206: YES), the predicted MCTP device list generator 151 regards that firmware version as the corresponding version. Then, the predicted MCTP device list generation unit 151 determines whether or not the firmware version of the selected PCIe device 140 is newer than the corresponding version (step S207).

選択したPCIeデバイス140のファームウェアバージョンが対応バージョンより古い場合(ステップS207:否定)、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140がMCTPに非対応であると判定して、ステップS209へ進む。 If the firmware version of the selected PCIe device 140 is older than the supported version (step S207: No), the predicted MCTP device list generation unit 151 determines that the selected PCIe device 140 does not support MCTP, and proceeds to step S209. move on.

これに対して、選択したPCIeデバイス140のファームウェアバージョンが対応バージョンより新しい場合(ステップS207:肯定)、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140がMCTPに対応していると判定する。そして、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140の情報を予測MCTPデバイスリスト203に追加する(ステップS208)。 On the other hand, if the firmware version of the selected PCIe device 140 is newer than the supported version (step S207: Yes), the predicted MCTP device list generator 151 determines that the selected PCIe device 140 supports MCTP. . The predicted MCTP device list generation unit 151 then adds information about the selected PCIe device 140 to the predicted MCTP device list 203 (step S208).

その後、予測MCTPデバイスリスト生成部151は、情報処理装置1に搭載された全てのPCIeデバイス104についてMCTPの対応状況の判定が完了したか否かを判定する(ステップS209)。未判定のPCIeデバイス140が存在する場合(ステップS209:否定)、予測MCTPデバイスリスト生成部151は、ステップS204へ処理を戻す。 After that, the predicted MCTP device list generation unit 151 determines whether or not the determination of the MCTP support status has been completed for all the PCIe devices 104 mounted on the information processing apparatus 1 (step S209). If there is an undetermined PCIe device 140 (step S209: NO), the predicted MCTP device list generation unit 151 returns the process to step S204.

これに対して、全てのPCIeデバイス140の判定が完了した場合(ステップS209:肯定)、予測MCTPデバイスリスト生成部151は、予測MCTPデバイスリスト203をMCTPデバイスリスト生成部154及び完了時間算出部152へ出力する。完了時間算出部152は、予測MCTPデバイスリスト203を用いて全てのMCTPデバイスに対するディスカバリ処理の完了予測時間を算出する(ステップS210)。その後、完了時間算出部152は、完了予測時間を処理完了判定部155へ出力する。 On the other hand, when determination of all PCIe devices 140 is completed (Yes at step S209), the predicted MCTP device list generation unit 151 generates the predicted MCTP device list 203 as the MCTP device list generation unit 154 and the completion time calculation unit 152. Output to Completion time calculation unit 152 calculates the expected completion time of discovery processing for all MCTP devices using expected MCTP device list 203 (step S210). Thereafter, the completion time calculator 152 outputs the predicted completion time to the process completion determination unit 155 .

処理完了判定部155は、完了予測時間の入力を完了時間算出部152から受ける。そして、処理完了判定部155は、遅延タイマ157が完了予測時間を超過したか否かを判定する(ステップS211)、完了予測時間を超過していない場合(ステップS211:否定)、完了時間算出部152は、遅延タイマ157が完了予測時間を超過するまで待機する。また、MCTPデバイスリスト生成部154は、予測MCTPデバイスリスト203の入力を予測MCTPデバイスリスト生成部151から受ける。その後、MCTPデバイスリスト生成部154は、完了予測時間の経過の通知を受けるまで待機する。 The processing completion determination unit 155 receives input of the estimated completion time from the completion time calculation unit 152 . Then, the processing completion determination unit 155 determines whether or not the delay timer 157 has exceeded the estimated completion time (step S211). 152 waits until the delay timer 157 exceeds the expected completion time. Also, the MCTP device list generation unit 154 receives input of the predicted MCTP device list 203 from the predicted MCTP device list generation unit 151 . After that, the MCTP device list generator 154 waits until it receives notification that the estimated completion time has elapsed.

完了予測時間を超過した場合(ステップS211:肯定)、完了時間算出部152は、完了予測時間の経過をMCTPデバイスリスト生成部154へ通知する。完了予測時間の通知を処理完了判定部155から受けると、MCTPデバイスリスト生成部154は、MCTPデバイス一覧をノードマネージャ120に要求する(ステップS212)。 If the estimated completion time has been exceeded (step S211: affirmative), the completion time calculation unit 152 notifies the MCTP device list generation unit 154 that the estimated completion time has elapsed. Upon receiving the notification of the estimated completion time from the process completion determination unit 155, the MCTP device list generation unit 154 requests the MCTP device list from the node manager 120 (step S212).

ノードマネージャ120は、MCTPデバイス一覧の取得要求を受けて、その時点で保持するMCTPデバイスのデバイスアドレス及び通信識別情報を含むMCTPデバイス一覧をMCTPデバイスリスト生成部154へ送信する。MCTPデバイスリスト生成部154は、予測MCTPデバイスリスト203の中のMCTPデバイスが全てMCTPデバイス一覧に存在するか否を判定する(ステップS213)。予測MCTPデバイスリスト203の中のMCTPデバイスが全てMCTPデバイス一覧に存在する場合(ステップS213:肯定)、MCTPデバイスリスト生成部154は、ディスカバリ処理が完了したと判定する。そして、MCTPデバイスリスト生成部154は、予測MCTPデバイスリスト203に通信識別情報を登録してMCTPデバイスリストを生成して取得する。この後、MCTPデバイスリスト生成部154は、ノードマネージャ120に対するMCTPデバイス一覧の取得要求を停止する。 Upon receiving the MCTP device list acquisition request, the node manager 120 transmits the MCTP device list including the device addresses and communication identification information of the MCTP devices held at that time to the MCTP device list generator 154 . The MCTP device list generation unit 154 determines whether all MCTP devices in the predicted MCTP device list 203 are present in the MCTP device list (step S213). If all MCTP devices in the expected MCTP device list 203 are present in the MCTP device list (step S213: Yes), the MCTP device list generator 154 determines that the discovery process has been completed. Then, the MCTP device list generation unit 154 registers the communication identification information in the predicted MCTP device list 203 to generate and acquire the MCTP device list. After that, the MCTP device list generation unit 154 stops requesting the node manager 120 to acquire the MCTP device list.

これに対して、MCTPデバイス一覧に存在しないMCTPデバイスがある場合(ステップS213:否定)、MCTPデバイスリスト生成部154は、リトライ回数及び最初のMCTPデバイス一覧の取得からの経過時間を取得する。そして、MCTPデバイスリスト生成部154は、リトライ回数がリトライ閾値を超過したか、又は、経過時間がリカバリ可能時間を超過したかを判定する(ステップS215)。リトライ回数がリトライ閾値を超過しておらず、且つ、経過時間がリカバリ可能時間を超過していない場合(ステップS215:否定)、MCTPデバイスリスト生成部154は、処理をステップS212へ戻す。 On the other hand, if there is an MCTP device that does not exist in the MCTP device list (step S213: NO), the MCTP device list generator 154 acquires the number of retries and the elapsed time since the initial acquisition of the MCTP device list. The MCTP device list generation unit 154 then determines whether the number of retries exceeds the retry threshold or the elapsed time exceeds the recoverable time (step S215). If the number of retries does not exceed the retry threshold and the elapsed time does not exceed the recoverable time (step S215: No), the MCTP device list generator 154 returns the process to step S212.

これに対して、リトライ回数がリトライ閾値を超過しした、又は、経過時間がリカバリ可能時間を超過した場合(ステップS215:肯定)、MCTPデバイスリスト生成部154は、MCTPデバイスリストの取得エラーと判定する(ステップS216)。そして、MCTPデバイスリスト生成部154は、MCTPデバイスリストの取得処理を終了する。 On the other hand, if the number of retries exceeds the retry threshold or the elapsed time exceeds the recoverable time (step S215: Yes), the MCTP device list generation unit 154 determines that an MCTP device list acquisition error has occurred. (step S216). Then, the MCTP device list generation unit 154 ends the MCTP device list acquisition process.

以上に説明したように、本実施例に係る情報処理装置のBMCは、起動時にBIOSから情報処理装置に搭載されたMCTPデバイスの情報を取得する。そして、BMCは、取得したMCTPデバイスの情報を用いてノードマネージャがディスカバリ処理を行うMCTPデバイスを予測する。その後、BMCは、ノードマネージャから通知されたディスカバリ処理が完了したMCTPデバイスの中に、予測したMCTPデバイスが全て含まれるか否かにより全てのディスカバリ処理が完了したか否かを判定する。ディスカバリ処理が完了している場合、BMCは、ノードマネージャからMCTPデバイスに関する情報をそれ以上取得しなくても良いのでMCTPデバイスの情報の取得要求によるポーリングを停止することができる。したがって、PCIeバスにおける通信を低減させることができ、情報処理装置の処理性能を向上させることができる。 As described above, the BMC of the information processing apparatus according to the present embodiment acquires information on the MCTP device installed in the information processing apparatus from the BIOS at startup. Then, the BMC predicts the MCTP device for which the node manager performs the discovery process using the acquired information of the MCTP device. After that, the BMC determines whether or not all the discovery processing has been completed by checking whether or not all the predicted MCTP devices are included in the MCTP devices notified by the node manager that have completed the discovery processing. If the discovery process is complete, the BMC can stop polling the MCTP device for requests to obtain information as it does not need to obtain any more information about the MCTP device from the node manager. Therefore, communication on the PCIe bus can be reduced, and the processing performance of the information processing device can be improved.

次に実施例2について説明する。本実施例に係る情報処理装置は、起動後にPCIeデバイスがホットプラグ対応のPCIeスロットに追加された場合にも、MCTPデバイスリストの取得処理を実行する。本実施例に係る情報処理装置も図1で表される。以下の説明では、実施例1と同様の各部の動作については説明を省略する。以下では、起動状態でPCIeデバイス140が新たに追加された場合について説明する。情報処理装置1のPCIeスロット14は、ホットプラグに対応する。 Next, Example 2 will be described. The information processing apparatus according to the present embodiment executes the MCTP device list acquisition process even when a PCIe device is added to a hot-pluggable PCIe slot after startup. The information processing apparatus according to this embodiment is also represented in FIG. In the following description, the description of the operation of each unit similar to that of the first embodiment will be omitted. In the following, a case where the PCIe device 140 is newly added in the activated state will be described. The PCIe slot 14 of the information processing device 1 supports hot plugging.

動作中の情報処理装置1のホットプラグ対応のPCIeスロット14に新たなPCIeデバイス140が接続されると、CPU11により実行されるOS上で動作するPCIeスロット14を管理するエージェントが、PCIeデバイス情報をBMC15へ送信する。 When a new PCIe device 140 is connected to the hot-pluggable PCIe slot 14 of the information processing apparatus 1 in operation, an agent that manages the PCIe slot 14 running on the OS executed by the CPU 11 receives the PCIe device information. Send to BMC15.

予測MCTPデバイスリスト生成部151は、ホットプラグ対応のPCIeスロット14に新たにPCIeデバイス104が接続されると、各PCIeスロット14に接続されたPCIeデバイス140のそれぞれのPCIeデバイス情報の入力をOS上で動作するエージェントから受ける。 When a new PCIe device 104 is connected to the hot-pluggable PCIe slot 14, the predictive MCTP device list generation unit 151 receives input of PCIe device information of each PCIe device 140 connected to each PCIe slot 14 on the OS. received from agents working in

次に、予測MCTPデバイスリスト生成部151は、取得したPCIeデバイス情報に含まれるPCI物理アドレスの情報から、それぞれのPCIeデバイス140がいずれのPCIeスロット14に接続されたかを判定する。さらに、予測MCTPデバイスリスト生成部151は、各PCIeデバイス140のベンダID、デバイスID及びファームウェアバージョンを取得したPCIeデバイス情報から取得する。 Next, the predicted MCTP device list generation unit 151 determines to which PCIe slot 14 each PCIe device 140 is connected from the PCI physical address information included in the acquired PCIe device information. Furthermore, the predicted MCTP device list generation unit 151 acquires the vendor ID, device ID, and firmware version of each PCIe device 140 from the acquired PCIe device information.

次に、予測MCTPデバイスリスト生成部151は、MCTPデバイスリストを複製して予測MCTPデバイスリスト203を作成する。次に、予測MCTPデバイスリスト生成部151は、MCTP対応状況データベース153を参照し、各PCIeデバイス140がMCTPに対応しているかを確認し、MCTPデバイスを特定する。そして、予測MCTPデバイスリスト生成部151は、予測MCTPデバイスリスト203を参照してMCTPデバイスが新たに追加されたか否かを判定する。新たに追加されたMCTPデバイスが無い場合、予測MCTPデバイスリスト生成部151は、予測MCTPデバイスリスト203の生成を終了する。BMC15は、MCTPデバイスリストの取得処理を終了する。 Next, the predicted MCTP device list generator 151 creates a predicted MCTP device list 203 by duplicating the MCTP device list. Next, the predicted MCTP device list generator 151 refers to the MCTP support status database 153 to check whether each PCIe device 140 supports MCTP, and identifies the MCTP device. The predicted MCTP device list generator 151 then refers to the predicted MCTP device list 203 to determine whether a new MCTP device has been added. If there is no newly added MCTP device, the predicted MCTP device list generation unit 151 finishes generating the predicted MCTP device list 203 . The BMC 15 ends the MCTP device list acquisition process.

これに対して、新たに追加されたMCTPデバイスがある場合、予測MCTPデバイスリスト生成部151は、新たに追加されたMCTPデバイスの通信用識別子及び物理アドレスの対応情報を予測MCTPデバイスリスト203に登録する。そして、予測MCTPデバイスリスト生成部151は、更新した予測MCTPデバイスリスト203をMCTPデバイスリスト生成部154及び完了時間算出部152へ出力する。 On the other hand, if there is a newly added MCTP device, the predicted MCTP device list generation unit 151 registers correspondence information between the communication identifier and the physical address of the newly added MCTP device in the predicted MCTP device list 203. do. Then, predicted MCTP device list generation section 151 outputs updated predicted MCTP device list 203 to MCTP device list generation section 154 and completion time calculation section 152 .

完了時間算出部152は、情報処理装置1の起動後で且つ今回のMCTPデバイスの追加以前に最も新しく取得された予測MCTPデバイスリスト203を保持する。また、完了時間算出部152は、今回のMCTPデバイスの追加により更新された予測MCTPデバイスリスト203の入力を予測MCTPデバイスリスト生成部151から受ける。次に、完了時間算出部152は、新たに追加されたMCTPデバイスの数を特定する。そして、完了時間算出部152は、新たに追加されたMCTPデバイスの数に予測処理時間を乗算して新たに追加された全てのMCTPデバイスのディスカバリ処理が完了する完了予測時間を算出する。その後、完了時間算出部152は、算出した完了予測時間を処理完了判定部155へ出力する。 The completion time calculation unit 152 holds the predicted MCTP device list 203 most recently acquired after the information processing apparatus 1 was started and before the addition of the MCTP device this time. Further, the completion time calculation unit 152 receives from the expected MCTP device list generation unit 151 input of the expected MCTP device list 203 updated by the addition of the MCTP device this time. Next, the completion time calculator 152 identifies the number of newly added MCTP devices. Completion time calculation section 152 then multiplies the number of newly added MCTP devices by the estimated processing time to calculate the estimated completion time for completing the discovery processing of all the newly added MCTP devices. After that, the completion time calculator 152 outputs the calculated estimated completion time to the process completion determination unit 155 .

処理完了判定部155は、ホットプラグ対応のPCIeスロット14にPCIeデバイス140が新たに接続されると、遅延タイマ157を起動する。その後、処理完了判定部155は、完了予測時間の入力を完了時間算出部152から受ける。そして、処理完了判定部155は、遅延タイマ157の計測時間が完了予測時間に達すると、完了予測時間の経過をMCTPデバイスリスト生成部154に通知する。 The processing completion determination unit 155 activates the delay timer 157 when the PCIe device 140 is newly connected to the hot-pluggable PCIe slot 14 . After that, the process completion determination unit 155 receives input of the estimated completion time from the completion time calculation unit 152 . Then, when the time measured by the delay timer 157 reaches the estimated completion time, the process completion determination unit 155 notifies the MCTP device list generation unit 154 of the elapse of the estimated completion time.

MCTPデバイスリスト生成部154は、新たなMCTPデバイスの追加により更新された予測MCTPデバイスリスト203の入力を予測MCTPデバイスリスト生成部151から受ける。その後、予測MCTPデバイスリスト203は、完了予測時間の経過の通知を処理完了判定部155から受けるまで待機する。 The MCTP device list generator 154 receives from the predicted MCTP device list generator 151 input of the predicted MCTP device list 203 updated by adding a new MCTP device. After that, the predicted MCTP device list 203 waits until it receives notification from the process completion determination unit 155 that the predicted completion time has elapsed.

完了予測時間の経過の通知を処理完了判定部155から受けると、MCTPデバイスリスト生成部154は、MCTPデバイス一覧の取得要求をノードマネージャ120に送信する。その後、MCTPデバイスリスト生成部154は、MCTPデバイス一覧をノードマネージャ120から受信する。次に、MCTPデバイスリスト生成部154は、取得したMCTPデバイス一覧と予測MCTPデバイスリスト203とを比較する。そして、MCTPデバイスリスト生成部154は、新たに追加された全てのMCTPデバイスの情報がMCTPデバイス一覧に存在するか否かを判定する。 Upon receiving notification that the estimated completion time has elapsed from the process completion determination unit 155 , the MCTP device list generation unit 154 transmits an MCTP device list acquisition request to the node manager 120 . After that, the MCTP device list generator 154 receives the MCTP device list from the node manager 120 . Next, the MCTP device list generator 154 compares the acquired MCTP device list with the expected MCTP device list 203 . Then, the MCTP device list generation unit 154 determines whether information on all newly added MCTP devices exists in the MCTP device list.

新たに追加されたMCTPデバイスの全ての情報がMCTPデバイス一覧に存在する場合、MCTPデバイスリスト生成部154は、新たに追加されたMCTPデバイスの通信識別子を予測MCTPデバイスリスト203に登録する。そして、MCTPデバイスリスト生成部154は、登録が完了した予測MCTPデバイスリスト203をMCTPデバイスリストとして取得する。その後、MCTPデバイスリスト生成部154は、MCTPデバイスリストをデバイス管理部156へ出力する。 When all the information of the newly added MCTP device exists in the MCTP device list, the MCTP device list generation unit 154 registers the communication identifier of the newly added MCTP device in the expected MCTP device list 203 . Then, the MCTP device list generation unit 154 acquires the registered predicted MCTP device list 203 as an MCTP device list. After that, MCTP device list generation section 154 outputs the MCTP device list to device management section 156 .

一方、新たに追加されたMCTPデバイスのうちMCTPデバイス一覧に存在しないものがある場合、MCTPデバイスリスト生成部154は、MCTPデバイス一覧の取得要求をノードマネージャ120に送信し、MCTPデバイスリストの取得処理を繰り返す。このとき、リトライ回数がリトライ閾値を超えた、又は、経過時間がリカバリ可能時間を超えた場合、MCTPデバイスリスト生成部154は、MCTPデバイスリストの取得処理にエラーが発生したと判定して処理を終了する。 On the other hand, if there is a newly added MCTP device that does not exist in the MCTP device list, the MCTP device list generation unit 154 transmits an MCTP device list acquisition request to the node manager 120, and performs MCTP device list acquisition processing. repeat. At this time, if the number of retries exceeds the retry threshold or the elapsed time exceeds the recoverable time, the MCTP device list generation unit 154 determines that an error has occurred in the MCTP device list acquisition processing, and executes the processing. finish.

次に、図8を参照して、実施例2に係るBMC15によるMCTPデバイス一覧の取得処理について説明する。図8は、実施例2に係るMCTPデバイス一覧の取得処理を表すシーケンス図である。ここでは、MCTPデバイスとして、MCTPデバイス#1~#3が情報処理装置1の起動時から存在し、起動後にMCTPデバイス#4が追加される場合で説明する。 Next, with reference to FIG. 8, a process of acquiring an MCTP device list by the BMC 15 according to the second embodiment will be described. FIG. 8 is a sequence diagram illustrating an MCTP device list acquisition process according to the second embodiment. Here, a case will be described in which MCTP devices #1 to #3 exist as MCTP devices from the time the information processing apparatus 1 is started, and MCTP device #4 is added after the start.

BIOS110、BMC15、ノードマネージャ120及びMCTPデバイス#1~#3は、起動時にBMC15によるMCTPデバイス一覧の取得処理に関する各種処理を実行する(ステップS301)。 The BIOS 110, BMC 15, node manager 120, and MCTP devices #1 to #3 execute various processes related to the MCTP device list acquisition process by the BMC 15 at startup (step S301).

次に、MCTPデバイス#4がホットプラグ対応のPCIeスロット14に新たに接続されると、OS上で動作するエージェントは、PCIeデバイス情報をBMC15へ出力する(ステップS302)。 Next, when the MCTP device #4 is newly connected to the hot-pluggable PCIe slot 14, the agent operating on the OS outputs PCIe device information to the BMC 15 (step S302).

その後、BMC15は、完了予測時間を算出し、算出した完了予測時間まで待機してディスカバリ処理の完了を待ち合わせる(ステップS303)。 After that, the BMC 15 calculates the predicted completion time and waits until the calculated predicted completion time to wait for the completion of the discovery process (step S303).

BMC15が待機している間に、ノードマネージャ120は、MCTPデバイス#4に対するディスカバリ処理を行い、MCTPデバイス#4に通信識別子を割り振り記憶する(ステップS304)。 While the BMC 15 is waiting, the node manager 120 performs discovery processing for the MCTP device #4 and allocates and stores a communication identifier to the MCTP device #4 (step S304).

その後、BMC15は、MCTPデバイス一覧の取得要求をノードマネージャ120へ送信する(ステップS305)。 After that, the BMC 15 transmits an MCTP device list acquisition request to the node manager 120 (step S305).

ノードマネージャ120は、MCTPデバイス一覧の取得要求を受信して、記憶するMCTPデバイス#1~#4のデバイスアドレスと通信識別子との対応関係を含むMCTPデバイス一覧をBMC15へ送信する(ステップS306)。BMC15は、情報処理装置1に搭載されたMCTPデバイス#1~#4の情報が全ての登録されたMCTPデバイス一覧をノードマネージャ120から受信する。この後、MCTPデバイスリスト生成部154は、ノードマネージャ120に対するMCTPデバイス一覧の取得要求を停止する。 The node manager 120 receives the MCTP device list acquisition request, and transmits to the BMC 15 the MCTP device list including the correspondence between the device addresses and communication identifiers of the stored MCTP devices #1 to #4 (step S306). The BMC 15 receives from the node manager 120 an MCTP device list in which all the information of the MCTP devices #1 to #4 installed in the information processing apparatus 1 are registered. After that, the MCTP device list generation unit 154 stops requesting the node manager 120 to acquire the MCTP device list.

次に、図9を参照して、実施例2に係るMCTPデバイスリストの取得処理の流れについて説明する。図9は、実施例2に係るMCTPデバイスリストの取得処理のフローチャートである。 Next, the flow of the MCTP device list acquisition process according to the second embodiment will be described with reference to FIG. FIG. 9 is a flowchart of an MCTP device list acquisition process according to the second embodiment.

ホットプラグ対応のPCIeスロット14に新たにPCIeデバイス140が接続されると、予測MCTPデバイスリスト生成部151は、追加されたPCIeデバイスのPCIeデバイス情報をBIOS110から取得する(ステップS401)。 When a new PCIe device 140 is connected to the hot-pluggable PCIe slot 14, the predicted MCTP device list generator 151 acquires the PCIe device information of the added PCIe device from the BIOS 110 (step S401).

また、ホットプラグ対応のPCIeスロット14に新たにPCIeデバイス140が接続されると、処理完了判定部155は、遅延タイマ157を起動する(ステップS402)。 Also, when a new PCIe device 140 is connected to the hot-pluggable PCIe slot 14, the processing completion determining unit 155 activates the delay timer 157 (step S402).

次に、予測MCTPデバイスリスト生成部151は、MCTPデバイスリストをコピーして予測MCTPデバイスリスト203を作成する(ステップS403)。 Next, the predicted MCTP device list generation unit 151 copies the MCTP device list to create the predicted MCTP device list 203 (step S403).

次に、予測MCTPデバイスリスト生成部151は、追加されたPCIeデバイス140の中から未選択の物を1つ選択する(ステップS404)。 Next, the predicted MCTP device list generator 151 selects one unselected one from the added PCIe devices 140 (step S404).

次に、予測MCTPデバイスリスト生成部151は、MCTP対応状況データベース153に選択したPCIeデバイス140の情報が存在するか否かを判定する(ステップS405)。選択したPCIeデバイス140の情報が存在しない場合(ステップS405:否定)、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140がMCTPに非対応であると判定して、ステップS409へ進む。 Next, the predicted MCTP device list generation unit 151 determines whether or not information on the selected PCIe device 140 exists in the MCTP support status database 153 (step S405). If information on the selected PCIe device 140 does not exist (step S405: No), the predicted MCTP device list generation unit 151 determines that the selected PCIe device 140 does not support MCTP, and proceeds to step S409.

一方、選択したPCIeデバイス140の情報が存在する場合(ステップS405:肯定)、予測MCTPデバイスリスト生成部151は、ファームウェアバージョンの情報が予測MCTPデバイスリスト203に存在するか否かを判定する(ステップS406)。 On the other hand, if information about the selected PCIe device 140 exists (Yes at step S405), the predicted MCTP device list generation unit 151 determines whether information about the firmware version exists in the predicted MCTP device list 203 (step S406).

ファームウェアバージョンの情報が予測MCTPデバイスリスト203に存在しない場合(ステップS406:否定)、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140がMCTPに対応すると判定する。そして、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140の情報を予測MCTPデバイスリスト203に追加する(ステップS408)。 If the firmware version information does not exist in the predicted MCTP device list 203 (step S406: NO), the predicted MCTP device list generator 151 determines that the selected PCIe device 140 supports MCTP. The predicted MCTP device list generation unit 151 then adds information about the selected PCIe device 140 to the predicted MCTP device list 203 (step S408).

これに対して、ファームウェアバージョンの情報が予測MCTPデバイスリスト203に存在する場合(ステップS406:肯定)、予測MCTPデバイスリスト生成部151は、そのファームウェアバージョンを対応バージョンとする。そして、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140のファームウェアバージョンが対応バージョンより新しいか否かを判定する(ステップS407)。 On the other hand, if the firmware version information exists in the predicted MCTP device list 203 (step S406: YES), the predicted MCTP device list generator 151 regards that firmware version as the corresponding version. Then, the predicted MCTP device list generation unit 151 determines whether or not the firmware version of the selected PCIe device 140 is newer than the corresponding version (step S407).

選択したPCIeデバイス140のファームウェアバージョンが対応バージョンより古い場合(ステップS407:否定)、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140がMCTPに非対応であると判定して、ステップS409へ進む。 If the firmware version of the selected PCIe device 140 is older than the supported version (step S407: No), the predicted MCTP device list generation unit 151 determines that the selected PCIe device 140 does not support MCTP, and proceeds to step S409. move on.

これに対して、選択したPCeIデバイス140のファームウェアバージョンが対応バージョンより新しい場合(ステップS407:肯定)、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140がMCTPに対応していると判定する。そして、予測MCTPデバイスリスト生成部151は、選択したPCIeデバイス140の情報を予測MCTPデバイスリスト203に追加する(ステップS408)。 On the other hand, if the firmware version of the selected PCeI device 140 is newer than the supported version (step S407: Yes), the predicted MCTP device list generator 151 determines that the selected PCIe device 140 supports MCTP. . The predicted MCTP device list generation unit 151 then adds information about the selected PCIe device 140 to the predicted MCTP device list 203 (step S408).

その後、予測MCTPデバイスリスト生成部151は、情報処理装置1に搭載された全てのPCIeデバイス140についてMCTPの対応状況の判定が完了したか否かを判定する(ステップS409)。未判定の追加したPCIeデバイス140が存在する場合(ステップS409:否定)、予測MCTPデバイスリスト生成部151は、ステップS404へ処理を戻す。 After that, the predicted MCTP device list generation unit 151 determines whether or not the determination of the MCTP support status has been completed for all the PCIe devices 140 mounted on the information processing apparatus 1 (step S409). If there is an undetermined added PCIe device 140 (step S409: NO), the predicted MCTP device list generation unit 151 returns the process to step S404.

これに対して、追加したPCIeデバイス140の全ての判定が完了した場合(ステップS409:肯定)、予測MCTPデバイスリスト生成部151は、新たにMCTPデバイスが追加されて予測MCTPデバイスリスト203が更新されたか否かを判定する(ステップ410)。予測MCTPデバイスリスト203が更新されていない場合(ステップS410:否定)、BMC15は、MCTPデバイスリストの取得処理を終了する。 On the other hand, when the determination of all the added PCIe devices 140 is completed (step S409: YES), the predicted MCTP device list generation unit 151 updates the predicted MCTP device list 203 by adding a new MCTP device. (step 410). If the predicted MCTP device list 203 has not been updated (step S410: NO), the BMC 15 terminates the MCTP device list acquisition process.

これに対して、予測MCTPデバイスリスト203が更新された場合(ステップS410:肯定)、予測MCTPデバイスリスト生成部151は、予測MCTPデバイスリスト203をMCTPデバイスリスト生成部154及び完了時間算出部152へ出力する。完了時間算出部152は、保持する予測MCTPデバイスリスト203と更新された予測MCTPデバイスリスト203を比較して追加されたMCTPデバイスの数を求める。そして、完了時間算出部152は、追加されたMCTPデバイスの数を用いて追加されたMCTPデバイスに対するディスカバリ処理の完了予測時間を算出する(ステップS411)。その後、完了時間算出部152は、完了予測時間を処理完了判定部155へ出力する。 On the other hand, if the predicted MCTP device list 203 has been updated (Yes at step S410), the predicted MCTP device list generator 151 sends the predicted MCTP device list 203 to the MCTP device list generator 154 and the completion time calculator 152. Output. The completion time calculation unit 152 compares the retained predictive MCTP device list 203 with the updated predictive MCTP device list 203 to obtain the number of added MCTP devices. Then, the completion time calculation unit 152 calculates the expected completion time of the discovery process for the added MCTP device using the number of added MCTP devices (step S411). Thereafter, the completion time calculator 152 outputs the predicted completion time to the process completion determination unit 155 .

処理完了判定部155は、完了予測時間の入力を完了時間算出部152から受ける。そして、処理完了判定部155は、遅延タイマ157が完了予測時間を超過したか否かを判定する(ステップS412)。完了予測時間を超過していない場合(ステップS412:否定)、完了時間算出部152は、遅延タイマ157が完了予測時間を超過するまで待機する。また、MCTPデバイスリスト生成部154は、予測MCTPデバイスリスト203の入力を予測MCTPデバイスリスト生成部151から受ける。その後、MCTPデバイスリスト生成部154は、完了予測時間の経過の通知を受けるまで待機する。 The processing completion determination unit 155 receives input of the estimated completion time from the completion time calculation unit 152 . Then, the process completion determination unit 155 determines whether or not the delay timer 157 has exceeded the estimated completion time (step S412). If the predicted completion time has not been exceeded (step S412: No), the completion time calculator 152 waits until the delay timer 157 exceeds the predicted completion time. Also, the MCTP device list generation unit 154 receives input of the predicted MCTP device list 203 from the predicted MCTP device list generation unit 151 . After that, the MCTP device list generator 154 waits until it receives notification that the estimated completion time has elapsed.

完了予測時間を超過した場合(ステップS412:肯定)、完了時間算出部152は、完了予測時間の経過をMCTPデバイスリスト生成部154へ通知する。完了予測時間の通知を処理完了判定部155から受けると、MCTPデバイスリスト生成部154は、MCTPデバイス一覧をノードマネージャ120に要求する(ステップS413)。 If the estimated completion time has been exceeded (step S412: affirmative), the completion time calculator 152 notifies the MCTP device list generator 154 of the elapse of the estimated completion time. Upon receiving the notification of the estimated completion time from the process completion determination unit 155, the MCTP device list generation unit 154 requests the MCTP device list from the node manager 120 (step S413).

ノードマネージャ120は、MCTPデバイス一覧の取得要求を受けて、その時点で保持するMCTPデバイスのデバイスアドレス及び通信識別情報を含むMCTPデバイス一覧をMCTPデバイスリスト生成部154へ送信する。MCTPデバイスリスト生成部154は、予測MCTPデバイスリスト203における追加されたMCTPデバイスが全てMCTPデバイス一覧に存在するか否を判定する(ステップS414)。 Upon receiving the MCTP device list acquisition request, the node manager 120 transmits the MCTP device list including the device addresses and communication identification information of the MCTP devices held at that time to the MCTP device list generator 154 . The MCTP device list generation unit 154 determines whether all the added MCTP devices in the predicted MCTP device list 203 are present in the MCTP device list (step S414).

追加されたMCTPデバイスが全てMCTPデバイス一覧に存在する場合(ステップS414:肯定)、MCTPデバイスリスト生成部154は、ディスカバリ処理が完了したと判定する。そして、MCTPデバイスリスト生成部154は、予測MCTPデバイスリスト203に追加されたMCTPデバイスの通信識別情報を登録してMCTPデバイスリストを生成する(ステップS415)。この後、MCTPデバイスリスト生成部154は、ノードマネージャ120に対するMCTPデバイス一覧の取得要求を停止する。 If all the added MCTP devices are present in the MCTP device list (step S414: Yes), the MCTP device list generator 154 determines that the discovery process has been completed. Then, the MCTP device list generation unit 154 generates an MCTP device list by registering the communication identification information of the MCTP device added to the predicted MCTP device list 203 (step S415). After that, the MCTP device list generation unit 154 stops requesting the node manager 120 to acquire the MCTP device list.

これに対して、MCTPデバイス一覧に存在しない追加されたMCTPデバイスがある場合(ステップS414:否定)、MCTPデバイスリスト生成部154は、リトライ回数及び最初のMCTPデバイス一覧の取得からの経過時間を取得する。そして、MCTPデバイスリスト生成部154は、リトライ回数がリトライ閾値を超過したか、又は、経過時間がリカバリ可能時間を超過したかを判定する(ステップS416)。リトライ回数がリトライ閾値を超過しておらず、且つ、経過時間がリカバリ可能時間を超過していない場合(ステップS416:否定)、MCTPデバイスリスト生成部154は、処理をステップS413へ戻す。 On the other hand, if there is an added MCTP device that does not exist in the MCTP device list (step S414: NO), the MCTP device list generator 154 acquires the number of retries and the elapsed time since the initial acquisition of the MCTP device list. do. The MCTP device list generator 154 then determines whether the number of retries exceeds the retry threshold or the elapsed time exceeds the recoverable time (step S416). If the retry count does not exceed the retry threshold and the elapsed time does not exceed the recoverable time (step S416: No), the MCTP device list generator 154 returns the process to step S413.

これに対して、リトライ回数がリトライ閾値を超過しした、又は、経過時間がリカバリ可能時間を超過した場合(ステップS416:肯定)、MCTPデバイスリスト生成部154は、MCTPデバイスリストの取得エラーと判定する(ステップS417)。そして、MCTPデバイスリスト生成部154は、MCTPデバイスリストの取得処理を終了する。 On the other hand, if the number of retries exceeds the retry threshold or the elapsed time exceeds the recoverable time (step S416: Yes), the MCTP device list generation unit 154 determines that an MCTP device list acquisition error has occurred. (step S417). Then, the MCTP device list generation unit 154 ends the MCTP device list acquisition process.

ここで、本実施例では、ホットプラグ対応のPCIeスロット4を有する情報処理装置1について説明したが、ホットプラグ対応のPCIeスロット4を有さない情報処理装置1の場合、PCIeデバイス140の構成は基本的に変化しない。そのため、ホットプラグ対応のPCIeスロット4を有さない情報処理装置1の場合、BMC15は、起動時にMCTPデバイスリストを取得が完了していれば、その後MCTPデバイスリストを更新しなくてよい。 Although the information processing apparatus 1 having the hot-pluggable PCIe slot 4 has been described in this embodiment, the configuration of the PCIe device 140 is basically unchanged. Therefore, in the case of the information processing apparatus 1 that does not have the hot-pluggable PCIe slot 4, the BMC 15 does not need to update the MCTP device list afterward if the acquisition of the MCTP device list is completed at the time of startup.

以上に説明したように、本実施例に係る情報処理装置のBMCは、ホットプラグ対応のPCIeスロットに新たにPCIeデバイスが追加された場合に、OS上で動作するエージェントからPCIeデバイス情報を取得する。そして、BMCは、取得したPCIeデバイス情報を基に、ノードマネージャから通信識別情報が通知されるMCTPデバイスを予測し、新たに追加された全てのMCTPデバイスに対するディスカバリ処理が完了したか否かを判定する。ディスカバリ処理の完了を確認した場合、BMCは、ノードマネージャからMCTPデバイスに関する情報をそれ以上取得しなくても良いのでMCTPデバイスの情報の取得要求によるポーリングを停止することができる。したがって、ホットプラグに新たにMCTPデバイスを加えたMCTPデバイスリストの更新処理においても、PCIeバスにおける通信を低減させることで、情報処理装置の処理性能を向上させることができる。 As described above, the BMC of the information processing apparatus according to the present embodiment acquires PCIe device information from the agent operating on the OS when a new PCIe device is added to the hot-pluggable PCIe slot. . Then, based on the obtained PCIe device information, the BMC predicts the MCTP devices whose communication identification information is notified from the node manager, and determines whether or not discovery processing for all newly added MCTP devices has been completed. do. When confirming the completion of the discovery process, the BMC can stop polling for requests to obtain information about the MCTP devices since it does not need to obtain any more information about the MCTP devices from the node manager. Therefore, even in the update process of the MCTP device list in which a new MCTP device is added to the hot plug, the processing performance of the information processing apparatus can be improved by reducing the communication on the PCIe bus.

(ハードウェア構成)
次に、図10を参照して、各実施例に係る情報処理装置1のハードウェア構成について説明する。図10は、情報処理装置のハードウェア構成図である。
(Hardware configuration)
Next, a hardware configuration of the information processing apparatus 1 according to each embodiment will be described with reference to FIG. FIG. 10 is a hardware configuration diagram of an information processing apparatus.

情報処理装置1は、図10に示すように、CPU11,PCH12、BMC15、メモリ16、NIC(Network Interface Card)161及びSSD(Solid State Drive)162を有する。CPU11とメモリ16とは、チャネル22で接続される。また、CPU11は、PCIeバス21を介してPCH12、BMC15、NIC161及びSSD162と接続される。 The information processing apparatus 1 has a CPU 11, a PCH 12, a BMC 15, a memory 16, a NIC (Network Interface Card) 161 and an SSD (Solid State Drive) 162, as shown in FIG. The CPU 11 and memory 16 are connected via a channel 22 . The CPU 11 is also connected to the PCH 12 , BMC 15 , NIC 161 and SSD 162 via the PCIe bus 21 .

NIC161は、管理サーバ2などの外部の装置と通信を行うためのインタフェースである。SSD162は、補助記憶装置である。NIC161及びSSD162は、実際には、図1に示してPCIeスロット14に接続されることで、PCIeバス21に接続する。また、SSD162には、BIOS110やOS(Operating System)などの機能を実現する各種プログラムが格納される。 The NIC 161 is an interface for communicating with external devices such as the management server 2 . The SSD 162 is an auxiliary storage device. The NIC 161 and SSD 162 are actually connected to the PCIe bus 21 by being connected to the PCIe slot 14 shown in FIG. Also, the SSD 162 stores various programs that implement functions such as the BIOS 110 and an OS (Operating System).

CPU11は、SSD162に格納された各種プログラムをメモリ16に展開して実行することで、BIOS110やOSの機能を実現する。 The CPU 11 develops various programs stored in the SSD 162 in the memory 16 and executes them, thereby realizing functions of the BIOS 110 and the OS.

PCH12は、内部にプロセッサ及びメモリを有する。そして、PCH12の内部のメモリにはノードマネージャ120を動作させるプログラムが格納される。PCH12の内部のプロセッサは、内部のメモリに格納されたノードマネージャ120を動作させるプログラムを実行することで、ノードマネージャ120の機能を実現する。 The PCH 12 has a processor and memory inside. A program for operating the node manager 120 is stored in the internal memory of the PCH 12 . The processor inside the PCH 12 implements the functions of the node manager 120 by executing a program that is stored in the internal memory and causes the node manager 120 to operate.

BMC15は、内部にプロセッサ及びメモリを有する。そして、BMC15の内部のメモリには、図1に例示した予測MCTPデバイスリスト生成部151、完了時間算出部152、MCTPデバイスリスト生成部154、処理完了判定部155、デバイス管理部156の機能を実現するプログラムを含む各種プログラムが格納される。また、BMC15の内部メモリは、図1に例示したMCTP対応状況データベース153の機能を実現する。BMC15の内部のプロセッサは、内部のメモリに格納された各種プログラムを実行して、予測MCTPデバイスリスト生成部151、完了時間算出部152、MCTPデバイスリスト生成部154、処理完了判定部155、デバイス管理部156の機能を実現する。このように、予測MCTPデバイスリスト生成部151、完了時間算出部152、MCTPデバイスリスト生成部154、処理完了判定部155、デバイス管理部156の機能を実現するプログラムは、記憶媒体に格納され実行されることで、その機能が実現される。より詳しくは、予測デバイスリスト生成部151によるBIOS110からデバイス情報を受け取るプロセスは、BMC15が実行するIPMI管理プロセスである。また、予測MCTPデバイスリスト生成部151、完了時間算出部152、MCTPデバイスリスト生成部154及び処理完了判定部155が行うMCTPの管理のプロセスは、MCTPエージェントプロセスである。 The BMC 15 has a processor and memory inside. The functions of the predictive MCTP device list generation unit 151, the completion time calculation unit 152, the MCTP device list generation unit 154, the processing completion determination unit 155, and the device management unit 156 illustrated in FIG. 1 are realized in the memory inside the BMC 15. Various programs are stored, including programs that Also, the internal memory of the BMC 15 implements the functions of the MCTP compatibility status database 153 illustrated in FIG. A processor inside the BMC 15 executes various programs stored in an internal memory to generate a predicted MCTP device list generation unit 151, a completion time calculation unit 152, an MCTP device list generation unit 154, a process completion determination unit 155, and a device management unit. The function of the part 156 is realized. In this way, the programs that implement the functions of the predicted MCTP device list generation unit 151, the completion time calculation unit 152, the MCTP device list generation unit 154, the processing completion determination unit 155, and the device management unit 156 are stored in the storage medium and executed. By doing so, the function is realized. More specifically, the process of receiving device information from the BIOS 110 by the predicted device list generator 151 is the IPMI management process executed by the BMC 15 . The MCTP management process performed by the predictive MCTP device list generation unit 151, the completion time calculation unit 152, the MCTP device list generation unit 154, and the processing completion determination unit 155 is an MCTP agent process.

1 情報処理装置
2 管理サーバ
11 CPU
12 PCH
14 PCIeスロット
15 BMC
140 PCIeデバイス
151 予測MCTPデバイスリスト生成部
152 完了時間算出部
153 MCTP対応状況データベース
154 MCTPデバイスリスト生成部
155 処理完了判定部
156 デバイス管理部
157 遅延タイマ
203 予測MCTPデバイスリスト
1 information processing device 2 management server 11 CPU
12PCH
14 PCIe slot 15 BMC
140 PCIe device 151 Predicted MCTP device list generation unit 152 Completion time calculation unit 153 MCTP support status database 154 MCTP device list generation unit 155 Processing completion determination unit 156 Device management unit 157 Delay timer 203 Predicted MCTP device list

Claims (6)

1つ又は複数の搭載デバイスの情報をBIOS(Basic Input Output System)から取得し、前記搭載デバイスの中からMCTP(Management Component Transport Protocol)を用いて通信を行う通信機能を有する1つ又は複数のデバイスを特定する特定部と、
前記搭載デバイスの中からMCTPを用いて通信を行う通信機能を有する1つ又は複数のデバイスを検出し検出したデバイスに対する前記MCTPを用いた通信に用いる通信情報の割り当てを順次実行する割当部と、
前記特定部により特定された前記デバイスのリストに含まれる前記デバイスの全てについて割り当てられた前記通信情報を取得するまで前記割当部から前記通信情報の取得を繰り返す取得部と
を備えたことを特徴とする情報処理装置。
One or more devices having a communication function that acquires information on one or more on-board devices from the BIOS (Basic Input Output System) and communicates from among the on-board devices using MCTP (Management Component Transport Protocol) an identification part that identifies the
an allocation unit that detects one or more devices having a communication function for communicating using MCTP from among the mounted devices, and sequentially allocates communication information used for communication using the MCTP to the detected devices; ,
an acquiring unit that repeatedly acquires the communication information from the assigning unit until the communication information assigned to all of the devices included in the device list specified by the specifying unit is acquired. information processing equipment.
1つ又は複数の搭載デバイスの情報をBIOSから取得し、前記搭載デバイスの中から所定の通信機能を有する1つ又は複数のデバイスを特定する特定部と、
前記搭載デバイスの中から所定の通信機能を有する1つ又は複数のデバイスを検出し検出したデバイスに対する通信情報の割り当てを順次実行する割当部と、
前記特定部により特定された前記デバイスの全てに対する前記割当部による前記通信情報の割り当てが終了するまでにかかる割当時間を算出する算出部と、
前記算出部により算出された前記割当時間が経過したか否かを判定する判定部と、
前記判定部により前記割当時間が経過したと判定された場合に、前記割当部からの前記通信情報の取得を開始して、前記特定部により特定された前記デバイスのリストに含まれる前記デバイスの全てについて割り当てられた前記通信情報を取得するまで前記通信情報の取得を繰り返す取得部と
を備えたことを特徴とする情報処理装置。
an identification unit that acquires information on one or more mounted devices from the BIOS and identifies one or more devices having a predetermined communication function from among the mounted devices;
an allocation unit that detects one or more devices having a predetermined communication function from among the mounted devices and sequentially allocates communication information to the detected devices;
a calculation unit that calculates an allocation time required until allocation of the communication information by the allocation unit to all of the devices identified by the identification unit is completed;
a determination unit that determines whether the allocation time calculated by the calculation unit has elapsed;
When the determination unit determines that the allocation time has passed, acquisition of the communication information from the allocation unit is started, and all of the devices included in the list of the devices specified by the specification unit. and an acquisition unit that repeats acquisition of the communication information until the communication information assigned to is acquired.
前記特定部は、前記搭載デバイスの追加時に前記搭載デバイスの情報をOS(Operating System)上で動作する前記搭載デバイスの管理アプリケーションであるエージェントから取得することを特徴とする請求項1又は2に記載の情報処理装置。 3. The specifying unit according to claim 1 , wherein when the mounted device is added, the identification unit acquires information about the mounted device from an agent, which is a management application for the mounted device and runs on an OS (Operating System). information processing equipment. 前記取得部により取得された前記通信情報を用いて前記特定部により特定された前記デバイスを制御する制御部をさらに備えたことを特徴とする請求項1~3のいずれか一つに記載の情報処理装置。 4. The information according to any one of claims 1 to 3, further comprising a control unit that controls the device specified by the specifying unit using the communication information acquired by the acquiring unit. processing equipment. 管理装置に、1つ又は複数の搭載デバイスの情報をBIOSから取得させ、前記搭載デバイスの中からMCTPを用いて通信を行う通信機能を有する1つ又は複数のデバイスを特定させ、
通信情報管理装置に、前記搭載デバイスの中からMCTPを用いて通信を行う通信機能を有する1つ又は複数のデバイスを検出させ検出されたデバイスに対する前記MCTPを用いた通信に用いる通信情報の割り当てを順次実行させ、
前記管理装置に、特定された前記デバイスのリストに含まれる前記デバイスの全てについて割り当てられた前記通信情報を取得するまで前記通信情報管理装置から前記通信情報の取得を繰り返させる
ことを特徴とする情報処理方法。
cause a management device to acquire information on one or more mounted devices from the BIOS, and identify one or more devices having a communication function for communicating using MCTP from among the mounted devices;
causing the communication information management apparatus to detect one or more devices having a communication function for communicating using MCTP from among the installed devices, and assigning communication information used for communication using the MCTP to the detected devices are executed sequentially,
causing the management device to repeatedly acquire the communication information from the communication information management device until the communication information assigned to all of the devices included in the specified device list is acquired. Processing method.
管理プロセスに、1つ又は複数の搭載デバイスの情報をBIOSから取得させ、前記搭載デバイスの中からMCTPを用いて通信を行う通信機能を有する1つ又は複数のデバイスを特定させ、
通信情報管理プロセスに、前記搭載デバイスの中からMCTPを用いて通信を行う通信機能を有する1つ又は複数のデバイスを検出させ検出されたデバイスに対する前記MCTPを用いた通信に用いる通信情報の割り当てを順次実行させ、
前記管理プロセスに、特定された前記デバイスのリストに含まれる前記デバイスの全てについて割り当てられた前記通信情報を取得するまで前記通信情報管理プロセスから前記通信情報の取得を繰り返させる
処理をコンピュータに実行させることを特徴とする情報処理プログラム。
cause a management process to acquire information of one or more on-board devices from the BIOS and specify one or more devices having a communication function to communicate using MCTP from among the on-board devices;
causing the communication information management process to detect one or more devices having a communication function for communicating using MCTP from among the installed devices, and assigning communication information used for communication using the MCTP to the detected devices are executed sequentially,
causing a computer to execute a process of causing the management process to repeatedly acquire the communication information from the communication information management process until the communication information assigned to all of the devices included in the identified device list is acquired; An information processing program characterized by:
JP2018156828A 2018-08-24 2018-08-24 Information processing device, information processing method and information processing program Active JP7205110B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018156828A JP7205110B2 (en) 2018-08-24 2018-08-24 Information processing device, information processing method and information processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018156828A JP7205110B2 (en) 2018-08-24 2018-08-24 Information processing device, information processing method and information processing program

Publications (2)

Publication Number Publication Date
JP2020030706A JP2020030706A (en) 2020-02-27
JP7205110B2 true JP7205110B2 (en) 2023-01-17

Family

ID=69622593

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018156828A Active JP7205110B2 (en) 2018-08-24 2018-08-24 Information processing device, information processing method and information processing program

Country Status (1)

Country Link
JP (1) JP7205110B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120047309A1 (en) 2010-08-18 2012-02-23 Mahesh Natu Method, apparatus, and system for manageability and secure routing and endpoint access
WO2014076842A1 (en) 2012-11-19 2014-05-22 富士通株式会社 Information processing device, program, and log output method
JP2017016514A (en) 2015-07-03 2017-01-19 Necプラットフォームズ株式会社 Information processing system, device information acquisition method, and program therefor
JP2018074565A (en) 2016-11-02 2018-05-10 廣達電脳股▲ふん▼有限公司 Server data port for learning by data switch

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120047309A1 (en) 2010-08-18 2012-02-23 Mahesh Natu Method, apparatus, and system for manageability and secure routing and endpoint access
WO2014076842A1 (en) 2012-11-19 2014-05-22 富士通株式会社 Information processing device, program, and log output method
JP2017016514A (en) 2015-07-03 2017-01-19 Necプラットフォームズ株式会社 Information processing system, device information acquisition method, and program therefor
JP2018074565A (en) 2016-11-02 2018-05-10 廣達電脳股▲ふん▼有限公司 Server data port for learning by data switch

Also Published As

Publication number Publication date
JP2020030706A (en) 2020-02-27

Similar Documents

Publication Publication Date Title
US7457900B2 (en) Method for discovering and partitioning PCI devices
US10353728B2 (en) Method, system and device for managing virtual machine software in cloud environment
US7941803B2 (en) Controlling an operational mode for a logical partition on a computing system
US8726276B2 (en) Resetting a virtual function that is hosted by an input/output adapter
CN107659677B (en) IP address automatic configuration device and method based on BMC
CN101989212A (en) Method and device for providing virtual machine management program for starting blade server
JP2006507561A (en) Method and apparatus for dynamically allocating and deallocating processors in a logically partitioned data processing system
JP2006040285A (en) Communication among partitioned devices
JP2007133901A (en) Mechanism to safely perform system firmware update in logically partitioned (lpar) machine
JP2006072405A (en) Boot disk management method
US20110209148A1 (en) Information processing device, virtual machine connection method, program, and recording medium
CN114168196A (en) Register control method, system, device, computer equipment and storage medium
CN111782283A (en) Automatic management method, device and medium for bare metal server
JP2014130597A (en) Virtual machine management system and management method therefor
JP7205110B2 (en) Information processing device, information processing method and information processing program
JP5876149B2 (en) Computer system, method, server computer, management station and use for starting a server computer
JP5686204B2 (en) Server apparatus, information processing system, server apparatus address management method, and server apparatus address management program
US9298663B2 (en) Information processing apparatus and information processing method
CN112073555A (en) Method for configuring IP address, electronic device and computer readable storage medium
CN110633086B (en) Blade server
JP6638317B2 (en) Information processing system, information processing apparatus, information processing apparatus control method, and information processing apparatus control program
JP4982454B2 (en) Information processing method and information processing system
JP2016025656A (en) Ip address out-of-band setting
CN115454896A (en) SMBUS-based SSD MCTP control message verification method and device, computer equipment and storage medium
KR20080038828A (en) System and method for upgrading firmware automatically

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210513

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220301

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220425

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220927

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221122

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221212

R150 Certificate of patent or registration of utility model

Ref document number: 7205110

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150