US-12625966-B2 - Information processing device, network device, and method for updating network device firmware
Abstract
An information processing device includes a controller and an interface device. The controller stores a compressed file including new firmware for the interface device, and sends at least part of compressed data in the compressed file to the interface device. The interface device performs a signature verification process and a decompressing process on the received compressed data in parallel.
Inventors
- Takashi Noguchi
Assignees
- HITACHI, LTD.
Dates
- Publication Date
- 20260512
- Application Date
- 20230919
Claims (7)
- 1 . An information processing device, comprising: a controller; and an interface device, wherein the controller: stores a compressed file including new firmware for the interface device; and sends at least part of the compressed data in the compressed file to the interface device, wherein the interface device performs a signature verification process and a decompressing process on the received compressed data in parallel, wherein the controller sends a plurality of blocks constituting the compressed file sequentially, and wherein the interface device performs the signature verification process and a decompressing process on each block in parallel.
- 2 . The information processing device according to claim 1 , wherein the interface device includes a non-volatile memory, wherein the non-volatile memory includes a first region to store currently active firmware, and a second region that differs from the first region, and wherein the interface device: writes data obtained by decompressing the compressed data to the second region; and switches from the first region to the second region so that firmware for use is read from the second region, after the firmware for update has been entirely written to the second regions.
- 3 . The information processing device according to claim 1 , wherein the interface device: includes a non-volatile memory and a volatile memory; stores a block received from the controller in the volatile memory; and performs the signature verification process and the decompressing process in parallel on the block stored in the volatile memory, and stores the decompressed block in the non-volatile memory.
- 4 . The information processing device according to claim 1 , wherein the controller determines whether it is necessary to update firmware of the interface device, based on a version of the current firmware of the interface device as compared to a version of the new firmware, and settings of an update forced implementation mode.
- 5 . The information processing device according to claim 1 , further comprising a plurality of interface devices, wherein the controller transmits a common block to the plurality of interface devices in parallel.
- 6 . A network device, comprising: a processor; a first memory; and a second memory, wherein the processor: receives, from another device, compressed data including at least part of a new firmware for the network device and stores the compressed data in the first memory; and performs a signature verification process and a decompressing process on the compressed data in parallel, and stores decompressed data in the second memory, wherein the processor receives partial blocks of compressed file of the new firmware in sequence, and performs a signature verification process and a decompressing process on each partial block in parallel.
- 7 . A method for updating network device firmware, comprising the steps of: receiving, by a network device, from another device, compressed data including at least part of a new firmware for the network device and stores the compressed data in the first memory; and performing, by the network device, a signature verification process and a decompressing process on the compressed data in parallel, and stores decompressed data in the second memory, wherein the network device receives partial blocks of compressed file of the new firmware in sequence, and performs a signature verification process and a decompressing process on each partial block in parallel.
Description
CLAIM OF PRIORITY The present application claims priority from Japanese patent application JP 2023-053868 filed on Mar. 29, 2023, the content of which is hereby incorporated by reference into this application. BACKGROUND ART The present invention relates to an information processing device, a network device, and a method for updating network device firmware. Data storage is a basic function of a computer system. Many computer systems handling a large amount of data uses a storage system to store the data. The storage system stores data in a storage medium such as HDD (hard disk drive) or SSD (solid state drive), and performs data writing/reading operations in accordance with a command from outside. The background art of the present disclosure is WO2020/122024. WO2020/122024 discloses a technology that can “reduce an effect of rewriting circuit information of a network interface card (NIC) including a programmable logic circuit on system availability. The NIC includes a programmable logic circuit for processing an inputted packet according to recorded circuit information; a pair of switches respectively provided at an input terminal and an output terminal of the programmable logic circuit, the switches being able to switch between a first mode sending a packet to the programmable logic circuit and a second mode bypassing the programmable logic circuit; a computer-side interface that sends the packet to a computer that can execute an application program capable of performing packet processing on behalf of the programmable logic circuit; and a switch control circuit that switches the pair of switches to the second mode when rewriting the circuit information of the programmable logic circuit.” This technology requires switches and a control circuit for rewriting a program while continuously providing a service. SUMMARY OF THE INVENTION As the performance of an interface device (or a network device) of a storage system has improved, for example, the size of the software executed by the interface device has also been increasing. In some cases, a smart NIC provided with a processor that can perform high-load processes runs software for ASIC, in addition to OS and applications that work on the OS. When the size of the software in the interface device is large, a large amount of resource may be required to update the software. In addition, in a storage system that is required to keep running all the time, it is necessary to update the software of the interface device without stopping IO, and thus, allocating a large amount of memory area to the update is not feasible. Therefore, software update for the interface device needs to be performed properly with the limited capacity. An aspect of this disclosure is an information processing device, including: a controller; and an interface device, wherein the controller: stores a compressed file including new firmware for the interface device; and sends at least part of compressed data in the compressed file to the interface device, and wherein the interface device performs a signature verification process and a decompressing process on the received compressed data in parallel. An aspect of this disclosure is a network device, including: a processor; a first memory; and a second memory, wherein the processor: receives, from another device, compressed data including at least part of a new firmware for the network device and stores the data in the first memory; and performs a signature verification process and a decompressing process on the compressed data in parallel, and stores decompressed data in the second memory. According to one embodiment of this disclosure, it is possible to effectively perform software update for a network device. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 shows a configuration example of a storage controller and a smart NIC according to one embodiment of the present specification. FIG. 2 is an operation concept diagram schematically illustrating how smart NIC firmware is updated according to one embodiment of the present specification. FIG. 3 illustrates an example of data included in the smart NIC firmware. FIG. 4 is a flowchart of the entire process of updating the smart NIC firmware according to one embodiment of the present specification. FIG. 5 shows a configuration example of a CHB FW update state control table stored in the storage controller. FIG. 6 shows a configuration example of a CHB control table stored in the storage controller. FIG. 7 illustrates triggers for updating the CHB firmware. FIG. 8 illustrates criteria for updating CHB firmware. FIG. 9 shows a configuration example of a CHB FW update state control table. FIG. 10 shows a configuration example of a FW version control table. FIG. 11 is a sequence diagram illustrating the entire process of updating the smart NIC firmware according to one embodiment of the present specification. FIG. 12 is a concept diagram illustrating the firmware updating process by the smart NIC. FIG. 13 is a