Search

CN-120017619-B - Data communication method, system, electronic device, computer-readable storage medium, and computer program product

CN120017619BCN 120017619 BCN120017619 BCN 120017619BCN-120017619-B

Abstract

The invention discloses a data communication method, a data communication system, electronic equipment, a computer readable storage medium and a computer program product, and relates to the technical field of communication. The method comprises the steps of determining a target switch according to a routing mapping relation and access request carrying resource allocation information when the computing units of different computing nodes are accessed, determining an intermediate forwarding port according to the resource allocation information and the switch routing information of a source switch, and forwarding the access request to the target computing unit through the intermediate forwarding port, the target communication port and the target resource allocation information. The invention can solve the problems of large delay and hardware cost and low communication efficiency of the related technology, and can effectively improve the point-to-point communication efficiency in a large-scale data communication system without introducing additional delay and hardware cost.

Inventors

  • HU XUEQI
  • WANG HAO
  • ZHAI QINGWEI
  • LI JINFENG
  • WANG XINGLONG

Assignees

  • 浪潮电子信息产业股份有限公司

Dates

Publication Date
20260508
Application Date
20250314

Claims (14)

  1. 1. A data communication method, applied to a data communication system including at least two computing nodes, and having at least two computing nodes of a group of computing units in the system, the same group of computing units being connected to the same switch, comprising: When a source computing unit receives an access request to a target computing unit, determining resource allocation information of a target switch to which the target computing unit belongs according to a route mapping relation and target resource allocation information of the target computing unit carried by the access request, wherein the source computing unit and the target computing unit belong to different computing nodes; forwarding the access request to the target computing unit through the target communication port and the target resource allocation information; The routing mapping relationship is a corresponding relationship between host resource allocation information and switch resource allocation information of the same computing unit, the host resource allocation information is resource information allocated by a host for the computing unit, the switch resource allocation information is resource information allocated by a switch for the computing unit, and the switch routing information comprises port information corresponding to data communication paths among different switches; for the access between different computing units in the same computing node, the target resource allocation information is a part of or all of parameters in the target switch resource allocation information of the target computing unit, the source computing unit and the target computing unit belong to the same computing node but are not connected to the same switch, and the method further comprises: the method comprises the steps of determining resource allocation information of a target switch to which a target computing unit belongs according to the resource allocation information of the target switch and the route mapping relation, determining a target communication port for communicating between the source switch and the target switch according to switch route information of the source switch to which the source computing unit belongs, forwarding the access request to the target switch through the target communication port so that the target switch can send the access request to the target computing unit according to the resource allocation information of the target switch.
  2. 2. The method according to claim 1, wherein for a host to access a computing unit in the same computing node, the access request is issued for the host, the target resource allocation information is a part of or all of parameters in target host resource allocation information of the target computing unit, and further comprising: After receiving an access request of the host to a target computing unit, mapping the target host resource allocation information into target switch resource allocation information according to the target resource allocation information and the route mapping relation; And forwarding the access request to the target computing unit through the target switch according to the target switch resource allocation information.
  3. 3. The method according to claim 1, wherein switches of different groups of computing units are connected by a target bus, the determining an intermediate forwarding port according to the resource allocation information and switch routing information of a source switch corresponding to the source computing unit, and forwarding the access request to a target communication port of the target switch through the intermediate forwarding port, includes: acquiring a first port and a second port on a physical link of the target switch and the source switch, wherein the first port and the source switch belong to the same computing node; taking the first port as an intermediate forwarding port and the second port as a target communication port; forwarding the access request to the second port through the first port.
  4. 4. The data communication method according to claim 1, wherein at least two switches are not connected through a target bus, said determining an intermediate forwarding port according to the resource allocation information and the switch routing information of the source switch corresponding to the source computing unit, and forwarding the access request to the target communication port of the target switch through the intermediate forwarding port, comprises: The source switch is not connected with the target switch through a target bus, a target routing path communicated with the target switch is configured for the source switch in advance, the target routing path at least comprises a first port and a second port, the first port receives a request issued by the source switch, and the second port issues the request of the first port to the target switch; generating switch route information according to the target route path, and determining that the intermediate forwarding port is the first port and the target communication port is the second port according to the switch route information; forwarding the access request to the second port through the first port.
  5. 5. The method according to any one of claims 1 to 4, wherein the data communication system has at least a first computing node and a second computing node, the first computing node and the second computing node each deploy at least one group of computing units, the access request is an access request for the first computing node to access a target computing unit of the second computing node, the target resource allocation information is some or all parameters in target host resource allocation information of the target computing unit, and the method further comprises, after receiving the access request to the target computing unit: mapping the target host resource allocation information into target switch resource allocation information according to the target resource allocation information and the route mapping relation of the target computing unit; And forwarding the access request to the target computing unit through the target switch according to the target switch resource allocation information.
  6. 6. The method according to any one of claims 1 to 4, wherein the data communication system has at least a first computing node and a second computing node, the first computing node and the second computing node each deploy at least one group of computing units, the access request is an access request for a first target computing unit of the first computing node to access a second target computing unit of the second computing node, the target resource allocation information is some or all of parameters in second target host resource allocation information of the second target computing unit, and the method further comprises, after receiving the access request to the target computing unit: Determining an intermediate switch meeting preset conditions in each switch of the first computing node, and adjusting one port of the intermediate switch to be port identification information corresponding to an intermediate forwarding port in the switch routing information; determining resource allocation information of a second target switch connected with the second target computing unit according to the resource allocation information of the second target switch and the route mapping relation; Determining a first target communication port communicated with the second target switch according to switch route information of a first source switch to which the first target computing unit belongs, wherein the first target communication port is a port of an intermediate switch connected with the first source switch, the intermediate switch belongs to the first computing node, and the intermediate switch is connected with the second target switch; Forwarding the access request to the intermediate switch through the first target communication port, determining a second target communication port in communication with the second target switch through switch routing information of the intermediate switch, and forwarding the access request to the second target switch through the second target communication port to enable the second target switch to forward the access request to the target computing unit through the second target switch resource allocation information.
  7. 7. An electronic device, comprising: A memory for storing a computer program; a processor for implementing the steps of the data communication method according to any one of claims 1 to 6 when executing said computer program.
  8. 8. A computer-readable storage medium, characterized in that the computer-readable storage medium has stored thereon a computer program which, when executed by a processor, implements the steps of the data communication method according to any of claims 1 to 6.
  9. 9. A computer program product comprising computer programs/instructions which, when executed by a processor, implement the steps of the data communication method of any of claims 1 to 6.
  10. 10. A data communication system comprising a host having a first computing node, a second computing node, and a routing controller, the host storing host resource allocation information; The first computing node at least comprises a first switch and a second switch, wherein the first switch is at least connected with a first computing unit and a second computing unit, and the second switch is at least connected with a third computing unit and a fourth computing unit; The second computing node at least comprises a third switch and a fourth switch, wherein the third switch is at least connected with a fifth computing unit and a sixth computing unit, and the fourth switch is at least connected with a seventh computing unit and an eighth computing unit; The routing controller is configured to implement the steps of the data communication method according to any one of claims 1 to 6 when executing a computer program when the first computing node accesses each computing unit or accesses each other between computing units.
  11. 11. The data communication system of claim 10, wherein the first switch is further configured to enumerate each computing unit connected to obtain bus identification information of each computing unit, assign addresses to each computing unit to obtain switch addresses of each computing unit, populate the switch identification information of the first switch, the bus identification information of each computing unit, and the switch addresses to corresponding locations of a switch resource allocation table, and store as switch resource allocation information to a local place; the switch resource allocation table at least comprises switch identification information, computing unit bus identification information and computing unit switch addresses.
  12. 12. The data communication system of claim 10, wherein the host is further configured to enumerate internal computing units to obtain bus identification information of each computing unit during startup, assign addresses to each computing unit to obtain host addresses of each computing unit, populate host bus identification information and host addresses of each computing unit to corresponding locations of a host resource allocation table, and store as host resource allocation information; The host resource allocation table at least comprises computing unit host bus identification information and computing unit host addresses.
  13. 13. The data communication system of any of claims 10 to 12, wherein the first computing node and the second computing node each act as supernodes; The first computing node at least comprises a first root node and a second root node, wherein the first root node is connected with the first switch, the second root node is connected with the second switch, and the first switch is connected with the second switch; The second computing node at least comprises a third root node and a fourth root node, the third root node is connected with the third switch, the fourth root node is connected with the fourth switch, the fourth switch is connected with the third switch, the third switch is connected with the first switch, and the second switch is connected with the fourth switch.
  14. 14. The data communication system of claim 13, wherein the switch routing information of the first switch includes second switch communication routing information, third switch communication routing information, and fourth switch communication routing information; The second switch communication route information at least comprises second switch identification information and port information for communicating the first switch with the second switch, the third switch communication route information at least comprises third switch identification information and first intermediate conversion port information, and the fourth switch communication route information at least comprises fourth switch identification information and second intermediate conversion port information; The switch route information of the first target intermediate switch to which the first intermediate port corresponding to the first intermediate conversion port information belongs at least comprises communication route information between the third switch and the target intermediate switch, and the switch route information of the second target intermediate switch to which the second intermediate port corresponding to the second intermediate conversion port information belongs at least comprises communication route information between the fourth switch and the second target intermediate switch.

