CN112100115B - Multi-device management method based on Openmmc - Google Patents
Multi-device management method based on Openmmc Download PDFInfo
- Publication number
- CN112100115B CN112100115B CN202010819044.2A CN202010819044A CN112100115B CN 112100115 B CN112100115 B CN 112100115B CN 202010819044 A CN202010819044 A CN 202010819044A CN 112100115 B CN112100115 B CN 112100115B
- Authority
- CN
- China
- Prior art keywords
- command
- openmmc
- host
- forwarding
- slave
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0016—Inter-integrated circuit (I2C)
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Small-Scale Networks (AREA)
- Information Transfer Systems (AREA)
Abstract
The invention discloses a multi-device management method based on Openmmc, which comprises the following specific steps: s1, a host system sends a command to a host Openmmc through a serial port; s2, after receiving the command, the host Openmmc judges the type of the command; s3, when the command is a forwarding command, feeding back to the host system; s4, the host Openmmc forwards the command to the slave Openmmc; s5, the slave Openmmc executes the command and feeds back the host Openmmc; s6, feeding back the host system by the host Openmmc through the serial port. The invention improves the monitoring thread and command function of Openmmc, and realizes the forwarding of commands through the improved Openmmc. The invention realizes the control and management of one host to multiple devices by accessing multiple devices or hosts into the I2C bus and forwarding the commands.
Description
Technical Field
The invention relates to the technical field of computers, in particular to an Openmmc-based multi-device management method.
Background
IPMI is an abbreviation for intelligent platform management interface (Intelligent Platform Management Interface), an industry standard adopted to manage peripheral devices used in Intel-based enterprise systems. Openmmc is an open source software based on IPMI, which runs on a microcontroller, interacts with a host system through a serial port, has a stand-alone management function, and can control the on-off or restarting actions of the host system or acquire the sensor values of the host system through Openmmc.
Now, to expand the Openmmc function, the transmission and the reception of commands are expanded to the forwarding of commands, so as to realize the management of multiple devices, so as to adapt to more application scenarios.
The reference is a standard in IPMI for command transmission and reception.
The structure of the sending command and the receiving response data is shown in fig. 1, hereinafter referred to as a "command structure", and fields are explained as follows: rsAddr is the responder address, rqAddr is the requester address, and the netFn and cmd fields are used to specify the function that processes the data, with databytes containing the specific behavior of the command.
Disclosure of Invention
The invention aims to provide an Openmmc-based multi-device management method, which realizes the forwarding of commands by means of IPMI standards and I2C channels, and achieves the device control of a host to a slave.
In order to achieve the above object, the present invention provides a multi-device management method based on Openmmc, which specifically includes the steps of:
s1, a host system sends a command to a host Openmmc through a serial port;
s2, after receiving the command, the host Openmmc judges the type of the command;
s3, when the command is a forwarding command, feeding back to the host system;
s4, the host Openmmc analyzes the command and sends the command to the slave Openmmc;
s5, the slave Openmmc executes the command and feeds back the host Openmmc;
s6, feeding back the host system by the host Openmmc through the serial port.
Further, in the step S2, the specific method is to judge the command type through netfn and cmd fields in the command, and when netfn=0x06 and cmd=0x34, the command type is a forwarding command.
Further, the Openmmc includes a monitor thread and a command processing function.
Further, the monitoring thread comprises a receiving monitoring thread and a sending monitoring thread, and the command processing functions comprise a general command processing function and a forwarding command processing function.
Further, in step S4, the command is parsed and sent to the slave Openmmc, which specifically includes:
S4A, a receiving monitoring thread of the host Openmmc transmits a forwarding command to a forwarding command processing function;
S4B, the forwarding command processing function acquires forwarding content from the forwarding command and transmits the forwarding content to the sending monitoring thread;
S4C, sending the monitoring thread to analyze the forwarding content, reconstructing the command and transmitting the command to the slave Openmmc.
Further, the forwarding content is a data field in the forwarding command, including a channel selection byte and data of a new command.
Further, the reconfiguration command is to split and fill the data of the new command into the command structure.
Further, the master and the slave are connected by an I2C bus, and the corresponding channel selection byte is I2C.
Further, the data of the new command includes an I2C address and a control command, where the I2C address is an address of the slave accessing the I2C bus, and the control command includes a startup and shutdown, a restart, and a sensor value acquisition.
Furthermore, the slaves have N stations which are all connected to the I2C bus, and the host Openmmc determines the target slaves for forwarding the command according to the I2C address.
Furthermore, the I2C bus is connected with N hosts, any host is selected as a control host, and the other hosts are used as slaves to realize the management of the hosts on a plurality of slaves.
The beneficial effects of the invention are as follows:
1. the monitoring thread of Openmmc is improved, so that the monitoring thread has the capabilities of judging forwarding and implementing forwarding, a forwarding command function is added, commands are analyzed and reconstructed, and the forwarding of the commands is realized through the improved Openmmc.
2. Through accessing a plurality of devices or hosts into an I2C bus, the forwarding of commands is realized by means of the I2C bus, and the control and management of one host to a plurality of devices are realized.
Drawings
Fig. 1 shows a prior art command structure.
Fig. 2 shows a flow chart of a master management slave.
Fig. 3 shows a block diagram of an embodiment of the invention.
Detailed Description
The preferred embodiments of the present invention will be described in detail below with reference to the accompanying drawings so that the advantages and features of the present invention can be more easily understood by those skilled in the art, thereby making clear and defining the scope of the present invention.
Referring to FIG. 1, a prior art command structure is shown to facilitate an understanding of the implementation details of the present invention.
Referring to fig. 2, in a preferred embodiment of the present invention, the management steps of the master device to the slave device are as follows:
s1, a host system sends a command to a host Openmmc through a serial port: the command is divided into a general command and a forwarding command, wherein the general command comprises a startup and shutdown state, a restarting state and a sensor value acquisition state, and the forwarding command is to forward one general command to a specific slave;
s2, after receiving the command, the host Openmmc judges the type of the command: when the command is a general command, the host Openmmc executes the command and feeds back the result to the host;
s3, when the command is a forwarding command, feeding back to the host system: the host Openmmc feeds back to the host system through the serial port, and informs the host system that the forwarding request is received through a data field in the command structure;
s4, the host Openmmc analyzes the command and sends the command to the slave Openmmc: the host Openmmc analyzes the forwarding command and forms a new general command and sends the new general command to the slave Openmmc;
s5, the slave Openmmc executes the command and feeds back the host Openmmc: the slave Openmmc executes the general command and feeds back the execution result, such as started, shut down, restarted or sensor and its corresponding value;
s6, feeding back the host system by the host Openmmc through the serial port: the host Openmmc informs the host system of the feedback result of the slave, so as to realize the management of the slave equipment by the host.
Specifically, openmmc includes a monitor thread and a command processing function, the monitor thread includes a receive monitor thread and a transmit monitor thread, and the command processing function includes a general command processing function and a forward command processing function.
Specifically, in the process that the host command is transmitted to the slave, the workflow of the host Openmmc is as follows: receiving a command received by a monitoring thread, and judging the type of the command according to netfn and cmd fields; when netfn=0x06, cmd=0x34, the command type is a forwarding command, and the command is transferred to a forwarding command processing function; when the command is not a forwarding command, passing the command to a general command processing function; the forwarding command processing function acquires forwarding content from the data field of the command, wherein the forwarding content comprises channel selection bytes and data of a new command, and the data is transmitted to a sending monitoring thread; and the sending monitoring thread splits and fills the data of the new command into the command structure body, and sends the data to the slave Openmmc through a channel designated by the channel selection character.
Specifically, I2C may be selected as a management channel of the host to the slave device, where both the host and the slave access the I2C bus, the corresponding channel selects the byte as I2C, the data of the new command includes an I2C address and a general command, the I2C address is an address of the slave accessing the I2C bus, and the general command includes startup and shutdown, restarting, and acquiring a sensor value.
Specifically, the slaves may have N slaves, all connected to the I2C bus, and the host Openmmc determines the target slave for forwarding the command according to the I2C address.
Referring to fig. 3, when N hosts are connected to the I2C bus, any host may be selected as a control host, so as to implement management of other devices.
The invention has the advantages that the monitoring thread of Openmmc is improved, so that the monitoring thread has the capabilities of judging and forwarding and implementing forwarding, a forwarding command function is added, the command is analyzed and reconstructed, and the command is forwarded through the improved Openmmc. Through accessing a plurality of devices or hosts into an I2C bus, the forwarding of commands is realized by means of the I2C bus, and the control and management of one host to a plurality of devices are realized. The actual measurement host system obtains the information of the slave sensor through forwarding the command, and the speed difference between the actual measurement host system and the slave system directly obtaining the information of the slave sensor is not large, so that the requirements can be met.
The foregoing description is only illustrative of the present invention and is not intended to limit the scope of the invention, and all equivalent structures or equivalent processes or direct or indirect application in other related technical fields are included in the scope of the present invention.
Claims (11)
1. The multi-device management method based on Openmmc is characterized by comprising the following specific steps:
s1, a host system sends a command to a host Openmmc through a serial port;
s2, after receiving the command, the receiving monitoring thread of the host Openmmc judges the type of the command;
s3, when the command is a forwarding command, feeding back to the host system;
s4, the sending monitoring thread of the host Openmmc analyzes the command and sends the command to the slave Openmmc;
s5, the slave Openmmc executes the command and feeds back the host Openmmc;
s6, feeding back the host system by the host Openmmc through the serial port.
2. The Openmmc-based multi-device management method of claim 1, characterized in that: in the step S2, the specific method is to judge the command type through netfn and cmd fields in the command, and when netfn=0x06 and cmd=0x34, the command type is a forwarding command.
3. The Openmmc-based multi-device management method of claim 1, characterized in that: the Openmmc includes a monitor thread and a command processing function.
4. The Openmmc-based multi-device management method of claim 3, characterized in that: the monitoring thread comprises a receiving monitoring thread and a sending monitoring thread, and the command processing functions comprise a general command processing function and a forwarding command processing function.
5. The Openmmc-based multi-device management method of claim 4, characterized in that: in step S4, the command is parsed and sent to the slave Openmmc, which specifically includes the steps of:
S4A, a receiving monitoring thread of the host Openmmc transmits a forwarding command to a forwarding command processing function;
S4B, the forwarding command processing function acquires forwarding content from the forwarding command and transmits the forwarding content to the sending monitoring thread;
S4C, sending the monitoring thread to analyze the forwarding content, reconstructing the command and transmitting the command to the slave Openmmc.
6. The Openmmc-based multi-device management method of claim 5, characterized in that: the forwarding content is a data field in the forwarding command, and comprises channel selection bytes and data of a new command.
7. The Openmmc-based multi-device management method of claim 5, wherein the reconfiguration command is to split and fill data of a new command into a command structure.
8. The method of claim 6, wherein the master and the slave are connected by an I2C bus, and the corresponding channel selection byte is I2C.
9. The method of claim 8, wherein the new command data includes an I2C address and a control command, the I2C address is an address of a slave machine accessing an I2C bus, and the control command includes a start-up and shut-down, a restart and a sensor value acquisition.
10. The method of claim 9, wherein the slaves have N slaves each connected to the I2C bus, and the host Openmmc determines the target slave for forwarding the command according to the I2C address.
11. The method of claim 8, wherein N hosts are connected to the I2C bus, any one host is selected as a control host, and the remaining hosts are used as slaves to realize the management of the plurality of slaves.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010819044.2A CN112100115B (en) | 2020-08-14 | 2020-08-14 | Multi-device management method based on Openmmc |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010819044.2A CN112100115B (en) | 2020-08-14 | 2020-08-14 | Multi-device management method based on Openmmc |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112100115A CN112100115A (en) | 2020-12-18 |
CN112100115B true CN112100115B (en) | 2023-07-28 |
Family
ID=73752961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010819044.2A Active CN112100115B (en) | 2020-08-14 | 2020-08-14 | Multi-device management method based on Openmmc |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112100115B (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1055341A (en) * | 1996-08-12 | 1998-02-24 | Fujitsu Ltd | Interface control system |
CN105468327A (en) * | 2016-01-12 | 2016-04-06 | 福建星网锐捷安防科技有限公司 | Large screen splicing display method, device and system |
CN205430732U (en) * | 2016-02-02 | 2016-08-03 | 陕西科技大学 | Configuration device based on DALI system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9367510B2 (en) * | 2013-11-26 | 2016-06-14 | American Megatrends, Inc. | Backplane controller for handling two SES sidebands using one SMBUS controller and handler controls blinking of LEDs of drives installed on backplane |
-
2020
- 2020-08-14 CN CN202010819044.2A patent/CN112100115B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1055341A (en) * | 1996-08-12 | 1998-02-24 | Fujitsu Ltd | Interface control system |
CN105468327A (en) * | 2016-01-12 | 2016-04-06 | 福建星网锐捷安防科技有限公司 | Large screen splicing display method, device and system |
CN205430732U (en) * | 2016-02-02 | 2016-08-03 | 陕西科技大学 | Configuration device based on DALI system |
Also Published As
Publication number | Publication date |
---|---|
CN112100115A (en) | 2020-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2530599B1 (en) | Method and mobile terminal for realizing audio transmission | |
CN106919485B (en) | System based on hardware testing tool configured on server | |
US20160196226A1 (en) | Method and Apparatuses for Monitoring System Bus | |
US11500666B2 (en) | Container isolation method and apparatus for netlink resource | |
CN109388526B (en) | Control circuit and reset operation method | |
TWI564794B (en) | Device provided script to convert command | |
CN110442506B (en) | Log acquisition method, device, service server, system and storage medium | |
CN112100115B (en) | Multi-device management method based on Openmmc | |
US20230297536A1 (en) | Host device communicating with electronic device and communication method of host device | |
CN116150054B (en) | Interrupt information processing method based on PCIE | |
CN107277107B (en) | Application debugging method, device and system | |
JP2023126702A (en) | Information processing device and data transfer method | |
US11314670B2 (en) | Method, apparatus, and device for transmitting file based on BMC, and medium | |
US11431782B2 (en) | Method, apparatus, and device for transmitting file based on BMC, and medium | |
CN115980554A (en) | Chip testing method and electronic equipment thereof | |
CN106708701B (en) | Central maintenance device and method based on ARINC659 bus | |
CN115933591A (en) | Controller diagnosis method, device, equipment and storage medium | |
CN106598599B (en) | A kind of execution method and apparatus of program | |
WO2018196223A1 (en) | Data processing method and relevant device | |
CN112637151B (en) | Data message transmission method, terminal device, server and storage medium | |
CN111026690B (en) | Star affair data processing equipment and method | |
US8214473B1 (en) | Apparatus, system, and method for communicating with a device within a computer system | |
CN113271175B (en) | Method, system and equipment for determining transmission scheme of HST-SFN | |
TW202002579A (en) | The control system and the method for the data fetching of the LAN in the IoT | |
CN114546928B (en) | Method and device for synchronizing core cluster, control method and device, core and medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |