Management device, method, storage enclosure, and storage access system
Patent Information
- Application Number
- CN202611150396.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-31
- Publication Date
- 2026-10-09
- Estimated Expiration
- 2046-07-31
AI Technical Summary
[0003]本申请提供了管理装置、方法、存储机箱、存储访问系统、计算机可读存储介质及程序产品,以至少解决相关技术中管理信息访问路径与业务数据访问路径相互独立需要分别建立不同通信连接和访问接口导致系统复杂度高和运维成本高的问题
[0011] Through this application, since the first processor creates the first logical device, giving it identifiable device attributes, the first interface card can simultaneously acquire the first identification information of the first logical device and the second identification information of the device to be managed. The first interface card encapsulates both identification information into first target data through protocol conversion and sends it outward via the same first network interface. Based on this first target data, the external host can establish a communication connection with the first processor through the first logical device to manage the status of the device to be managed, and can also establish a communication connection with the device to be managed to access services. This allows management information access and service data access to share the first network interface and the first interface card, eliminating the need to set up a separate communication path and access interface for management information access. Therefore, it solves the technical problem in related technologies where the access paths for management information and service data are independent and require separate communication connections and access interfaces, achieving the technical effect of reducing system complexity and operation and maintenance costs.
Smart Images

Figure CN122691528B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of server technology, and more particularly to management devices, methods, storage chassis, and storage access systems. Background Technology
[0002] In external storage systems, storage devices are configured independently of the external host. The external host needs to access the storage devices for business data and management information via the network. In related technologies, the access paths for management information and business data are independent of each other, requiring the establishment of separate communication connections and access interfaces, which increases system complexity and operational costs. Summary of the Invention
[0003] This application provides management devices, methods, storage chassis, storage access systems, computer-readable storage media, and program products to at least solve the problem in related technologies where management information access paths and business data access paths are independent, requiring the establishment of different communication connections and access interfaces, resulting in high system complexity and high operation and maintenance costs.
[0004] This application provides a management device, comprising: a first processor, communicatively connected to a device to be managed, for creating a first logical device for the first processor; the first logical device is used to enable the first processor to have identifiable device attributes; a first interface card, communicatively connected to the first processor, for acquiring first identification information of the first logical device and second identification information of the device to be managed, and encapsulating the first identification information and the second identification information into accessible first target data through protocol conversion; the first target data is used for an external host to establish a communication connection with the first processor and with the device to be managed through the first logical device; and a first network interface, communicatively connected to the first interface card, for sending the first target data transmitted via the first interface card, so that the external host can perform business access and status management of the device to be managed through the first processor.
[0005] This application provides a storage chassis, including: a plurality of storage devices; and the aforementioned management device, wherein a processor in the management device is communicatively connected to the plurality of storage devices.
[0006] This application provides a storage access system, including: the aforementioned storage chassis, used to send first target data; and an external host, used to receive the first target data, wherein the first target data is used to enable the external host to establish a communication connection with the storage chassis.
[0007] This application provides a device management method applied to the aforementioned management device. The device management method includes: creating a first logical device for a first processor; the first logical device enabling the first processor to possess identifiable device attributes; acquiring first identification information of the first logical device and second identification information of the device to be managed, and encapsulating the first identification information and the second identification information into accessible first target data through protocol conversion; the first target data being used to enable an external host to establish a communication connection with the first processor and with the device to be managed through the first logical device; and sending the first target data transmitted via a first interface card, so that the external host can perform business access and status management of the device to be managed through the first processor.
[0008] This application also provides an electronic device, including: a memory for storing a computer program; and a processor for implementing the steps of any of the above-described device management methods when executing the computer program.
[0009] This application also provides a computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements the steps of any of the above-described device management methods.
[0010] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of any of the above-described device management methods.
[0011] Through this application, since the first processor creates the first logical device, giving it identifiable device attributes, the first interface card can simultaneously acquire the first identification information of the first logical device and the second identification information of the device to be managed. The first interface card encapsulates both identification information into first target data through protocol conversion and sends it outward via the same first network interface. Based on this first target data, the external host can establish a communication connection with the first processor through the first logical device to manage the status of the device to be managed, and can also establish a communication connection with the device to be managed to access services. This allows management information access and service data access to share the first network interface and the first interface card, eliminating the need to set up a separate communication path and access interface for management information access. Therefore, it solves the technical problem in related technologies where the access paths for management information and service data are independent and require separate communication connections and access interfaces, achieving the technical effect of reducing system complexity and operation and maintenance costs. Attached Figure Description
[0012] To more clearly illustrate the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0013] Figure 1 This is one of the schematic diagrams of a management device provided in an embodiment of this application.
[0014] Figure 2 This is a schematic diagram of the structure of the first interface card provided in an embodiment of this application.
[0015] Figure 3 A schematic diagram of the structure of the first processor provided in an embodiment of this application.
[0016] Figure 4 This is a schematic diagram illustrating the interaction of a management device processing a target request, as provided in an embodiment of this application.
[0017] Figure 5 This is a second schematic diagram of the structure of the management device provided in the embodiments of this application.
[0018] Figure 6 This is one of the structural schematic diagrams of the storage chassis provided in the embodiments of this application.
[0019] Figure 7 This is a second schematic diagram of the structure of the storage chassis provided in an embodiment of this application.
[0020] Figure 8 This is a schematic diagram of the structure of a storage access system provided in an embodiment of this application.
[0021] Figure 9 This is a flowchart illustrating the device management method provided in an embodiment of this application. Detailed Implementation
[0022] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.
[0023] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.
[0024] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0025] An Expansion Box of Flash (EBOF) device is a standalone storage expansion device that connects to a host server via a high-speed network interface, providing data centers with flexible storage capacity expansion capabilities. EBOF devices require comprehensive management functions to support operational needs such as device status monitoring, configuration management, and fault diagnosis.
[0026] In some related technologies, EBOF devices employ a combined management architecture based on a converged Ethernet remote direct memory access interface card (RDMA over Converged Ethernet, RoCE), a central processing unit (CPU), and a baseboard management controller (BMC). This technical solution establishes a high-speed data transmission channel through the RoCE interface card, the CPU runs a management software stack to execute device management logic, and the BMC operates independently to achieve hardware monitoring and remote control. This multi-chip combined architecture significantly increases hardware design complexity. The system needs to integrate two independent management subsystems—the CPU and the BMC—into the device, involving complex printed circuit board (PCB) layout design, signal integrity assurance for multi-chip collaborative operation, and electromagnetic compatibility (EMC) handling. The introduction of multiple hardware components not only increases the complexity of the board-level bill of materials (BOM) but also brings challenges in supply chain management, testing and verification, and fault diagnosis.
[0027] In some related technologies, multi-chip management architectures also significantly increase the complexity of software development and maintenance. Since the CPU and BMC operate as independent processing units, a complete operating system, drivers, and management protocol stack need to be developed for the CPU side, while firmware supporting standard protocols such as the Intelligent Platform Management Interface (IPMI) and Redfish needs to be developed for the BMC side. The collaborative interaction between the two software systems increases the development workload, and cross-system fault diagnosis and anomaly recovery logic further increases system complexity. The potential failure points introduced by the multi-chip architecture challenge system reliability; failure of any component, whether the CPU or the BMC, can lead to management function failure, and the reliability of inter-chip communication links also becomes a constraint on stable system operation.
[0028] In some related technologies, EBOF devices adopt a pure out-of-band management architecture based on BMC, achieving device monitoring and configuration management through an independent management network. This technical solution requires complete isolation between management traffic and business data traffic at the network layer. Maintenance personnel access the BMC through a dedicated management network interface, using protocols such as IPMI, Redfish, and Simple Network Management Protocol (SNMP) for remote management. This mandatory network isolation significantly increases infrastructure costs. The system needs to configure an independent management network interface for each EBOF device and deploy dedicated management switches, routers, and other network devices. In large-scale deployment scenarios, the cabling work, equipment procurement, and daily maintenance of the management network all incur considerable costs.
[0029] In some related technologies, pure out-of-band management architectures, due to the strict isolation between management traffic and business traffic, completely lack in-band maintenance capabilities. When the management network fails, is misconfigured, or experiences a link interruption, maintenance personnel cannot access devices for emergency maintenance through the normally functioning business network. The unavailability of the management network directly causes all remote management functions to fail; even if business network communication is normal, timely troubleshooting and system recovery are impossible. This single management path design makes the management network a critical single point of failure domain, reducing the system's operational flexibility and emergency response capabilities. The introduction of an independent management network also increases operational complexity, requiring the simultaneous maintenance of two sets of infrastructure: the business network and the management network. This involves additional network management work such as Virtual Local Area Network (VLAN) partitioning and Access Control List (ACL) configuration.
[0030] In some related technologies, pure out-of-band management architectures are not well-suited to dynamic cloud environments. Static configurations of management networks struggle to adapt to the dynamic resource scheduling needs of virtualization and containerization scenarios, and device management across data centers or availability zones requires complex network interconnection solutions. Dedicated ports on management networks are underutilized most of the time; while management traffic bandwidth requirements are typically low, each device still needs to reserve a dedicated network port. Network resources cannot be dynamically shared between business and management traffic, leading to wasted port resources during large-scale deployments.
[0031] To address the aforementioned technical problems, this application provides a management device. The management device of this application will now be described in detail with reference to the accompanying drawings.
[0032] Figure 1 This is one of the schematic diagrams of a management device provided in an embodiment of this application.
[0033] like Figure 1 As shown, the management device 100 in this embodiment includes: a first processor 10, a first interface card 20, and a first network interface 30.
[0034] The first processor 10 is communicatively connected to the managed device 40. The first processor 10 can be used to create a first logical device for the first processor 10. The first logical device is used to give the first processor 10 identifiable device attributes.
[0035] For example, the first processor 10 may refer to a chip disposed inside the management device 100, having bus interconnection function and management control function. The first processor 10 is connected to multiple devices 40 to be managed within the management device 100 to realize signal transmission between devices and acquisition of management information.
[0036] For example, the first processor 10 may be a programmable Peripheral Component Interconnect Express (PCIe) switch, a programmable gate array device, or an application-specific integrated circuit (ASIC) device. The first processor 10 establishes communication connections with multiple managed devices 40 via an internal bus.
[0037] The managed device 40 can refer to a hardware device that requires business access or status management. The managed device 40 may include one or more of the following: storage device, power module, temperature sensor, voltage detection device, indicator light controller, and fan controller. The storage device may be a solid-state drive, hard disk drive, or other non-volatile storage device.
[0038] The communication connection between the first processor 10 and the managed device 40 can be achieved through a high-speed serial bus. The first processor 10 acts as the upstream device on the bus, and the managed device 40 acts as the downstream device on the bus. The first processor 10 sends access commands or management instructions to the managed device 40, and the managed device 40 returns data or status information to the first processor 10.
[0039] The first processor 10 can be used to create a first logical device for the first processor 10. The first logical device refers to a virtual device entity constructed logically within the first processor 10. The first logical device can be understood as a device object that logically exists but does not physically correspond to actual hardware. The first logical device is not used to store business data or perform business computing tasks, but rather serves as an access point for the management functions of the first processor 10.
[0040] The first logical device is used to endow the first processor 10 with identifiable device attributes. Identifiable device attributes refer to device characteristic information that can be discovered and identified by the bus enumeration mechanism. This device characteristic information includes one or more of the following: device type identifier, manufacturer identifier, product identifier, serial number, and access address space.
[0041] In one implementation, after completing power-on initialization, the first processor 10 allocates an address region in its internal register space, which corresponds to the first logical device. The first processor 10 writes a device type field, a device identifier field, and an access interface type field into this address region. The first processor 10 then sets this address region to a state where it can be read by upstream devices via the bus.
[0042] In another embodiment, the first processor 10 creates a first logical device based on preset device configuration information. This preset device configuration information is stored in the firmware storage area of the first processor 10. The first processor 10 reads this configuration information and creates the first logical device based on the device type, access space size, and identification information specified in the configuration information.
[0043] Optionally, the device type of the first logical device can be set to a management device type to distinguish it from the storage device type in the device to be managed 40. The access address space of the first logical device can be mapped to the management register area or management cache area inside the first processor 10.
[0044] It should be noted that after the first logical device is created, upstream devices on the bus can identify it when scanning the bus. The upstream devices treat the first logical device as an accessible standard device, but when actually accessing the first logical device, the access request is received and processed by the first processor 10. The existence of the first logical device allows the management functions of the first processor 10 to be accessed externally through standard device access methods, without the need for an additional dedicated management interface.
[0045] The first interface card 20 is communicatively connected to the first processor 10. The first interface card 20 can be used to acquire first identification information of the first logical device and second identification information of the device to be managed, and encapsulate the first and second identification information into accessible first target data through protocol conversion. The first target data can be used by the external host 50 to establish a communication connection with the first processor 10 through the first logical device, and to establish a communication connection with the device to be managed 40.
[0046] For example, the first interface card 20 may refer to a functional device disposed inside the management device 100 for implementing protocol conversion and data encapsulation. The first interface card 20 establishes a communication connection with the first processor 10 through a high-speed serial bus or parallel bus.
[0047] For example, the first interface card 20 can be a protocol conversion adapter, a network storage adapter, or a target adapter. The first interface card 20 can be used to receive access commands based on network protocols from the network and convert these access commands into access commands based on bus protocols. The first interface card 20 is connected to the first processor 10 via a bus interface and to the first network interface 30 via a network interface.
[0048] The communication connection between the first interface card 20 and the first processor 10 can be achieved through a bus protocol. The first interface card 20 acts as the master device on the bus, and the first processor 10 acts as the slave device on the bus. The first interface card 20 sends a read command to the first processor 10, and the first processor 10 returns device identification information and status information to the first interface card 20.
[0049] The first interface card 20 can be used to acquire the first identification information of the first logical device and the second identification information of the device to be managed. The first identification information refers to the information field used to uniquely identify the first logical device. The first identification information can be understood as the identity identification data of the first logical device in the bus topology. The first identification information may include one or more of the following: device type code, manufacturer identification code, device identification code, bus address, and function number.
[0050] The second identification information refers to the information field used to uniquely identify the managed device 40. The data structure of the second identification information is the same as or similar to that of the first identification information. The second identification information may include one or more of the following: device type code, manufacturer identification code, device identification code, serial number, bus address, and function number.
[0051] The first interface card 20 can encapsulate the first identification information and the second identification information into accessible first target data through protocol conversion. Protocol conversion refers to the process of converting data under one communication protocol into data under another communication protocol. Protocol conversion includes one or more of the following: data format conversion, address mapping conversion, and command word conversion.
[0052] The first target data refers to a data object that, after protocol conversion and encapsulation, can be accessed by an external host 50 over the network. The first target data can adopt a data format supported by the network management protocol. The first target data includes device description fields, access path fields, and attribute fields corresponding to the first and second identification information.
[0053] The first target data can be used by the external host 50 to establish a communication connection with the first processor 10 through the first logical device, and to establish a communication connection with the device to be managed 40. The external host 50 identifies the first logical device based on the first identification information in the first target data, and accesses the first processor 10 through the first logical device. The external host 50 identifies the device to be managed 40 based on the second identification information in the first target data, and accesses the device to be managed 40 through the first processor 10.
[0054] In one implementation, the first interface card 20 enumerates all devices under the first processor 10 through a bus scanning mechanism. The first interface card 20 reads the configuration space of each device and extracts the device identification field from the configuration space. The first interface card 20 uses the read identification field of the first logical device as first identification information and the read identification field of the device to be managed 40 as second identification information. The first interface card 20 stores the first identification information and the second identification information in an internal cache area.
[0055] In another implementation, the first interface card 20 converts the first identification information and the second identification information into protocol data units according to the data format requirements of the network management protocol. The protocol data unit includes an object identifier field, an object type field, and an object value field. The first interface card 20 maps the first identification information to a first object identifier and the second identification information to a second object identifier. The first interface card 20 then encapsulates the protocol data unit containing these object identifiers into first target data.
[0056] The first network interface 30 is communicatively connected to the first interface card 20. The first network interface 30 can be used to send first target data transmitted via the first interface card 20, so that the external host 50 can perform business access and status management of the managed device 40 through the first processor 10.
[0057] For example, the first network interface 30 may refer to a physical interface module disposed on the management device 100 for realizing network-side data transmission and reception. The first network interface 30 and the first interface card 20 establish a communication connection through an internal bus or a dedicated data path. The first network interface 30 obtains the encapsulated data from the first interface card 20 and sends the data to the external host 50 through the network.
[0058] For example, the first network interface 30 can be an Ethernet interface, a fiber optic interface, or a high-speed network interface. The first network interface 30 can support multiple network transmission rates.
[0059] The communication connection between the first network interface 30 and the first interface card 20 can be achieved through a data bus or an inter-chip interconnect interface. The first network interface 30 can be used to send first target data transmitted via the first interface card 20.
[0060] The external host 50 identifies accessible device objects in the management device 100 based on the device identification information in the first target data. The external host 50 can establish a communication connection with the management device 100 based on the first target data. The external host 50 performs service access and status management on the managed device 40 via the first processor 10. Service access refers to the process of reading and writing data on the managed device 40. Status management refers to the process of querying the status, modifying the configuration, or performing control operations on the managed device 40.
[0061] The external host 50 accesses the first logical device through the first identification information contained in the first target data, and establishes a communication connection with the first processor 10 through the first logical device. The external host 50 determines the device to be managed 40 through the second identification information contained in the first target data, and establishes a communication connection with the device to be managed 40 through the first processor 10.
[0062] In one implementation, after the management device 100 completes initialization, the first network interface 30 broadcasts the first target data to the network. An external host 50 on the network receives the broadcast data packet and extracts the first target data from it. The external host 50 identifies the presence of the management device 100 based on the first target data and obtains the identification information of accessible devices within the management device 100.
[0063] Optionally, the first network interface 30 can periodically send the first target data. The first network interface 30 repeatedly sends the first target data at preset time intervals so that newly connected external hosts 50 can promptly discover the management device 100. The preset time interval can be a fixed value or a configurable value.
[0064] By adopting the technical solution of the above embodiments, the first processor creates a first logical device for itself, enabling the first processor to possess device attributes that can be enumerated and identified by the bus. The first interface card can simultaneously obtain the first identification information of the first logical device and the second identification information of the device to be managed, and encapsulate both into first target data through protocol conversion, which is then sent out via the first network interface. Based on this first target data, the external host can establish a communication connection with the first processor through the first logical device to manage the status of the device to be managed, and can also establish a communication connection with the device to be managed through the first processor to access services.
[0065] The above technical solution allows management information access and business data access to share the first network interface 30 and the first interface card 20, eliminating the need to set up a separate management network interface, management interface card, and management communication path for management information access. The external host 50 can simultaneously achieve device management and business access through a single network connection, without needing to connect to separate management and business networks.
[0066] Therefore, this application can solve the technical problem in related technologies that the access paths for management information and business data are independent of each other and require the establishment of different communication connections and access interfaces, thereby achieving the technical effect of reducing system hardware complexity.
[0067] Furthermore, this application eliminates the requirement for physical isolation between the management network and the service network. When a single network experiences a partial failure, maintenance personnel can still perform management operations and access services simultaneously through available links. This improves the system's operational flexibility and emergency response capabilities.
[0068] The above embodiments describe the overall architecture of the management device 100 and the connection relationships between its components. The process by which the first interface card 20 identifies devices and assigns network access addresses will be described in detail below.
[0069] Please refer to Figure 2 , Figure 2 This is a schematic diagram of the structure of the first interface card provided in an embodiment of this application.
[0070] like Figure 2 As shown, the first interface card 20 in this embodiment may include a root complex module, a data buffer module, a non-volatile storage protocol processing module, a network protocol processing module, a first media access control module, and a second media access control module.
[0071] The PCIe Root Complex module manages the data transmission paths within the first interface card 20. It is connected to the first processor 10 via a high-speed serial bus. The root complex module is connected to the data buffer module, the non-volatile memory protocol processing module, and the network protocol processing module. The root complex module routes data to the corresponding functional module based on the data's destination address.
[0072] The data buffer module (TFC Memory) can be used to temporarily store data received and transmitted by the first interface card 20. The data buffer module is connected to the root complex module, the non-volatile storage protocol processing module, and the network protocol processing module. When data is received from the root complex module, the data buffer module writes the data into the buffer.
[0073] The Non-Volatile Memory Express (NVMe) module can be used to process data using the non-volatile memory protocol format. The NVMe module receives data from the data buffer module and parses the data's protocol format. It extracts device identification and address information from the data. The NVMe module connects to the network protocol processing module and performs protocol format conversion.
[0074] The network protocol processing module (RDMA over Converged Ethernet / Transmission Control Protocol, RoCE / TCP) can be used to process data using either the Converged Ethernet Remote Direct Storage Access Protocol format or the Transmission Control Protocol format. The network protocol processing module receives data from the non-volatile storage protocol processing module and performs protocol conversion operations. The network protocol processing module encapsulates the data into a format that conforms to the requirements of the network communication protocol.
[0075] The first Media Access Control (MAC) module is used to implement data interaction with the first network interface 30. The first MAC module is connected to the first physical interface of the first network interface 30. The first MAC module converts data from the network protocol processing module into a data format that conforms to the Ethernet physical layer transmission requirements and sends it to the first network interface 30.
[0076] The second media access control module can be used to implement redundant data interaction with the first network interface 30. The second media access control module is connected to the second physical interface of the first network interface 30. The function of the second media access control module is the same as that of the first media access control module, providing redundant network connectivity.
[0077] In one embodiment, when the first interface card 20 receives an access request sent by the external host 50 through the first network interface 30, the access request is transmitted to the first processor 10 sequentially through the media access control module, the network protocol processing module, the non-volatile storage protocol processing module, the data buffer module, and the root complex module. When the first interface card 20 scans a device, the device information is sent to the first network interface 30 sequentially through the root complex module, the data buffer module, the non-volatile storage protocol processing module, the network protocol processing module, and the media access control module.
[0078] Optionally, the data buffer module may include a temporary storage area and a management information storage area. The temporary storage area is used to cache business data. The management information storage area is used to store first identification information, second identification information, a first network access address, and a second network access address.
[0079] It should be noted that the first interface card 20 may also include a microcontroller and a control unit. The microcontroller is used to run firmware to implement protocol processing functions. The control unit is used to coordinate data flow between various functional modules.
[0080] It should be noted that the first and second media access control modules can operate independently. The network protocol processing module can select to send data through either the first or second media access control module based on the load balancing strategy. The second media access control module can continue to provide data transmission functionality even if the first module fails.
[0081] By adopting the technical solution of the above embodiments, the first interface card is connected to the first processor through the root complex module, caches data through the data buffer module, performs protocol conversion through the non-volatile storage protocol processing module and the network protocol processing module, and interacts with the first network interface through the first media access control module and the second media access control module, thereby realizing the conversion function between bus protocol and network protocol.
[0082] Based on the above embodiments, as an optional embodiment, the first interface card 20 can also be used to scan devices on the bus connected to the first processor 10.
[0083] The first interface card 20 can respond to the recognition of the first logical device, obtain the first identification information of the first logical device, and assign a first network access address to the first logical device.
[0084] The first interface card 20 can respond to the recognition of the device to be managed 40, obtain the second identification information of the device to be managed 40, and assign a second network access address to the device to be managed 40.
[0085] For example, the first interface card 20 can initiate a bus scan operation after completing its own initialization. The first interface card 20 sends a scan command to the bus connected to the first processor 10. Each device on the bus receives the scan command and returns a response signal to the first interface card 20. The first interface card 20 determines the number and location of devices on the bus based on the response signals.
[0086] During the scanning process, the first interface card 20 can read the configuration space of each device on the bus. The first interface card 20 extracts the device type field, manufacturer identifier field, and device identifier field from the configuration space, and determines the type attribute of the device based on the extracted field content.
[0087] In response to recognizing the first logical device, the first interface card 20 acquires first identification information. The first identification information includes the device type, manufacturer identifier, device identifier, and bus address information of the first logical device. The first interface card 20 stores the acquired first identification information in a data buffer module.
[0088] The first interface card 20 assigns a first network access address to the first logical device. The first network access address is used by the external host 50 to access the first logical device via the network. The first interface card 20 generates the first network access address based on the bus number, device number, and function number of the first logical device on the bus. The first interface card 20 establishes a mapping relationship between the first network access address and first identification information and stores it.
[0089] In response to recognizing the device 40 to be managed, the first interface card 20 acquires the second identification information. The second identification information includes the device type, manufacturer identifier, device identifier, and bus address information of the device 40 to be managed. The first interface card 20 stores the acquired second identification information in the data buffer module.
[0090] The first interface card 20 assigns a second network access address to the managed device 40. This second network access address is used by the external host 50 to access the managed device 40 via the network. The first interface card 20 generates the second network access address based on the bus number, device number, and function number of the managed device 40 on the bus. The first interface card 20 establishes a mapping relationship between the second network access address and second identification information and stores it.
[0091] In one implementation, the first interface card 20 sequentially accesses each valid address in the bus address space while scanning the bus. The first interface card 20 sends a device query command to the currently accessed address. Upon receiving a device response signal, the first interface card 20 determines that a valid device exists at that address and reads the configuration space content of that device. The first interface card 20 parses the device type field in the configuration space. Based on the device type field, the first interface card 20 determines whether the device belongs to the first logical device or the device to be managed 40, and performs the corresponding identification information acquisition and network access address allocation operations.
[0092] Optionally, the first interface card 20 may generate an address allocation record after assigning a network access address to the device. The address allocation record includes the device's identification information, network access address, allocation timestamp, and device status information. The first interface card 20 stores the address allocation record in a non-volatile storage area. After a restart or power failure, the first interface card 20 restores the network access address allocation status based on the address allocation record.
[0093] Optionally, the first interface card 20 can periodically rescan the devices on the bus connected to the first processor 10. During the periodic scan, the first interface card 20 detects the hot-plug status of the devices. When a new device is detected, the first interface card 20 assigns a network access address to the new device.
[0094] By adopting the technical solution of the above embodiments, the first interface card identifies the first logical device and the device to be managed by scanning the bus, and assigns network access addresses to the identified devices respectively, so that devices that could originally only be accessed through the bus protocol can be accessed by external hosts through the network protocol. The first interface card establishes a mapping relationship between the bus address and the network access address, and the external host accesses the first logical device and the device to be managed through a unified network interface, simplifying the access process of the external host.
[0095] Based on the above embodiments, as an optional embodiment, the first interface card 20 can also be used to encapsulate the first identification information of the first logical device and the first network access address into a first data unit.
[0096] The first interface card 20 can encapsulate the second identification information and the second network access address of the device to be managed 40 into a second data unit.
[0097] The first interface card 20 can convert the communication protocol of the first data unit and the second data unit into a network communication protocol that the external host 50 can recognize, so as to obtain the first target data.
[0098] For example, the first interface card 20 performs a data encapsulation operation after obtaining the first identification information and the first network access address through the non-volatile storage protocol processing module. The non-volatile storage protocol processing module organizes the first identification information and the first network access address into a data structure with a predetermined format, which forms the first data unit.
[0099] The first data unit refers to a data encapsulation containing the identity information and network location information of the first logical device. The first data unit includes a first identification information field and a first network access address field. The first data unit may also include a device type field, a device status field, and an access attribute field.
[0100] The second data unit refers to a data encapsulation containing the identity information and network location information of the device to be managed 40. The second data unit includes a second identification information field and a second network access address field. The second data unit may also include a device type field, a device capacity field, and an access attribute field.
[0101] The first interface card 20 converts the communication protocol of the first data unit and the second data unit into a network communication protocol that the external host 50 can recognize. This refers to the process by which the non-volatile storage protocol processing module and the network protocol processing module work together to convert data units using a bus protocol format into data using a network protocol format.
[0102] In one implementation, the non-volatile storage protocol processing module fills the field values from the first identification information into the corresponding field positions of the first data unit, fills the first network access address into the address field position of the first data unit, and organizes the fields according to a predetermined data unit format to form a complete first data unit. The non-volatile storage protocol processing module generates the second data unit in the same way. The non-volatile storage protocol processing module merges the first data unit and the second data unit into a device information list and transmits it to the network protocol processing module. The network protocol processing module adds network protocol header information to the outer layer of the device information list and uses the data after adding the network protocol header information as the first target data.
[0103] Optionally, the non-volatile storage protocol processing module can add data integrity verification fields to both the first data unit and the second data unit. The first interface card 20 calculates a verification value based on the content of the first data unit and appends the verification value to the first data unit. The first interface card 20 adds a verification value to the second data unit in the same way. After receiving the first target data, the external host 50 can verify the data integrity based on the verification value.
[0104] By adopting the technical solution of the above embodiments, the first interface card encapsulates the first identification information and the first network access address into a first data unit, encapsulates the second identification information and the second network access address into a second data unit, and converts the two data units into a network communication protocol format that can be recognized by the external host, so that the device information on the bus side can be transmitted to the external host 50 in a way that can be recognized by the network side.
[0105] Based on the above embodiments, as an optional embodiment, the first network interface 30 can also be used to receive a discovery command sent by the external host 50 based on the first target data.
[0106] The first interface card 20 can also be used to respond to discovery commands and generate a device list. The device list includes a first list of first logical devices and a second list of devices to be managed 40.
[0107] The first network interface 30 can also be used to send a device list to an external host 50, so that the external host 50 can establish communication connections with the first logical device and the device to be managed 40 based on the device list.
[0108] The first list may include the first identification information, first network access address, and first port information of the first logical device. The second list may include the second identification information, second network access address, and second port information of the device to be managed 40.
[0109] For example, after receiving the first target data, the external host 50 sends a discovery command to the first network interface 30. The discovery command is used to request the management device 100 to return detailed information about accessible devices. The first network interface 30 receives the discovery command and transmits it to the first interface card 20.
[0110] Upon receiving a discovery command, the first interface card 20 reads the stored first and second identification information from the data buffer module. The first interface card 20 generates a first list based on the first identification information. The first interface card 20 then fills the first list with the first identification information, the first network access address, and the first port information. The first interface card 20 generates a second list based on the second identification information. The first interface card 20 fills the second list with the second identification information, the second network access address, and the second port information. The first interface card 20 then organizes the first and second lists into a device list.
[0111] The first port information refers to the network port identifier used by the external host 50 to establish a communication connection with the first logical device. The second port information refers to the network port identifier used by the external host 50 to establish a communication connection with the device to be managed 40. The first interface card 20 assigns different port information to the first logical device and the device to be managed 40 so that the external host 50 can distinguish the access target.
[0112] The first interface card 20 transmits the device list to the first network interface 30. The first network interface 30 sends the device list to the external host 50. After receiving the device list, the external host 50 parses the information in the first list and the second list. The external host 50 establishes a communication connection with the first logical device based on the first network access address and the first port information in the first list. The external host 50 establishes a communication connection with the device to be managed 40 based on the second network access address and the second port information in the second list.
[0113] Optionally, the first interface card 20 can add a device status field to each device in the device list. The device status field is used to indicate whether the device is currently in an accessible state. The external host 50 determines whether a connection can be established immediately based on the device status field.
[0114] It should be noted that the first interface card 20 can regenerate the device list each time it receives a discovery command. Before regenerating the device list, the first interface card 20 checks the current status of the devices on the bus to ensure that the information in the device list is consistent with the actual device status.
[0115] By adopting the technical solution of the above embodiments, the first network interface receives a discovery command sent by an external host. The first interface card generates a device list containing a first list and a second list according to the discovery command, and sends the device list to the external host via the first network interface. The external host can accurately identify the first logical device and the device to be managed based on the identification information, network access address, and port information contained in the device list, and establish communication connections respectively. The above technical solution enables the external host to obtain complete information on all accessible devices inside the management device through a standard discovery process.
[0116] The first processor 10 will be described below.
[0117] Please refer to Figure 3 , Figure 3 A schematic diagram of the structure of the first processor provided in an embodiment of this application.
[0118] like Figure 3 As shown, the first processor 10 in this embodiment may include a virtual device creation module, a management interface data module, a master-slave synchronization module, and a device management module.
[0119] The Virtual Non-Volatile Memory Express Device (VirtualNVMe) module can be used to create a first logical device. This module establishes a logical device entity within the first processor 10 and allocates device identification information and access address space to it. The Virtual Device Creation module enables the first logical device to be recognized and accessed by the first interface card 20.
[0120] The management interface data module (Non-Volatile Memory Express Management Interface, NVMe MI) is used to handle the encapsulation and decapsulation of management information. The management interface data module converts the collected status data of the managed device 40 into a standardized management interface data format. When it receives a management query request from an external host 50, the management interface data module reads the corresponding management interface data from the management cache area and returns a response.
[0121] The master-slave synchronization module can be used to synchronize management information between the first processor 10 and the second processor. The master-slave synchronization module sends locally collected and encapsulated management interface data to the second processor. The master-slave synchronization module receives management interface data from the second processor and stores it in its local cache area.
[0122] The device management module can be used to collect status information of the device 40 to be managed. The device management module reads the operating parameters and status data of the device 40 to be managed via the internal bus. The device management module transmits the collected raw status data to the management interface data module for formatting processing.
[0123] It should be noted that the various functional modules of the first processor 10 are connected via internal data paths. The first logical device created by the virtual device creation module serves as the management access entry point, and the received access requests are processed by the management interface data module. The status information collected by the device management module is encapsulated by the management interface data module and then synchronized to other processors by the master-slave synchronization module to achieve redundancy.
[0124] Please refer to Figure 4 , Figure 4 This is a schematic diagram illustrating the interaction of a management device processing a target request, as provided in an embodiment of this application.
[0125] like Figure 4 As shown, based on the above embodiments, as an optional embodiment, the first network interface 30 can also be used to receive target requests sent by the external host 50 based on the communication connection established with the first logical device.
[0126] The first interface card 20 can also be used to parse target requests into internal instructions recognizable by the first processor 10.
[0127] The first processor 10 can also be used to respond to internal instructions and generate response data.
[0128] The first interface card 20 can also be used to convert response data into target response data in a network communication protocol format that can be recognized by the external host 50.
[0129] The first network interface 30 can also be used to send target response data to an external host 50.
[0130] For example, after establishing a communication connection with the first logical device, the external host 50 sends a target request to the first network interface 30. The target request refers to an access request or management request initiated by the external host 50 for the first logical device or the device to be managed 40. The first network interface 30 receives the target request and transmits it to the first interface card 20.
[0131] The first interface card 20 parses the network protocol format of the target request through the network protocol processing module. The first interface card 20 extracts the request type field, target address field, and request parameter field from the target request. The first interface card 20 generates internal instructions based on the extracted field content. Internal instructions refer to instructions expressed in a bus protocol format that the first processor 10 can recognize. The first interface card 20 sends the internal instructions to the first processor 10 through the bus interface.
[0132] The first processor 10 receives internal instructions and parses the instruction type and operation parameters within them. The first processor 10 executes the corresponding operation according to the internal instructions. After completing the operation, the first processor 10 generates response data. The response data includes the operation execution result, status information, or return value. The first processor 10 sends the response data to the first interface card 20.
[0133] The first interface card 20 receives response data and stores it in the data buffer module. The first interface card 20 converts the response data into a network communication protocol format through the network protocol processing module. The first interface card 20 adds network protocol header information to the outer layer of the response data to generate target response data. The first interface card 20 transmits the target response data to the first network interface 30. The first network interface 30 sends the target response data to the external host 50.
[0134] Optionally, the first interface card 20 can determine the priority of the target request when parsing it. The first interface card 20 adjusts the processing order of internal instructions according to the priority information. Internal instructions corresponding to higher priority target requests are sent to the first processor 10 first.
[0135] It should be noted that the first processor 10 can call different functional modules according to the instruction type of the internal instructions when generating response data. The first processor 10 calls the device management module when the internal instructions indicate access to the managed device 40. The first processor 10 calls the management interface data module when the internal instructions indicate reading management information.
[0136] By adopting the technical solution of the above embodiments, the external host sends a target request through the first network interface. The first interface card parses the target request into internal instructions recognizable by the first processor. The first processor generates response data according to the internal instructions. The first interface card converts the response data into a network communication protocol format and returns it to the external host via the first network interface. The above technical solution realizes bidirectional conversion between network protocols and bus protocols, enabling the external host to access the first processor and the managed device inside the management device through standard network communication methods.
[0137] Based on the above embodiments, as an optional embodiment, the target request includes a connection request. Furthermore, the first network interface 30 can also be used to receive connection requests.
[0138] The first interface card 20 can also be used to determine the target connection object indicated by the connection request. The target connection object is at least one of a plurality of managed devices 40.
[0139] The first processor 10 can also be used to establish an access path with the target connected object.
[0140] The first interface card 20 can also be used to generate connection response data based on the access path.
[0141] The first network interface 30 can also be used to send connection response data to the external host 50. The connection response data is used by the external host 50 to create a local device object. The local device object is associated with the device to be managed 40, so that the external host 50 can access the device to be managed 40 through the access path via the local device object.
[0142] For example, after completing device discovery, the external host 50 selects the device 40 to be managed based on the second list in the device list. The external host 50 generates a connection request and sends the connection request to the first network interface 30. The connection request includes the device identification information and network access address information of the target connection object.
[0143] The first interface card 20 extracts the identification field of the target connection object from the connection request. Based on the identification field, the first interface card 20 queries the stored device information list for the corresponding managed device 40. The first interface card 20 determines the bus address and device number of the managed device 40 on the bus. The first interface card 20 sends the bus address information of the target connection object to the first processor 10.
[0144] The first processor 10 receives bus address information and locates the target connection object based on the bus address information. The first processor 10 establishes a data transmission path with the target connection object through the internal bus. This data transmission path serves as an access path for subsequent business data access. After establishing the access path, the first processor 10 returns the path information of the access path to the first interface card 20.
[0145] The first interface card 20 generates connection response data based on the path information of the access path. The connection response data includes an access path identifier field, a target connection object status field, and an access attribute field. The first interface card 20 converts the connection response data into a network communication protocol format and transmits it to the first network interface 30. The first network interface 30 then sends the connection response data to the external host 50.
[0146] External host 50 receives connection response data and parses the access path identifier and target connection object status from the data. External host 50 creates a local device object in its local operating system. A local device object is a logical device entity created by external host 50 in its local system. The local device object is associated with the device to be managed 40. External host 50 stores the access path identifier in the attributes of the local device object.
[0147] External host 50 sends a service access request to the managed device 40 through a local device object. The service access request carries an access path identifier. First network interface 30 receives the service access request and transmits it to first interface card 20. First interface card 20 converts the service access request into a bus access command based on the access path identifier. First processor 10 routes the bus access command to the target connection object based on the access path.
[0148] Optionally, the first processor 10 can allocate bandwidth resources for the access path when establishing the access path. The first processor 10 determines the minimum bandwidth required for the access path based on the device type of the target connection object. The first processor 10 reserves corresponding bandwidth resources for the access path when internal bus resources are sufficient.
[0149] It should be noted that the external host 50 can establish access paths with multiple managed devices 40 simultaneously. The first processor 10 assigns a unique access path identifier to each access path. The first interface card 20 routes the access request to the corresponding managed device 40 based on the access path identifier carried in the service access request.
[0150] By employing the technical solution of the above embodiments, the external host sends a connection request containing target connection object information. The first interface card determines the target connection object and notifies the first processor to establish an access path. The first interface card generates connection response data based on the access path and returns it to the external host. The external host creates a local device object associated with the device to be managed based on the connection response data, and performs business access to the device to be managed through the access path via the local device object. The above technical solution enables the external host to map a remote device to be managed as a local device, simplifying the business access operation process.
[0151] Based on the above embodiments, as an optional embodiment, the device to be managed 40 may include a storage device. Furthermore, the first network interface 30 can also be used to receive service access requests sent by the external host 50 to the storage device. The service access request may include a read data request.
[0152] The first interface card 20 can also be used to convert read data requests into read commands.
[0153] The first processor 10 can also be used to retrieve data stored in the storage device indicated by the read instruction in response to a read instruction.
[0154] The first interface card 20 can also be used to cache stored data and generate read response data based on the stored data.
[0155] The first network interface 30 can also be used to send read response data to an external host 50.
[0156] For example, after establishing an access path with the storage device, the external host 50 sends a read data request to the first network interface 30. The read data request includes a target storage address field and a read length field. The first network interface 30 receives the read data request and transmits it to the first interface card 20.
[0157] The first interface card 20 parses the protocol format of the read data request through the network protocol processing module. The first interface card 20 extracts the target storage address and read length information from the read data request. The first interface card 20 generates a read instruction based on the extracted information. The read instruction uses a bus protocol format that the first processor 10 can recognize. The first interface card 20 sends the read instruction to the first processor 10 through the bus interface.
[0158] The first processor 10 receives a read command and parses the target memory address and read length parameters in the read command. The first processor 10 locates the corresponding storage device based on the target memory address. The first processor 10 sends a read command to the storage device. The storage device responds to the read command and returns the stored data to the first processor 10. The first processor 10 then sends the stored data to the first interface card 20.
[0159] The first interface card 20 receives stored data and writes it to the temporary storage area in the data buffer module. The first interface card 20 generates read response data based on the stored data. The read response data includes a status field and a data content field. The first interface card 20 converts the read response data into a network communication protocol format through the network protocol processing module. The first interface card 20 transmits the converted read response data to the first network interface 30. The first network interface 30 sends the read response data to the external host 50.
[0160] Optionally, the first interface card 20 can allocate an independent cache area for stored data in the data buffer module. The first interface card 20 pre-allocates a cache space of a corresponding size according to the read length in the read data request. The first interface card 20 generates read response data only after the stored data has been completely written to the cache area.
[0161] It should be noted that the first processor 10 can support concurrent read operations on multiple storage devices. When the first processor 10 receives multiple read instructions, it schedules the read order according to the access status of the storage devices. The first processor 10 prioritizes processing read instructions from storage devices that are in an idle state.
[0162] By adopting the technical solution of the above embodiments, the external host sends a read data request through the first network interface, the first interface card converts the read data request into a read instruction, the first processor retrieves the stored data from the storage device according to the read instruction, the first interface card caches the stored data and generates read response data, and then returns it to the external host through the first network interface. This technical solution enables the external host to read business data from the internal storage device of the management device via network access.
[0163] Based on the above embodiments, as an optional embodiment, the device to be managed 40 may include a storage device. Furthermore, the first network interface 30 can also be used to receive service access requests sent by the external host 50 to the storage device. The service access request may include a write data request.
[0164] The first interface card 20 can also be used to convert write data requests into write instructions and cache the write data in the write data request.
[0165] The first processor 10 can also be used to write data to the storage device indicated by the write instruction in response to a write instruction.
[0166] The first interface card 20 can also be used to generate write response data when the first processor 10 has finished writing the write data.
[0167] The first network interface 30 can also be used to send write response data to an external host 50.
[0168] For example, the external host 50 sends a write data request to the first network interface 30. The write data request includes a target storage address field, a write length field, and the data content to be written.
[0169] The first interface card 20 receives and parses the write data request. The first interface card 20 writes the data to the temporary storage area in the data buffer module, and generates a write instruction based on the target storage address and write length, which is then sent to the first processor 10.
[0170] The first processor 10 receives a write command and parses the target memory address and write length parameters in the write command. The first processor 10 locates the corresponding storage device based on the target memory address. The first processor 10 reads the write data from the data buffer module of the first interface card 20. The first processor 10 sends a write command and write data to the storage device. The storage device executes the data write operation and returns a write completion status to the first processor 10.
[0171] Upon receiving a write completion status, the first processor 10 sends a write completion notification to the first interface card 20. The first interface card 20 then generates write response data in response to the write completion notification. The write response data includes a write status field and a write result field.
[0172] Optionally, the first interface card 20 can allocate a dedicated buffer area in the data buffer module for write data. The first interface card 20 sends the write command to the first processor 10 only after the write data has been fully buffered. The first interface card 20 releases the buffer area after the first processor 10 has completed reading the data.
[0173] It should be noted that the first processor 10 can continue to receive other access requests while the storage device is performing a write operation. The first processor 10 temporarily stores the write instructions to be processed in an instruction queue according to the order in which they are received. The first processor 10 processes the write instructions in the instruction queue sequentially according to the busy / idle state of the storage device.
[0174] By adopting the technical solution of the above embodiments, the external host sends a write data request through the first network interface. The first interface card converts the write data request into a write instruction and caches the write data. The first processor writes the write data to the storage device according to the write instruction. After the write is completed, the first interface card generates write response data and returns it to the external host via the first network interface. The above technical solution enables the external host to write business data to the internal storage device of the management device through network access.
[0175] Based on the above embodiments, as an optional embodiment, the first network interface 30 can also be used to receive status management requests sent by the external host 50. Status management requests include query requests.
[0176] The first interface card 20 can also be used to convert query requests into query instructions.
[0177] The first processor 10 can also be used to respond to a query command and obtain the status information of the managed device 40 indicated by the query command.
[0178] The first interface card 20 can also be used to convert status information into management response data.
[0179] The first network interface 30 can also be used to send management response data to an external host 50.
[0180] For example, after establishing a communication connection with the first logical device, the external host 50 sends a query request to the first network interface 30. The query request includes a management object identifier field and a query type field. The management object identifier field indicates the device identifier of the device 40 to be managed. The query type field indicates the type of status information to be queried. The first network interface 30 receives the query request and transmits it to the first interface card 20.
[0181] The first interface card 20 parses the managed object identifier and query type in the query request. Based on the parsing result, the first interface card 20 generates a query command. The first interface card 20 then sends the query command to the first processor 10.
[0182] The first processor 10 receives a query command and parses the managed object identifier and query type parameters in the query command. The first processor 10 determines the corresponding device to be managed 40 based on the managed object identifier. The first processor 10 calls the management interface data module to extract the status information corresponding to the query type from the management cache area and sends the status information to the first interface card 20.
[0183] The first interface card 20 receives status information and converts it into management response data. The management response data includes the numerical fields, validity flag fields, and timestamp fields of the status information.
[0184] Optionally, the first processor 10 can determine whether the status information indicated by the query command is the status information collected by this node when it receives the query command. If the status information belongs to this node, the first processor 10 reads the status information from the local management cache area. If the status information belongs to another node, the first processor 10 reads the status information from the synchronized management cache area.
[0185] It should be noted that the query request can specify querying the status information of a single managed device 40, or it can specify querying the status information of multiple managed devices 40. When the query request specifies querying multiple managed devices 40, the first processor 10 sequentially reads the status information of each managed device 40 and organizes it into a status information list. The first processor 10 sends the status information list as a whole to the first interface card 20.
[0186] By adopting the technical solution of the above embodiments, the external host sends a query request through the first network interface, the first interface card converts the query request into a query command, the first processor obtains the status information of the device to be managed according to the query command, the first interface card converts the status information into management response data and returns it to the external host via the first network interface. This technical solution enables the external host to query the operating status of the device to be managed through the same network connection as business access, achieving a unified access path for business access and status management.
[0187] Based on the above embodiments, as an optional embodiment, the first network interface 30 can also be used to receive status management requests sent by the external host 50. Status management requests include control requests.
[0188] The first interface card 20 can also be used to convert control requests into control commands.
[0189] The first processor 10 can also be used to change the status value of the managed device 40 indicated by the control command in response to the control command.
[0190] For example, external host 50 sends a control request to first network interface 30. The control request includes a management object identifier field, a control type field, and a target status value field.
[0191] The first interface card 20 receives and parses the control request. Based on the parsing result, the first interface card 20 generates control commands and sends them to the first processor 10.
[0192] The first processor 10 receives control commands and parses the managed object identifier, control type, and target status value parameters from the control commands. The first processor 10 determines the corresponding managed device 40 based on the managed object identifier. The first processor 10 invokes the device management module to send a status change command to the managed device 40. The status change command carries the target status value parameter. The managed device 40 responds to the status change command and changes its own status value to the target status value. After the managed device 40 completes the status change, the first processor 10 updates the corresponding status data field in the management cache area.
[0193] Optionally, the first processor 10 can generate control response data after changing the status value of the managed device 40. The first processor 10 sends the control response data to the first interface card 20. The first interface card 20 converts the control response data into a network communication protocol format and returns it to the external host 50 via the first network interface 30. The control response data includes a control execution status field and a current status value field.
[0194] It should be noted that the first processor 10 can verify the validity of the target state value before executing the state change operation. The first processor 10 determines whether the target state value is within the allowable range of the managed device 40. If the target state value exceeds the allowable range, the first processor 10 refuses to execute the state change operation and returns error response data to the first interface card 20.
[0195] By adopting the technical solution of the above embodiments, the external host sends a control request through the first network interface, the first interface card converts the control request into a control command, and the first processor changes the status value of the device to be managed according to the control command. This technical solution enables the external host to perform remote control operations on the device to be managed via a network connection, realizing a unified management interface for status query and status control.
[0196] Based on the above embodiments, as an optional embodiment, the first processor 10 can also be used to acquire status data of the managed device 40. The status data includes at least one of temperature data, voltage data, power status data, and alarm data.
[0197] The first processor 10 can also be used to convert status data into status identifiers and status values to obtain the status information of the device to be managed 40.
[0198] For example, the first processor 10 periodically reads the status registers of each managed device 40 via an internal bus. The managed device 40 stores its current operating status data in the status register. The first processor 10 extracts temperature data, voltage data, power status data, or alarm data from the status register.
[0199] The first processor 10 transmits the read status data to the management interface data module for format conversion. The management interface data module converts the status data into a standardized status information structure according to a predetermined data format specification. This status information structure includes a status identifier field and a status value field. The status identifier field indicates the type of status data. The status value field stores the specific numerical value of the status data.
[0200] Upon receiving temperature data, the management interface data module sets the status identifier field to the temperature type identifier and fills the status value field with the temperature data value. The management interface data module processes voltage data, power status data, and alarm data in the same way. The management interface data module stores the converted status information in the management cache area of the first processor 10.
[0201] Optionally, the first processor 10 can set different acquisition cycles for different types of status data. The first processor 10 acquires temperature and voltage data at shorter time intervals. The first processor 10 acquires power status data at longer time intervals. The first processor 10 immediately acquires alarm data when it detects a status change in the managed device 40.
[0202] It should be noted that the first processor 10 can add an anomaly flag field to the status information when the status data exceeds a preset threshold. The first processor 10 compares temperature data with a temperature threshold and voltage data with a voltage threshold. When the status data exceeds the corresponding threshold, the first processor 10 sets the anomaly flag field to a valid state. When querying the status information, the external host 50 can quickly identify the managed device 40 in an abnormal state based on the anomaly flag field.
[0203] By employing the technical solution of the above embodiments, the first processor acquires status data such as temperature data, voltage data, power status data, and alarm data of the device to be managed, and converts the status data into standardized status information containing status identifiers and status values. This technical solution enables status data of different types of devices to be managed to be accessed and processed by an external host in a unified format.
[0204] Based on the above embodiments, as an optional embodiment, the first interface card 20 may further include a storage area.
[0205] The first interface card 20 can also be used to write multiple service access requests to the storage area when multiple service access requests are received.
[0206] The first interface card 20 can also be used to process multiple business access requests sequentially based on the priority of each business access request among multiple business access requests.
[0207] For example, the first network interface 30 receives multiple service access requests from the external host 50 within a short period of time. The first network interface 30 transmits the multiple service access requests sequentially to the first interface card 20. The first interface card 20 determines whether the current processing unit is busy. When the processing unit is busy, the first interface card 20 temporarily stores the received service access requests in the storage area. The storage area is a cache queue structure in the first interface card 20. The first interface card 20 writes the multiple service access requests sequentially into the queue position in the storage area according to the receiving order.
[0208] The first interface card 20 reads the request header information of each service access request in the storage area. The request header information includes a priority field. The first interface card 20 extracts the priority field value of each service access request. The first interface card 20 sorts the service access requests in the storage area according to the priority value. The first interface card 20 moves the high-priority service access requests to the front of the queue. The first interface card 20 keeps the low-priority service access requests at the back of the queue.
[0209] The first interface card 20 retrieves service access requests sequentially from the front of the queue in the storage area for processing. After processing a service access request, the first interface card 20 removes the service access request from the storage area. The first interface card 20 then continues to process the next service access request in the queue.
[0210] Optionally, the first interface card 20 can set a capacity limit for the storage area. When the used capacity of the storage area reaches the limit, the first interface card 20 rejects new service access requests. The first interface card 20 returns a busy status response to the first network interface 30. The first network interface 30 then sends the busy status response to the external host 50.
[0211] It should be noted that a higher priority value indicates a higher priority for the service access request. The first interface card 20 prioritizes service access requests with higher priority values. When multiple service access requests have the same priority, the first interface card 20 processes them according to the order in which they were received.
[0212] By adopting the technical solution of the above embodiments, when the first interface card receives multiple service access requests, it writes the service access requests into the storage area and processes them sequentially according to their priority. This technical solution avoids the problem of lost service access requests and ensures that high-priority service access requests receive priority responses, thereby improving the processing efficiency of the management device for service access requests.
[0213] Please refer to Figure 5 , Figure 5 This is a second schematic diagram of a management device provided in an embodiment of this application.
[0214] like Figure 5 As shown, the management device 100 may further include a second processor 60, a second interface card 70, a second network interface 80, a first serial port 91, and a second serial port 92. The second processor 60 is communicatively connected to the first processor 10 and the device to be managed 40, and is used to create a second logical device for the second processor 60.
[0215] The second interface card 70 is communicatively connected to the second processor 60 and is used to obtain the third identification information of the second logical device, and encapsulate the third identification information into accessible second target data through protocol conversion. The second target data is used by the external host 50 to establish a communication connection with the second processor 60 through the second logical device.
[0216] The second network interface 80 is communicatively connected to the second interface card 70 and is used to send second target data to the external host 50.
[0217] The first serial port 91 is connected to the first processor 10 for communication. The second serial port 92 is connected to the second processor 60 for communication. Both the first serial port 91 and the second serial port 92 are used to provide serial communication interfaces.
[0218] For example, the second processor 60 creates a second logical device when the management device 100 starts. The second logical device contains management information of the device 40 to be managed by the second processor 60. The second interface card 70 obtains third identification information of the second logical device from the second processor 60. The second interface card 70 encapsulates the third identification information into second target data through protocol conversion. The second network interface 80 sends the second target data to the external host 50. The external host 50 establishes a communication connection with the second processor 60 based on the second target data.
[0219] The first serial port 91 provides a serial communication channel for the first processor 10. The first processor 10 interacts with external devices through the first serial port 91. The second serial port 92 provides a serial communication channel for the second processor 60. The second processor 60 interacts with external devices through the second serial port 92.
[0220] Optionally, the first processor 10 and the second processor 60 can each manage different managed devices 40. The first processor 10 stores the status information of the managed devices 40 it manages in a first logical device. The second processor 60 stores the status information of the managed devices 40 it manages in a second logical device.
[0221] Optionally, the first serial port 91 and the second serial port 92 can be used to establish a status synchronization channel between the first processor 10 and the second processor 60. The first processor 10 transmits locally acquired status information to the second serial port 92 of the second processor 60 via the first serial port 91. The second processor 60 transmits locally acquired status information to the first serial port 91 of the first processor 10 via the second serial port 92. The first processor 10 and the second processor 60 each maintain a complete copy of the status information of the managed device 40.
[0222] It should be noted that the first serial port 91 and the second serial port 92 can use standard serial communication protocols for data transmission. The first serial port 91 and the second serial port 92 support full-duplex communication mode, enabling simultaneous data transmission and reception.
[0223] By adopting the technical solution of the above embodiments, the management device includes a second processor, a second interface card, a second network interface, a first serial port, and a second serial port. The second processor creates a second logical device, and the second interface card 70 encapsulates the third identification information into second target data for access by an external host. This technical solution implements a dual-processor redundant architecture and provides a serial communication interface and data synchronization function between processors through the first and second serial ports.
[0224] Based on the above embodiments, as an optional embodiment, the first processor 10 can also be used to obtain the heartbeat information of the first interface card 20 during the power-on startup process.
[0225] The first processor 10 can be used to obtain the heartbeat information of the second processor 60.
[0226] The first processor 10 can be used to acquire communication information with the second processor 60.
[0227] The first processor 10 can be used to obtain the accessibility status of the managed device 40.
[0228] The first processor 10 can also be used to determine the completion of the self-test process when the heartbeat information indication of the first interface card 20 is normal, the heartbeat information indication of the second processor 60 is normal, the communication information indication with the second processor 60 is normal, and the managed device 40 is in an accessible state.
[0229] For example, after the management device 100 is powered on, the first processor 10 enters the initialization phase. After completing the basic initialization, the first processor 10 sends a heartbeat query command to the first interface card 20. The first processor 10 receives the heartbeat response signal returned by the first interface card 20 and determines whether the heartbeat information of the first interface card 20 indicates normal operation based on the heartbeat response signal.
[0230] The first processor 10 sends a heartbeat query command to the second processor 60 via the first serial port 91. The first processor 10 receives the heartbeat response signal returned by the second processor 60 via the second serial port 92 and determines whether the heartbeat information of the second processor 60 indicates normal operation. The first processor 10 sends test data to the second processor 60 and receives the response data returned by the second processor 60. The first processor 10 obtains the communication information with the second processor 60 based on the reception status of the response data. The first processor 10 determines that the communication information indicates normal operation upon successfully receiving the response data.
[0231] The first processor 10 sends device query commands to each managed device 40 via the internal bus. Under normal operating conditions, each managed device 40 returns a device response signal to the first processor 10. The first processor 10 obtains the accessibility status of the managed device 40 based on the device response signal. Upon receiving a device response signal from a managed device 40, the first processor 10 determines that the managed device 40 is in an accessible state.
[0232] After confirming that the heartbeat information of the first interface card 20, the heartbeat information of the second processor 60, and the communication information with the second processor 60 are normal, and that all managed devices 40 are in an accessible state, the first processor 10 determines that the self-test process is complete. After the self-test process is completed, the first processor 10 creates a first logical device and begins to receive access requests from the external host 50.
[0233] Optionally, the first processor 10 can generate a self-test failure flag if any check item indicates an abnormality. The first processor 10 stores the self-test failure flag and the corresponding fault item information in an internal register. In the event of a self-test failure, the first processor 10 enters a fault mode and stops receiving external access requests.
[0234] By adopting the technical solution of the above embodiments, the first processor sequentially checks the working status of the first interface card, the second processor, inter-processor communication and the device to be managed during the power-on startup process, and completes the self-test process when all the check results are normal.
[0235] Based on the above embodiments, as an optional embodiment, the first processor 10 can also be used to obtain the status information of the device 40 to be managed and send the status information to the second processor 60.
[0236] For example, after collecting and encapsulating the status information of the device 40 to be managed, the first processor 10 sends the status information to the second processor 60 through the master-slave synchronization module. The status information transmission between the first processor 10 and the second processor 60 is implemented through the first serial port 91 and the second serial port 92. The second processor 60 receives the status information and stores it in the local management cache area.
[0237] The transmission of status information between the first processor 10 and the second processor 60 can be achieved through the first serial port 91 and the second serial port 92. The first processor 10 sends status information to the second serial port 92 through the first serial port 91. The second serial port 92 transmits the received status information to the second processor 60.
[0238] Optionally, the first processor 10 can periodically send status information to the second processor 60. The first processor 10 repeatedly performs the status information sending operation according to a preset synchronization period. The second processor 60 updates the corresponding data field in its local management cache area each time it receives status information.
[0239] Optionally, the first processor 10 can immediately send updated status information to the second processor 60 when it detects a change in the status information of the managed device 40. The first processor 10 compares the current status information with the previously synchronized status information. The first processor 10 triggers a status information transmission operation when it detects a data difference.
[0240] By employing the technical solution of the above embodiments, the first processor sends the acquired status information of the device to be managed to the second processor, and the second processor stores the status information in its local management cache area. This technical solution enables the second processor to continue providing status management services to the external host even when the first processor or the first interface card fails.
[0241] Based on the above embodiments, as an optional embodiment, the first processor 10 can also be used to obtain the heartbeat information of the first interface card 20.
[0242] The first processor 10 can also be used to send an interface card fault notification message to the second processor 60 when the heartbeat information of the first interface card 20 indicates an abnormality.
[0243] The second processor 60 can also be used to generate path switching notification data in response to interface card fault notification information.
[0244] The second interface card 70 can also be used to convert path switching notification data into access switching requests in network protocol format.
[0245] The second network interface 80 can also be used to send an access switching request to the external host 50, so that the external host 50 changes the access entry from the first network interface 30 to the second network interface 80, and performs business access and status management with the second processor 60 and the managed device 40 via the second interface card 70.
[0246] The first processor 10 determines whether the heartbeat information indicates an anomaly. If the first processor 10 does not receive a heartbeat response signal within a preset time, it determines that the heartbeat information indicates an anomaly. The first processor 10 also determines that the heartbeat information indicates an anomaly if the operating status identifier in the heartbeat response signal is a fault state. After determining that the heartbeat information indicates an anomaly, the first processor 10 generates interface card fault notification information. The first processor 10 sends the interface card fault notification information to the second serial port 92 of the second processor 60 via the first serial port 91.
[0247] The second processor 60 receives the interface card fault notification information and parses the fault type field in the information. Based on the fault type field, the second processor 60 determines that the first interface card 20 has failed. The second processor 60 generates path switching notification data. This data includes a fault node identifier field and a target node identifier field. The second processor 60 then sends the path switching notification data to the second interface card 70.
[0248] The second interface card 70 receives path switching notification data and converts it into an access switching request in network protocol format. The second network interface 80 sends the access switching request to the external host 50.
[0249] External host 50 changes its access point from the first network interface 30 to the second network interface 80 based on the access switching request. Subsequent business access and status management of external host 50 interact with the second processor 60 via the second network interface 80 and the second interface card 70.
[0250] Optionally, the second processor 60 may verify the operational status of the second interface card 70 and the second network interface 80 before sending the path switching notification data. The second processor 60 sends a status query command to the second interface card 70. If the second interface card 70 is in normal operating condition, it returns a normal status response to the second processor 60. After confirming that the second interface card 70 and the second network interface 80 are functioning normally, the second processor 60 generates the path switching notification data.
[0251] By adopting the technical solution of the above embodiments, the first processor detects the heartbeat information of the first interface card and notifies the second processor when an anomaly is detected. The second processor generates path switching notification data and sends an access switching request to the external host via the second interface card and the second network interface. The external host switches its access entry to the second network interface according to the access switching request. The above technical solution enables the management device to automatically trigger access path switching when the first interface card fails. The external host continues to access the managed device and obtain status information through the second network interface, realizing access path redundancy in the interface card failure scenario and ensuring the continuity of service access and status management.
[0252] Based on the above embodiments, as an optional embodiment, the second processor 60 can also be used to obtain the heartbeat information of the first processor 10.
[0253] The second processor 60 can also be used to generate processor fault notification information when the heartbeat information of the first processor 10 indicates an abnormality.
[0254] The second interface card 70 can also be used to convert processor fault notification information into access switching requests in network protocol format.
[0255] The second network interface 80 can also be used to send an access switching request to the external host 50, so that the external host 50 changes the access entry from the first network interface 30 to the second network interface 80, and performs business access and status management with the second processor 60 and the managed device 40 via the second interface card 70.
[0256] For example, the second processor 60 periodically acquires the heartbeat information of the first processor 10. Communication between the second processor 60 and the first processor 10 is achieved through the second serial port 92 and the first serial port 91. After determining that the heartbeat information indicates an abnormality, the second processor 60 generates a processor fault notification message and sends it to the second interface card 70.
[0257] External host 50 switches the access entry point from the first network interface 30 to the second network interface 80 according to the access switching request.
[0258] By adopting the technical solution of the above embodiments, the second processor detects the heartbeat information of the first processor and triggers access path switching when an anomaly is detected. The external host continues to access the managed device through the second network interface and the second processor, thus realizing access path redundancy in the case of processor failure.
[0259] Figure 6 This is one of the structural schematic diagrams of the storage chassis provided in the embodiments of this application.
[0260] like Figure 6 As shown, the storage chassis 600 may include a management device 100 and a plurality of storage devices 610. The processor in the management device 100 is communicatively connected to the plurality of storage devices 610.
[0261] For example, the storage chassis 600 may be an EBOF device. The multiple storage devices 610 may be solid-state drives, hard disk drives, or other types of non-volatile storage devices. Both the first processor 10 and the second processor 60 in the management device 100 establish communication connections with the multiple storage devices 610.
[0262] The management device 100 manages multiple storage devices 610 through the first processor 10 and the second processor 60. An external host 50 establishes a connection with the management device 100 through the first network interface 30 or the second network interface 80. The external host 50 performs business access and status management of the multiple storage devices 610 through the management device 100.
[0263] The first processor 10 in the management device 100 creates a first logical device. The first interface card 20 acquires the first identification information of the first logical device and the second identification information of the multiple storage devices 610, and encapsulates the first identification information and the second identification information into first target data. The first network interface 30 sends the first target data to the external host 50. The external host 50 establishes communication connections with the first logical device and the multiple storage devices 610 respectively based on the first target data.
[0264] It should be noted that the specific process by which the management device 100 in the storage chassis 600 manages the multiple storage devices 610 can be referred to the relevant content of the management device 100 in the above embodiment, and will not be elaborated on here.
[0265] By adopting the technical solution of the above embodiments, the storage chassis can achieve unified management of multiple storage devices through the management device. The external host can realize business access and status management of the storage devices through a single network interface, without the need to configure a separate management network and management interface for the management function, thus reducing the hardware complexity and deployment cost of the storage chassis.
[0266] Figure 7 This is a second schematic diagram of the structure of the storage chassis provided in an embodiment of this application.
[0267] like Figure 7 As shown, the storage chassis 600 may also include a backplane 620, which is communicatively connected to multiple storage devices 610.
[0268] The management device 100 establishes a communication connection with multiple storage devices 610 via a backplane 620.
[0269] Sensors are installed on the back panel 620 to collect status information of multiple storage devices 610.
[0270] For example, the backplane 620 may be a printed circuit board disposed inside the storage chassis 600. The backplane 620 is provided with multiple storage device slots. Multiple storage devices 610 are respectively inserted into their corresponding storage device slots, and establish electrical and communication connections with the backplane 620 through the slots.
[0271] The management device 100 is connected to the backplane 620 via a bus interface. The first processor 10 and the second processor 60 in the management device 100 interact with multiple storage devices 610 via the bus on the backplane 620. The first processor 10 sends access commands and management instructions to the multiple storage devices 610 via the backplane 620. The multiple storage devices 610 return data and status information to the first processor 10 via the backplane 620.
[0272] The sensors mounted on the backplane 620 include one or more of the following: a temperature sensor, a voltage sensor, and a current sensor. The temperature sensor is used to collect the ambient temperature of the backplane 620 or the temperature data of the multiple storage devices 610. The voltage sensor is used to collect the power supply voltage data on the backplane 620. The current sensor is used to collect the operating current data of the multiple storage devices 610.
[0273] The sensor transmits the collected status information to the management device 100. The first processor 10 reads the status information from the sensor and stores it in the management cache area. The first processor 10 encapsulates the status information into a management interface data format. When the external host 50 sends a status management request to the management device 100 through the first network interface 30, the first processor 10 returns the status information collected by the sensor to the external host 50.
[0274] Optionally, the backplane 620 may include multiple bus channels. The first processor 10 is connected to a portion of the storage devices 610 via a first bus channel. The second processor 60 is connected to another portion of the storage devices 610 via a second bus channel. The first processor 10 and the second processor 60 respectively manage the storage devices 610 on different bus channels.
[0275] Optionally, the sensor can periodically collect status information and actively report it to the management device 100. The sensor repeatedly performs the status information collection operation according to a preset collection cycle. When the sensor detects that the status information exceeds a preset threshold, it immediately sends an alarm message to the management device 100.
[0276] It should be noted that the backplane 620 can provide a unified power supply interface and data interface for multiple storage devices 610. A power management module is provided on the backplane 620 for distributing and regulating the power supply voltage to the multiple storage devices 610. Signal amplification devices are also provided on the backplane 620 to enhance the signal transmission quality between the management device 100 and the multiple storage devices 610.
[0277] By adopting the technical solution of the above embodiments, the storage chassis achieves unified connection between the management device and multiple storage devices through a backplane. Sensors installed on the backplane collect status information of multiple storage devices and transmit it to the management device. The above technical solution simplifies the connection structure between the management device and multiple storage devices, and enables real-time monitoring of the operating status of the storage devices through sensors on the backplane.
[0278] Figure 8 This is a schematic diagram of the structure of a storage access system provided in an embodiment of this application.
[0279] like Figure 8 As shown, the storage access system 800 may include a storage chassis 600 and an external host 50.
[0280] Storage chassis 600 can be used to send the first target data;
[0281] The external host 50 can be used to receive the first target data, which is used to establish a communication connection between the external host 50 and the storage chassis 600.
[0282] For example, the storage chassis 600 sends first target data to the external host 50 via the first network interface 30. The first target data includes first identification information of a first logical device in the storage chassis 600 and second identification information of multiple storage devices 610. The external host 50 receives the first target data and parses the first and second identification information.
[0283] The external host 50 identifies accessible device objects in the storage chassis 600 based on the first target data. The external host 50 establishes a communication connection with the management device 100 via the first logical device based on the first identification information. The external host 50 establishes communication connections with multiple storage devices 610 via the management device 100 based on the second identification information.
[0284] After establishing a communication connection with the storage chassis 600, the external host 50 can perform service access and status management operations. The external host 50 sends service access requests to the storage chassis 600, including read data requests and write data requests. The management device 100 in the storage chassis 600 receives the service access requests and converts them into internal instructions. The first processor 10 in the management device 100 accesses the corresponding storage device 610 according to the internal instructions.
[0285] External host 50 sends status management requests, including query requests and control requests, to storage chassis 600. Management device 100 in storage chassis 600 receives the status management requests and obtains the corresponding status information. Management device 100 encapsulates the status information into management response data and returns it to external host 50.
[0286] Optionally, the external host 50 can be a server, workstation, or computing node. The external host 50 is connected to the storage chassis 600 via a high-speed network. The network connection between the external host 50 and the storage chassis 600 can be Ethernet, fiber optic network, or high-speed interconnect network.
[0287] Optionally, the storage access system 800 may include multiple external hosts 50. Multiple external hosts 50 simultaneously establish communication connections with the storage chassis 600. The management device 100 in the storage chassis 600 assigns a unique access path identifier to each external host 50. The management device 100 distinguishes access requests from different external hosts 50 based on the access path identifier.
[0288] It should be noted that the external host 50 can install storage device drivers on its local operating system. These drivers are used to map the storage device 610 in the storage chassis 600 to a local device object on the external host 50. Applications on the external host 50 can access the local device object through a standard file system interface, enabling transparent access to the remote storage device 610.
[0289] It should be noted that the storage chassis 600 can periodically send the first target data to the external host 50. When the storage chassis 600 detects a change in device topology, it regenerates the first target data and sends it to the external host 50. Device topology changes include hot-plugging of the storage device 610, device failure, or changes in device status.
[0290] It should be noted that the specific process of the storage chassis 600 generating and sending the first target data in the storage access system 800, the specific method of the external host 50 establishing a communication connection with the storage chassis 600, and the specific process of the external host 50 performing business access and status management of the storage device 610 can be referred to the relevant content of the management device 100 and the storage chassis 600 in the above embodiments, and will not be elaborated on here.
[0291] By adopting the technical solution of the above embodiments, the storage access system sends first target data containing device identification information to an external host through the storage chassis. The external host establishes a communication connection with the storage chassis based on the first target data and performs service access and status management. The above technical solution enables the external host to simultaneously perform data access and management operations on the storage device through a single network connection, without the need to establish separate service networks and management networks, thus simplifying the network architecture and deployment process of the storage access system.
[0292] Figure 9 This is a flowchart illustrating the device management method provided in an embodiment of this application.
[0293] This equipment management method can be applied to the aforementioned management devices. For example... Figure 9As shown, the device management method may specifically include the following steps.
[0294] Step S901: Create a first logical device for the first processor; the first logical device is used to give the first processor identifiable device attributes.
[0295] Step S902: Obtain the first identification information of the first logical device and the second identification information of the device to be managed, and encapsulate the first identification information and the second identification information into accessible first target data through protocol conversion; the first target data is used for external hosts to establish communication connections with the first processor and with the device to be managed through the first logical device.
[0296] Step S903: Send first target data transmitted via the first interface card so that the external host can perform business access and status management of the managed device through the first processor.
[0297] It should be noted that the specific implementation of creating the first logical device, the detailed process of obtaining and encapsulating device identification information, and the specific process of establishing a communication connection with the external host and performing business access and status management in the device management method can be referred to the relevant content of the management device in the above embodiments, and will not be elaborated on here.
[0298] By adopting the technical solution of the above embodiments, the device management method creates a first logical device, enabling the first processor to possess identifiable device attributes. Through protocol conversion, it encapsulates the identification information of the first logical device and the device to be managed into first target data and sends it to an external host. This allows the external host to simultaneously access services and manage the status of the device to be managed through a single network interface. The above technical solution eliminates the physical isolation requirement between the management access path and the service access path, eliminates the need to configure a separate management network and management interface for management functions, reduces system hardware complexity and deployment costs, and improves operational flexibility.
[0299] Embodiments of this application also provide an electronic device, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to run the computer program to perform the steps in any of the device management method embodiments described above.
[0300] Embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps in any of the above-described device management method embodiments when it is run.
[0301] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.
[0302] Embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the above-described device management method embodiments.
[0303] Embodiments of this application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps in any of the above-described device management method embodiments.
[0304] Any of the components, modules, units, parts, methods, and operations described herein can be implemented using software, firmware images, hardware (e.g., fixed logic circuit systems), manual processing, or any combination thereof. Alternatively or additionally, any functionality described herein can be executed at least in part by one or more hardware logic components, such as, but not limited to, a central processing unit (CPU), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), an application-specific standard product (ASSP), a system-on-a-chip (SoC), a complex programmable logic device (CPLD), a microprocessor (MCU), etc. The terms "system," "computing device," or "apparatus" as described herein encompass various means, devices, and machines for processing data, including, for example, one or more programmable processors, computers, SoCs, or combinations thereof. The apparatus may also include code that creates an execution environment for the computer program in question, such as code constituting a processor firmware image, a protocol stack, a database management system, an operating system, a cross-platform runtime environment, a virtual machine, or one or more combinations thereof. The aforementioned computer program (also known as a program, software, software application, app, script, or code) can be written in any form of programming language, including compiled or interpreted languages, declarative or procedural languages, and can be deployed in any form, including as a standalone program or as a module, component, subroutine, object, or other unit suitable for a computing environment.
[0305] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0306] The foregoing has provided a detailed description of a management device, method, storage chassis, and storage access system provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are merely for the purpose of helping to understand the method and core ideas of this application. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from the principles of this application, and these improvements and modifications also fall within the protection scope of the claims of this application.
Claims
1. A management device, characterized in that, The management device is used to manage the equipment to be managed, including: A first processor, communicatively connected to the device to be managed, is used to create a first logical device for the first processor; the first logical device is used to enable the first processor to have identifiable device attributes. A first interface card, communicatively connected to the first processor, is used to acquire first identification information of the first logical device and second identification information of the device to be managed, and encapsulate the first identification information and the second identification information into accessible first target data through protocol conversion; the first target data is used for an external host to establish a communication connection with the first processor and the device to be managed through the first logical device. The first network interface is communicatively connected to the first interface card and is used to send the first target data transmitted via the first interface card, so that the external host can perform service access and status management of the managed device via the first processor.
2. The management device according to claim 1, characterized in that, The first interface card is also used for: Scan devices on the bus connected to the first processor; In response to the identification of the first logical device, the first identification information of the first logical device is obtained, and a first network access address is assigned to the first logical device; In response to the identification of the device to be managed, the second identification information of the device to be managed is obtained, and a second network access address is assigned to the device to be managed.
3. The management device according to claim 2, characterized in that, The first interface card is also used for: The first identification information of the first logical device and the first network access address are encapsulated into a first data unit; The second identification information of the device to be managed and the second network access address are encapsulated into a second data unit; The communication protocol of the first data unit and the second data unit is converted into a network communication protocol that the external host can recognize to obtain the first target data.
4. The management device according to claim 1, characterized in that, The first network interface is also used for: Receive a discovery command sent by an external host based on the first target data; The first interface card is also used for: In response to the discovery command, a device list is generated; the device list includes a first list of the first logical devices and a second list of the devices to be managed. The first network interface is also used for: The device list is sent to the external host so that the external host can establish communication connections with the first logical device and the device to be managed based on the device list; The first list includes the first identification information, the first network access address, and the first port information of the first logical device; the second list includes the second identification information, the second network access address, and the second port information of the device to be managed.
5. The management device according to claim 1, characterized in that, The first network interface is further configured to: receive a target request sent by the external host based on the communication connection established with the first logical device; The first interface card is also used to: parse the target request into internal instructions recognizable by the first processor; The first processor is further configured to: generate response data in response to the internal instructions; The first interface card is also used to: convert the response data into target response data in a network communication protocol format that the external host can recognize; The first network interface is also used to send the target response data to the external host.
6. The management device according to claim 5, characterized in that, The target request includes a connection request; The first network interface is also used to: receive the connection request; The first interface card is further configured to: determine the target connection object indicated by the connection request, wherein the target connection object is at least one of the plurality of devices to be managed; The first processor is further configured to: establish an access path with the target connection object; The first interface card is also used to: generate connection response data according to the access path; The first network interface is further configured to: send the connection response data to an external host; the connection response data is used by the external host to create a local device object, the local device object being associated with the device to be managed, so that the external host can access the device to be managed through the access path via the local device object.
7. The management device according to claim 6, characterized in that, The devices to be managed include storage devices; The first network interface is further configured to: receive a service access request sent by the external host for the storage device; the service access request includes a read data request; The first interface card is also used to: convert the read data request into a read instruction; The first processor is further configured to: in response to the read instruction, acquire data stored in the storage device indicated by the read instruction; The first interface card is also used to: cache the stored data and generate read response data based on the stored data; The first network interface is also used to send the read response data to the external host.
8. The management device according to claim 6, characterized in that, The devices to be managed include storage devices; The first network interface is further configured to: receive a service access request sent by the external host for the storage device; the service access request includes a write data request; The first interface card is further configured to: convert the write data request into a write instruction, and cache the write data in the write data request; The first processor is further configured to: in response to the write instruction, write the write data into the storage device indicated by the write instruction; The first interface card is further configured to: generate write response data when the first processor has completed writing the write data; The first network interface is also used to send the write response data to the external host.
9. The management device according to claim 5, characterized in that, The first network interface is further configured to: receive a status management request sent by the external host; the status management request includes a query request; The first interface card is also used to: convert the query request into a query instruction; The first processor is further configured to: in response to the query instruction, obtain the status information of the device to be managed indicated by the query instruction; The first interface card is also used to: convert the status information into management response data; The first network interface is also used to send the management response data to the external host.
10. The management device according to claim 5, characterized in that, The first network interface is further configured to: receive a status management request sent by the external host; the status management request includes a control request; The first interface card is also used to: convert the control request into control instructions; The first processor is further configured to: change the status value of the managed device indicated by the control command in response to the control command.
11. The management device according to claim 1, characterized in that, The first processor is also used for: Acquire the status data of the device to be managed; the status data includes at least one of temperature data, voltage data, power status data, and alarm data; The status data is converted into status identifiers and status values to obtain the status information of the device to be managed.
12. The management device according to claim 6, characterized in that, The first interface card also includes a storage area; The first interface card is also used to: write the multiple service access requests into the storage area when multiple service access requests are received; Based on the priority of each of the multiple service access requests, the multiple service access requests are processed sequentially.
13. The management device according to claim 1, characterized in that, Also includes: The second processor is communicatively connected to the first processor and the device to be managed, and is used to create a second logical device for the second processor; The second interface card is communicatively connected to the second processor and is used to obtain the third identification information of the second logic device and encapsulate the third identification information into accessible second target data through protocol conversion. The second target data is used to enable an external host to establish a communication connection with the second processor through the second logical device; The second network interface is communicatively connected to the second interface card and is used to send the second target data to an external host.
14. The management device according to claim 13, characterized in that, The first processor is further configured to: acquire the status information of the device to be managed, and send the status information to the second processor.
15. The management device according to claim 13, characterized in that, The first processor is further configured to: acquire the heartbeat information of the first interface card; If the heartbeat information of the first interface card is abnormal, an interface card fault notification message is sent to the second processor; The second processor is further configured to: generate path switching notification data in response to the interface card fault notification information; The second interface card is also used to: convert the path switching notification data into an access switching request in network protocol format; The second network interface is also used to: send the access switching request to the external host, so that the external host changes the access entry point from the first network interface to the second network interface, and performs service access and status management with the second processor and the managed device via the second interface card.
16. The management device according to claim 13, characterized in that, The second processor is further configured to: acquire the heartbeat information of the first processor; If the heartbeat information of the first processor indicates an abnormality, a processor fault notification message is generated; The second interface card is also used to: convert the processor fault notification information into an access switching request in network protocol format; The second network interface is also used to: send the access switching request to the external host, so that the external host changes the access entry point from the first network interface to the second network interface, and performs service access and status management with the second processor and the managed device via the second interface card.
17. A storage chassis, characterized in that, include: Multiple storage devices; The management device as described in any one of claims 1-16, wherein the processor in the management device is communicatively connected to the plurality of storage devices.
18. The storage chassis according to claim 17, characterized in that, Also includes: Backplane, which is communicatively connected to the plurality of storage devices; The management device establishes a communication connection with the plurality of storage devices via the backplane; The backplane is equipped with sensors for collecting status information of the multiple storage devices.
19. A storage access system, characterized in that, include: The storage chassis as described in claim 17 or 18 is used to transmit the first target data; An external host is used to receive the first target data, which is used to establish a communication connection between the external host and the storage chassis.
20. A method for managing equipment, characterized in that, The device management method, applied to the management device as described in any one of claims 1-16, comprises: A first logical device is created for the first processor; the first logical device is used to give the first processor identifiable device attributes. The system acquires the first identification information of the first logical device and the second identification information of the device to be managed, and encapsulates the first identification information and the second identification information into accessible first target data through protocol conversion; the first target data is used to enable an external host to establish a communication connection with the first processor through the first logical device, and to establish a communication connection with the device to be managed. The first target data transmitted via the first interface card is sent so that the external host can access the managed device and manage its status via the first processor.
Citation Information
Patent Citations
Main control board card and service board card of access layer network equipment
CN118250111A
Method, device and equipment for accessing platform environment control interface out of band, and medium
CN118445242A