Description

Data communication method, system, electronic device, computer-readable storage medium, and computer program product Technical Field The present invention relates to the field of communications technologies, and in particular, to a data communication method, a system, an electronic device, a computer readable storage medium, and a computer program product. Background As the size of user data and the need for high-speed processing of data increases, different types of computing units are currently used together in the same computing system to perform tasks. Related art P2P (Point-to-Point) communication between computing units is implemented using PCIe (PERIPHERAL COMPONENT INTERCONNECT EXPRESS, high speed serial computer expansion bus) NTB (Non-TRANSPARENT BRIDGE ) technology. The method relies on complex logic of the NTB controller of PCIE SWITCH (switch) to map the remote node address space to the local address space through NTB to open a point-to-point access path. This cross-domain address mapping and interrupt mechanism introduces additional latency and hardware overhead, and is inefficient in communication. Disclosure of Invention The invention provides a data communication method, a system, electronic equipment, a computer readable storage medium and a computer program product, which not only do not need to introduce extra time delay and hardware expenditure, but also can effectively improve the point-to-point communication efficiency. In order to solve the technical problems, the invention provides the following technical scheme: In one aspect, the present invention provides a data communication method applied to a data communication system including at least two computing nodes, where at least two computing nodes include at least one group of computing units, and the same group of computing units are connected to the same switch, including: When a source computing unit receives an access request to a target computing unit, determining resource allocation information of a target switch to which the target computing unit belongs according to a route mapping relation and target resource allocation information of the target computing unit carried by the access request, wherein the source computing unit and the target computing unit belong to different computing nodes; forwarding the access request to the target computing unit again through the target communication port and the target resource allocation information; The routing mapping relationship is a correspondence relationship between host resource allocation information and switch resource allocation information of the same computing unit, the host resource allocation information is resource information allocated by a host for the computing unit, the switch resource allocation information is resource information allocated by a switch for the computing unit, and the switch routing information comprises port information corresponding to data communication paths among different switches. The invention also provides an electronic device comprising a memory and a processor for implementing the steps of any of the above data communication methods when executing a computer program stored in the memory. The invention also provides a computer readable storage medium having stored thereon a computer program which when executed by a processor performs the steps of any of the data communication methods described above. The present invention also provides a computer program product comprising computer programs/instructions which when executed by a processor implement the steps of any of the data communication methods described above. The invention finally provides a data communication system, which comprises a host with a first computing node, a second computing node and a routing controller, wherein the host stores host resource allocation information; The first computing node at least comprises a first switch and a second switch, wherein the first switch is at least connected with a first computing unit and a second computing unit, and the second switch is at least connected with a third computing unit and a fourth computing unit; The second computing node at least comprises a third switch and a fourth switch, wherein the third switch is at least connected with a fifth computing unit and a sixth computing unit, and the fourth switch is at least connected with a seventh computing unit and an eighth computing unit; The routing controller is configured to implement any one of the above data communication methods when executing a computer program when the first computing node accesses each computing unit or accesses each other among computing units. The technical scheme provided by the invention has the advantages that the resource information allocated by the exchanger to each connected computing unit corresponds to the resource information allocated by the host to all the computing units in the host, and the information of the exchanger connected to the comput