CN109634902B - Data transmission method, device and system suitable for PCIE bus - Google Patents

Data transmission method, device and system suitable for PCIE bus Download PDF

Info

Publication number
CN109634902B
CN109634902B CN201811557916.1A CN201811557916A CN109634902B CN 109634902 B CN109634902 B CN 109634902B CN 201811557916 A CN201811557916 A CN 201811557916A CN 109634902 B CN109634902 B CN 109634902B
Authority
CN
China
Prior art keywords
node
credit
data
bitmap
transmitted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811557916.1A
Other languages
Chinese (zh)
Other versions
CN109634902A (en
Inventor
马敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ruijie Networks Co Ltd
Original Assignee
Ruijie Networks Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ruijie Networks Co Ltd filed Critical Ruijie Networks Co Ltd
Priority to CN201811557916.1A priority Critical patent/CN109634902B/en
Publication of CN109634902A publication Critical patent/CN109634902A/en
Application granted granted Critical
Publication of CN109634902B publication Critical patent/CN109634902B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention provides a data transmission method, a device and a system suitable for a PCIE bus, which relate to the technical field of computers, and the method applied to a first node comprises the following steps: acquiring a credit matched with the data to be transmitted from a credit image of a second node stored locally; wherein the credit image is used for characterizing a credit pool of the second node for the first node, the credit number of the credit pool is determined according to the performance of the first node and the second node, and the credit is used for indicating the memory address information of the second node; and sending the data to be transmitted to the memory space of the second node indicated by the credit matched with the data to be transmitted through the PCIE bus. Compared with the prior art, the method reduces the coupling among the nodes, can be well suitable for the distributed router platform with multiple forwarding nodes with various characteristics, and can enable the forwarding performance among the high-performance nodes to be exerted to the maximum.

Description

Data transmission method, device and system suitable for PCIE bus
Technical Field
The present invention relates to the field of computer technologies, and in particular, to a data transmission method, apparatus, and system suitable for a PCIE bus.
Background
The PCIE bus is a new generation of input/output (I/O) local bus standard, and is a revolutionary bus architecture that replaces the PCI bus, which is used in large scale in processor systems. Compared with a PCI bus, the PCIE bus adopts a unique dual-channel transmission mode, which is similar to a full duplex mode, and the data transmission speed is greatly improved; meanwhile, a point-to-point interconnection technology is adopted, and a flexible topological structure can be realized through equipment such as a Switch (Switch); in addition, some technologies used in network communication, such as supporting multiple data routing modes, are also used in the PCIE bus, and the Quality of Service (QoS) problem occurring in data transmission is fully considered.
The architecture based on the PCIE bus mainly includes a Root Component (RC), a Switch (Switch), and various end devices (EP, Endpoint). The RC mainly completes address conversion from a memory domain to a PCIE bus domain, and a downstream port of the RC can be connected with a switch to expand more PCIE ports or directly connected with an EP. The switch mainly plays a role of an expansion system, supports an upper port and a plurality of lower ports, can exchange data between the ports, and can perform link expansion through the switch bridging and the PCIE bus.
The existing forwarding scheme based on PCIE generally uses virtual channels to forward, and peer virtual channels are established between the transceiver line cards to perform packet transmission, but the types of line cards in the router are many, the performance difference is large, and the scheme using the virtual channels can limit the forwarding efficiency between the high-performance line cards, thereby affecting the overall forwarding efficiency.
Disclosure of Invention
The invention provides a data transmission method and device suitable for a PCIE bus, which are used for solving the problem that the scheme of using a virtual channel in the prior art can limit the forwarding efficiency between high-performance line cards.
In a first aspect, an embodiment of the present invention provides a data transmission method applicable to a PCIE bus, where the method is applied to a first node, and the method includes:
acquiring a credit matched with the data to be transmitted from a credit image of a second node stored locally; wherein the credit image is used for characterizing a credit pool of the second node for the first node, the credit number of the credit pool is determined according to the performance of the first node and the second node, and the credit is used for indicating the memory address information of the second node;
and sending the data to be transmitted to the memory space of the second node indicated by the credit matched with the data to be transmitted through the PCIE bus.
In the embodiment of the invention, when a first node sends data to be transmitted to a second node, a credit matched with the data to be transmitted needs to be acquired from a credit image of the second node, one credit represents memory address information stored in the second node, the first node determines a storage space corresponding to the data to be transmitted aiming at the credit image of a credit pool of the first node through the second node stored locally, and the number of credits in the credit pool of the second node for said first node is determined according to the performance of the first node and the second node, compared with the prior art that the data transmission is carried out by the first node and the second node through the virtual channel with fixed performance, the coupling between the nodes is reduced, the method can be well suitable for the distributed router platform with multiple forwarding nodes with various characteristics, and can enable the forwarding performance among the high-performance nodes to be exerted to the maximum.
Further, before the obtaining the credit matched with the data to be transmitted from the locally stored credit image of the second node, the method further includes:
receiving a credit image which is sent by a second node and corresponds to a credit pool of the first node by the second node, and storing the credit image.
In the embodiment of the invention, the received credit image sent by the second node is stored so as to be called when the credit is acquired.
Further, the method further comprises:
receiving and storing a credit bitmap which is sent by the second node and corresponds to the credit image, wherein the credit bitmap is used for marking the use state of the second node for the credit in the credit pool of the first node;
correspondingly, after the data to be transmitted is sent to the memory space of the second node indicated by the credit matched with the data to be transmitted through the PCIE bus, the method further includes:
and updating the credit bitmap of the second node and sending the updated credit bitmap to the second node, wherein the updated credit bitmap is used for indicating that the first node has sent the data to be transmitted completely.
In the embodiment of the invention, the credit state in the credit pool of the node is indicated through the credit bitmap, and the updated bitmap is used for informing the second node that the data to be transmitted is completely transmitted.
Further, after sending the updated credit bitmap to the second node, the method further includes:
receiving a credit bitmap which is sent by the second node and is updated by the second node;
and updating the credit image of the second node stored locally and the credit bitmap corresponding to the credit image according to the updated credit bitmap of the second node.
In the embodiment of the present invention, after updating the credit bitmap, the second node needs to send the credit bitmap to the first node, so that the first node can update the credit image and the credit bitmap which are stored locally according to the credit bitmap.
Further, the obtaining the credit matched with the data to be transmitted from the locally stored credit image of the second node includes:
and acquiring the credit matched with the data to be transmitted from a locally stored credit image of the second node according to the priority order of the data to be transmitted.
In the embodiment of the invention, the data to be transmitted with high priority is ensured to be sent preferentially by applying the corresponding credit according to the priority in consideration of different priorities in the data to be transmitted.
Further, before the obtaining of the credit matched with the data to be transmitted according to the priority order of the data to be transmitted from the locally stored credit image of the second node, the method further includes:
determining whether the priority of the data to be transmitted matches the transmittable state of the credit image of the second node; wherein the transmittable state is determined according to a number of credits not yet used in a credit image of the second node.
In the embodiment of the present invention, the second node determines, for how many unused credits are in the credit pool of the first node, whether the current first node performs data transmission, or which data is transmitted.
In a second aspect, an embodiment of the present invention further provides a data transmission method applicable to a PCIE bus, where the method is applied to a second node, and includes:
establishing a credit pool of a second node for a first node according to the performance of the first node and the performance of the second node, and determining a credit image, wherein the credit image is used for representing the credit pool of the second node for the first node, and the credit is used for indicating the memory address information of the second node;
and sending the credit mirror image to the first node so that the first node stores the credit mirror image, acquires the credit matched with the data to be transmitted from the credit mirror image, and sends the data to be transmitted to the memory space of the second node indicated by the credit matched with the data to be transmitted through a PCIE bus.
In the embodiment of the invention, the second node establishes a credit pool aiming at the first node according to the performance of the first node at the opposite end and the performance of the second node, uses the credit mirror image to represent, and sends the credit mirror image to the first node, so that the first node determines the credit matched with the data to be transmitted according to the credit mirror image.
Further, the establishing a credit pool of the second node for the first node according to the performance of the first node and the performance of the second node and determining a credit image corresponding to the credit pool includes:
determining a credit image and a credit bitmap according to the credit pool of the second node for the first node, wherein the credit bitmap is used for marking the use state of the second node for the credit in the credit pool of the first node;
the sending the credit image to the first node comprises:
and sending the credit image and the credit bitmap to the first node.
In the embodiment of the invention, the credit bitmap is used for representing the use state of the credit in the credit pool, and the credit pool state can be inquired through the credit bitmap.
Further, after sending the credit image and the credit bitmap to the first node, the method further includes:
receiving an updated credit bitmap sent by the first node, wherein the updated credit bitmap is determined after the first node updates the credit bitmap of the second node for the first node;
and determining that the first node has sent the data to be transmitted according to the updated credit bitmap.
In the embodiment of the invention, the fact that the first node transmits the data to be transmitted is determined through the credit bitmap and the data to be transmitted is completed, and compared with the prior art, the method and the device can reduce the overhead and improve the utilization rate of the bandwidth.
Further, after determining that the first node has sent the data to be transmitted according to the updated credit bitmap, the method further includes:
after determining that the data to be transmitted is output from the memory space corresponding to the credit corresponding to the data to be transmitted, updating a credit bitmap of the second node for the first node;
and sending the updated credit bitmap to the first node.
In the embodiment of the present invention, when the data to be transmitted is output from the memory space corresponding to the credit corresponding to the second node, that is, the second node determines that the memory address corresponding to the occupied credit in the credit pool can be released, so that the second node updates the credit bitmap and sends the updated credit bitmap to the first node, so that the first node can obtain the credit according to the updated credit bitmap.
Further, the establishing a credit pool of the second node for the first node according to the performance of the first node and the performance of the second node comprises:
determining the number of credits in a credit pool of the second node for the first node according to the first node and a worst-performing node of the second nodes;
and establishing a credit pool of the second node for the first node according to the credit number.
In the embodiment of the invention, in order to realize peer-to-peer transmission, the number of credits in the credit pool between the nodes establishing connection is determined according to the node with poor performance in the two nodes.
In a third aspect, an embodiment of the present invention further provides a data transmission apparatus suitable for a PCIE bus, where the data transmission apparatus is applied to a first node, and the data transmission apparatus includes:
the credit acquisition unit is used for acquiring a credit matched with the data to be transmitted from a locally stored credit image of the second node; wherein the credit image is used for characterizing a credit pool of the second node for the first node, the credit number of the credit pool is determined according to the performance of the first node and the second node, and the credit is used for indicating the memory address information of the second node;
and the sending unit is used for sending the data to be transmitted to the memory space of the second node indicated by the credit matched with the data to be transmitted through the PCIE bus.
Further, the apparatus further comprises a receiving unit:
the method is specifically configured to receive a credit image, which is sent by a second node and corresponds to a credit pool of the first node, of the second node, and store the credit image.
Further, the receiving unit is further configured to:
receiving and storing a credit bitmap which is sent by the second node and corresponds to the credit image, wherein the credit bitmap is used for marking the use state of the second node for the credit in the credit pool of the first node;
the device further comprises:
and the updating unit is used for updating the credit bitmap of the second node and sending the updated credit bitmap to the second node, wherein the updated credit bitmap is used for indicating that the first node has sent the data to be transmitted.
Further, the receiving unit is further configured to:
receiving a credit bitmap which is sent by the second node and is updated by the second node;
the update unit is further configured to:
and updating the credit image of the second node stored locally and the credit bitmap corresponding to the credit image according to the updated credit bitmap of the second node.
Further, the credit acquisition unit is specifically configured to:
and acquiring the credit matched with the data to be transmitted from a locally stored credit image of the second node according to the priority order of the data to be transmitted.
Further, the credit acquisition unit is specifically configured to:
determining whether the priority of the data to be transmitted matches the transmittable state of the credit image of the second node; wherein the transmittable state is determined according to a number of credits not yet used in a credit image of the second node.
In a fourth aspect, an embodiment of the present invention further provides a data transmission apparatus applicable to a PCIE bus, where the data transmission apparatus is applied to a second node, and the data transmission apparatus includes:
a credit pool determining unit, configured to establish a credit pool of a second node for a first node according to performance of the first node and performance of the second node, and determine a credit image, where the credit image is used to characterize the credit pool of the second node for the first node, and the credit is used to indicate memory address information of the second node;
and the credit mirror image sending unit is used for sending the credit mirror image to the first node so that the first node stores the credit mirror image, acquires the credit matched with the data to be transmitted from the credit mirror image, and sends the data to be transmitted to the memory space of the second node indicated by the credit matched with the data to be transmitted through a PCIE bus.
Further, the credit pool determining unit is specifically configured to:
determining a credit image and a credit bitmap according to the credit pool of the second node for the first node, wherein the credit bitmap is used for marking the use state of the second node for the credit in the credit pool of the first node;
the credit image sending unit is specifically configured to:
and sending the credit image and the credit bitmap to the first node.
Further, the apparatus further comprises:
a receiving unit, configured to receive an updated credit bitmap sent by the first node, where the updated credit bitmap is determined after the first node updates a credit bitmap of the second node for the first node; and determining that the first node has sent the data to be transmitted according to the updated credit bitmap.
Further, the apparatus further includes an updating unit, specifically configured to:
after determining that the data to be transmitted is output from the memory space corresponding to the credit corresponding to the data to be transmitted, updating a credit bitmap of the second node for the first node;
and sending the updated credit bitmap to the first node.
Further, the credit pool determining unit is specifically configured to:
determining the number of credits in a credit pool of the second node for the first node according to the first node and the node with the worst performance in the second node;
and establishing a credit pool of the second node for the first node according to the credit number.
An embodiment of the present invention further provides a data transmission system applicable to a PCIE bus, including the first data transmission device according to any one of the third aspects and the second data transmission device according to any one of the fourth aspects.
An embodiment of the present invention further provides an electronic device, including:
at least one processor; and the number of the first and second groups,
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of the above embodiments.
Embodiments of the present invention also provide a non-transitory computer-readable storage medium storing computer instructions for causing a computer to perform the method of any one of the above embodiments.
In the embodiment of the invention, when a first node sends data to be transmitted to a second node, a credit matched with the data to be transmitted needs to be acquired from the second node aiming at a credit pool of the first node, one credit represents memory address information stored in the second node, the first node determines a storage space corresponding to the data to be transmitted through a second node stored locally aiming at a credit mirror image of the credit pool of the first node, namely the first node applies for a memory space to the second node to receive the data to be transmitted, the credit number of the second node aiming at the credit pool of the first node is determined according to the performances of the first node and the second node, compared with the prior art that the data is transmitted by the first node and the second node through a virtual channel with fixed performance, the coupling among the nodes is reduced, and the method is well suitable for a distributed router platform with a plurality of forwarding nodes with various characteristics, the forwarding performance between high-performance nodes can be maximized. And the credit bitmap is used for indicating the credit state in the credit pool of the node, and the updated bitmap is used for informing the second node that the data to be transmitted is completely transmitted. And in the transmission process, applying for corresponding credit according to the priority of the data to be transmitted, and ensuring that the data to be transmitted with high priority is sent preferentially.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
Fig. 1 is a schematic diagram of a distributed routing device according to an embodiment of the present invention;
fig. 2 is a schematic flowchart of a data transmission method applied to a PCIE bus and applied to a first node according to an embodiment of the present invention;
fig. 3 is a schematic flowchart of a data transmission method applied to a PCIE bus and applied to a first node according to an embodiment of the present invention;
fig. 4 is a schematic flowchart of a data transmission method applied to a PCIE bus and applied to a second node according to an embodiment of the present invention;
fig. 5 is a schematic flowchart of a data transmission method applied to a PCIE bus and applied to a second node according to an embodiment of the present invention;
fig. 6 is a schematic structural diagram of a data transmission apparatus applied to a PCIE bus and applied to a first node according to an embodiment of the present invention;
fig. 7 is a schematic structural diagram of a data transmission apparatus applied to a PCIE bus and applied to a second node according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention clearer, the present invention will be described in further detail with reference to the accompanying drawings, and it is apparent that the described embodiments are only a part of the embodiments of the present invention, not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
A PCIE (Peripheral Component Interconnect-Express) device is a device that is connected to other devices (such as a computer motherboard) through a PCIE interface to perform data processing, and common PCIE devices include a video card, a network card, and a solid state disk. The PCIE interface belongs to high-speed serial point-to-point double-channel high-bandwidth transmission, connected equipment distributes independent channel bandwidth, bus bandwidth is not shared, and the main advantage is high data transmission rate.
The PCIE architecture mainly includes a Root component (Root Complex, hereinafter abbreviated as RC), a SWITCH (SWITCH, hereinafter abbreviated as SW), and various end devices (EndPoint, hereinafter abbreviated as EP), as shown in fig. 1. The RC mainly completes address conversion from a memory domain to a PCIE bus domain, and a downstream port of the RC can be connected with SW to expand more PCIE ports or can be directly connected with EP; the SW mainly plays a role of an expansion system, and supports one upper port and a plurality of lower ports, data exchange can be performed between the ports, and the PCIE can perform link expansion through SW bridging.
In fig. 1, the system is composed of one RC, a plurality of PCIE SWs, and a plurality of EPs. The RC is generally assumed by a main engine in the router, the PCIE SW expands the PCIE topology, and the EP can be regarded as a line card in the distributed router, which is referred to as a node in the embodiment of the present invention. The data interaction between nodes is based on the PCIE topology.
In the prior art, data transmission between different nodes is performed through virtual channels, a virtual channel for carrying data transmission of a control channel and a service channel is established between each line card of a distributed system, and the control channel and the service channel are uniformly carried by the virtual channel.
Based on the above, an embodiment of the present invention provides a data transmission system suitable for a PCIE bus, as shown in fig. 1, where any EP in fig. 1 is used as a first node, and an opposite-end EP performing transmission with the EP is used as a second node.
In the embodiment of the present invention, when the first node and the second node establish a connection, each node applies for a credit pool for the peer node, and applies for a certain memory space for storing a credit pool mirror image of the peer node for the home node. When the local end node establishes connection with other nodes, credit pools of other opposite end nodes are also established and the credit pool images of other opposite end nodes aiming at the local end node are also stored.
In the embodiment of the present invention, the credit is used to indicate the memory address information of the second node, the credit is a minimum unit for forwarding data between each node in the distributed system via the backplane, and is an address parameter calculated according to the cached physical address and the PCIE base address.
For example, in the embodiment of the present invention, taking the second node as an example, the second node applies for a certain credit pool space, where the credit pool space includes a subspace of the first node that establishes a connection with respect to the second node, and the subspace is used to fill credit information available for data to be transmitted, which is sent by the first node.
In the second node, after the second node establishes a credit for the first node, the first node is notified, and the first node stores a credit image of a credit pool established by the second node for the first node.
In the embodiment of the present invention, the size of the credit pool is variable, the initial number of credits in the credit pool is also variable, and the number of credits in the credit pool is determined according to two nodes establishing transmission, that is, taking the second node as an example, the size of the sub-credit pool a for the first node may be different from the size of the sub-credit pool for the other nodes, and the initial number of credits in the sub-credit pool a is different from the initial number of credits in the other credit pools.
Optionally, in this embodiment of the present invention, the maximum number of credits that can be accommodated by the credit pool of the second node is determined according to performance of a third node in the distributed routing device, where the third node is a node with the best performance; the number of credits in the credit pool of the second node for the first node is determined from the first node and the worst performing one of the second nodes.
That is, in the embodiment of the present invention, there are N nodes in the distributed routing apparatus, and the performance of each node is different, where the performance is determined according to the processor processing capability of each node and the thread processing capability of each node. Selecting the credit pool size of the node with the best performance in the N nodes as a reference for setting the credit pool, and applying for the credit pool with the reference size by the N nodes.
After the first node establishes connection with the second node, the number of credits in the credit pool for the opposite end needs to be determined, and if the performance of the first node is higher than that of the second node, the number of credits in the credit pool of the first node and the credit pool of the second node are determined according to the performance of the second node.
Taking the first node as an example, assuming that the performance of the first node is a, the performance of the second node is B, and a is greater than B, the number of credits can be determined to be 200kb according to a, the number of credits can be determined to be 100kb according to the performance of B, when the first node establishes a connection with the second node, the number of credits in the credit pool of the first node for the second node is 100kb, and the number of credits in the credit pool of the second node for the first node is 100 kb.
When the first node establishes connection with the third node, the performance of the first node is A, the performance of the third node is A, and the credit number can be determined to be 200kb according to A, the credit number of the first node in the credit pool for the third node is 200kb, and the credit number of the third node in the credit pool for the first node is 200 kb.
Optionally, in the embodiment of the present invention, in addition to acquiring the credit matched with the data to be transmitted by using the credit mirror image, the credit acquisition information may also be sent to the second node, the second node determines the credit according to the credit acquisition information, and the second node sends the determined credit to the first node.
Optionally, in the embodiment of the present invention, the credit image may be represented by different representation manners, such as a matrix, a bitmap, a vector, and the like, and the available credit status in the credit pool may be determined by the representation manners.
Optionally, in this embodiment of the present invention, after the second node establishes a credit for the first node, the second node may notify the first node of the credit image and the credit bitmap of the credit image, and the first node stores the credit image and the credit bitmap.
Optionally, in this embodiment of the present invention, a bitmap may be used to represent the credit image, where unoccupied credits are represented by 1, and occupied credits are represented by 0, that is, in the bitmap, numbers of 1 and 0 represent whether credits are occupied, and positions of 1 and 0 in the bitmap represent memory address information corresponding to credits.
When a first node needs to send data to be transmitted to a second node, the first node acquires a credit matched with the data to be transmitted from a locally stored credit image of the second node; and the first node sends the data to be transmitted to the memory space of the second node indicated by the credit matched with the data to be transmitted through the PCIE bus.
In the embodiment of the present invention, the first node acquires the credit matching the data to be transmitted from the locally stored credit image of the second node is to determine whether the second node has enough credit to store the data to be transmitted, and the first node may acquire the credit from the credit image according to the data amount of the data to be transmitted, for example, the first node needs to transmit 4 data to be transmitted of 2Kb, and one credit is 2Kb, the first node first applies for one credit, then transmits, then performs a loop, then applies for another credit, and then transmits until all the data to be transmitted are transmitted to the second node.
Optionally, in order to facilitate management of the credit pool, a waterline management concept is introduced, three levels of min, low, and high are set in the credit pool, and for different levels, the data volume that can be received by the second node is different, so that when the first node acquires a matched credit, the current level of the credit pool needs to be determined.
Optionally, in the embodiment of the present invention, the data to be transmitted includes a protocol packet and a data packet, if the first node determines the level of the credit pool, it determines whether to transmit according to the type and the level of the packet to be transmitted, and when the level of the credit pool is lower than the low water line, stops sending the common data packet, and sends the protocol packet; when the credit pool level is lower than the min waterline, stopping sending the common data message and the protocol message, and caching the common data message and the protocol message; and when the credit pool level is greater than or equal to the low waterline, sending a common data message and a protocol message.
Optionally, in the embodiment of the present invention, the data to be transmitted, which needs to be sent by the first node, includes a priority of the data, for example, a priority of a protocol packet in the data to be transmitted is higher than that of a data packet, the data packet may also include multiple priorities, and according to the priority of the data to be transmitted, corresponding credits are sequentially obtained, so that the data with the high priority is ensured to be transmitted first.
After the first node acquires the credit corresponding to the data to be transmitted, the data to be transmitted is sent to the memory space of the second node indicated by the credit matched with the data to be transmitted, after the sending is finished, the second node needs to be informed that the sending of the data to be transmitted is finished,
in the embodiment of the present invention, the first node notifies the second node by updating the credit bitmap, that is, when the second node receives the updated credit bitmap sent by the first node, it is determined that the first node has completely transmitted the data to be transmitted. Compared with the prior art that a tail message needs to be added after one-time output is finished and whether the previous message is finished or not is confirmed according to the information of the tail message, the bandwidth utilization rate of the PCIE is reduced because the ratio of the data message to the tail message in the prior art is 5:1 or even lower, so that the bandwidth utilization rate can be improved by using a credit bitmap updating mode in the embodiment of the invention.
When the second node receives the updated credit bitmap, it may determine that the data to be transmitted has been received, that is, when the second node determines that the credit bitmap has been updated, it may determine that the credits in the credit pool are used, and may determine which memory addresses are occupied. And if the second node determines that the credit bitmap is not updated, continuing to wait.
And when the second node determines that the credit bitmap is updated, taking out corresponding credit from the credit pool according to the bitmap, wherein each credit corresponds to a data message received by hardware, and forming a linked list by the data messages for outputting so that the data messages can be processed.
Optionally, in the embodiment of the present invention, after the second node outputs the data packet composition linked list, the credit is released, so that the second node also needs to update the credit bitmap, and optionally, the second node updates the credit bitmap after outputting the data packet composition linked list, or when the second node arrives at the set time, the credit bitmap is updated according to the output data.
Optionally, after determining that the data packet is output, the second node applies for a credit whose number is consistent with that of the data packet, and rejoins the credit in the credit pool for the first node.
After the second node updates the credit bitmap, the updated credit bitmap is sent to the first node, and the first node updates the credit bitmap and the credit image of the second node which are stored locally.
Based on the above, an embodiment of the present invention provides a data transmission method applicable to a PCIE bus, where the data transmission method is applied to a first node, and as shown in fig. 2, the method includes:
step 201, obtaining a credit matched with the data to be transmitted from a locally stored credit image of the second node; wherein the credit image is used for characterizing a credit pool of the second node for the first node, the credit number of the credit pool is determined according to the performance of the first node and the second node, and the credit is used for indicating the memory address information of the second node;
step 202, sending the data to be transmitted to the memory space of the second node indicated by the credit matched with the data to be transmitted through the PCIE bus.
Further, before the obtaining the credit matched with the data to be transmitted from the locally stored credit image of the second node, the method further includes:
receiving a credit image which is sent by a second node and corresponds to a credit pool of the first node by the second node, and storing the credit image.
Further, the method further comprises:
receiving and storing a credit bitmap which is sent by the second node and corresponds to the credit image, wherein the credit bitmap is used for marking the use state of the second node for the credit in the credit pool of the first node;
correspondingly, after the data to be transmitted is sent to the memory space of the second node indicated by the credit matched with the data to be transmitted through the PCIE bus, the method further includes:
and updating the credit bitmap of the second node and sending the updated credit bitmap to the second node, wherein the updated credit bitmap is used for indicating that the first node has sent the data to be transmitted completely.
Further, after sending the updated credit bitmap to the second node, the method further includes:
receiving a credit bitmap which is sent by the second node and is updated by the second node;
and updating the credit image of the second node stored locally and the credit bitmap corresponding to the credit image according to the updated credit bitmap of the second node.
Further, the obtaining the credit matched with the data to be transmitted from the locally stored credit image of the second node includes:
and acquiring the credit matched with the data to be transmitted from a locally stored credit image of the second node according to the priority order of the data to be transmitted.
Further, before the obtaining of the credit matched with the data to be transmitted according to the priority order of the data to be transmitted from the locally stored credit image of the second node, the method further includes:
determining whether the priority of the data to be transmitted matches the transmittable state of the credit image of the second node; wherein the transmittable state is determined according to a number of credits not yet used in a credit image of the second node.
To facilitate understanding of the data transmission method applicable to the PCIE bus and applied to the first node in the embodiment of the present invention, for example, the node with the best performance in the distributed routing device is the third node, the size of the corresponding credit pool is 200kb, the first node applies for the credit pool, the size of the credit pool is 200kb, the second node applies for the credit pool, the size of the credit pool is 200kb, the performance of the first node is a, the performance of the second node is B, and a is greater than B, in the initialization phase, the number of credits can be determined to be 100kb according to the performance of B, the number of credits in the credit pool of the first node for the second node is 100kb, and the number of credits in the credit pool of the second node for the first node is 100 kb. When the first node needs to transmit 6kb of data to be transmitted to the second node and each credit is 2kb, that is, the first node needs to apply for 3 credits from the second node, the specific process is shown in fig. 3 and includes:
step 301, a first node applies for a first credit to a second node, and sends first data to the second node;
step 302, the first node applies for a second credit to the second node, and sends second data to the second node;
step 303, the first node applies for a third credit to the second node, and sends third data to the second node;
step 304, the first node updates the credit bitmap of the second node, and changes the value of the bitmap point corresponding to the occupied credit position into 0;
step 305, the first node sends the updated bitmap to the second node.
Based on the above, an embodiment of the present invention provides a data transmission method applicable to a PCIE bus, where the data transmission method is applied to a second node, and as shown in fig. 4, the method includes:
step 401, establishing a credit pool of a second node for a first node according to the performance of the first node and the performance of the second node, and determining a credit image, where the credit image is used to characterize the credit pool of the second node for the first node, and the credit is used to indicate memory address information of the second node;
step 402, sending the credit image to the first node, so that the first node stores the credit image, obtains a credit matched with the data to be transmitted from the credit image, and sends the data to be transmitted to a memory space of the second node indicated by the credit matched with the data to be transmitted through a PCIE bus.
Further, the establishing a credit pool of the second node for the first node according to the performance of the first node and the performance of the second node and determining a credit image corresponding to the credit pool includes:
determining a credit image and a credit bitmap according to the credit pool of the second node for the first node, wherein the credit bitmap is used for marking the use state of the second node for the credit in the credit pool of the first node;
the sending the credit image to the first node comprises:
and sending the credit image and the credit bitmap to the first node.
Further, after sending the credit image and the credit bitmap to the first node, the method further includes:
receiving an updated credit bitmap sent by the first node, wherein the updated credit bitmap is determined after the first node updates the credit bitmap of the second node for the first node;
and determining that the first node has sent the data to be transmitted according to the updated credit bitmap.
Further, after determining that the first node has sent the data to be transmitted according to the updated credit bitmap, the method further includes:
after determining that the data to be transmitted is output from the memory space corresponding to the credit corresponding to the data to be transmitted, updating a credit bitmap of the second node for the first node;
and sending the updated credit bitmap to the first node.
Further, the establishing a credit pool of the second node for the first node according to the performance of the first node and the performance of the second node comprises:
determining the number of credits in a credit pool of the second node for the first node according to the first node and a worst-performing node of the second nodes;
and establishing a credit pool of the second node for the first node according to the credit number.
To facilitate understanding of the data transmission method applicable to the PCIE bus and applied to the second node in the embodiment of the present invention, for example, the node with the best performance in the distributed routing device is the third node, the size of the corresponding credit pool is 200kb, the first node applies for the credit pool, the size of the credit pool is 200kb, the second node applies for the credit pool, the size of the credit pool is 200kb, the performance of the first node is a, the performance of the second node is B, and a is greater than B, in the initialization phase, the number of credits can be determined to be 100kb according to the performance of B, the number of credits in the credit pool of the first node for the second node is 100kb, and the number of credits in the credit pool of the second node for the first node is 100 kb. When the first node needs to transmit 6kb of data to be transmitted to the second node and each credit is 2kb, that is, the first node needs to apply for 3 credits from the second node, the transmission process of the second node is as shown in fig. 5, which includes:
step 501, a second node establishes a task for receiving scheduling;
step 502, the second node determines whether the credit bitmap is updated, if yes, step 503 is executed, otherwise step 501 is executed;
step 503, the second node takes out the corresponding credit from the credit pool according to the credit bitmap, and each credit corresponds to a data message which is received by the hardware;
step 504, the second node forms a linked list with the received data messages and outputs the linked list;
step 505, the second node updates the credit bitmap;
step 506, the second node sends the updated credit bitmap to the first node.
Based on the same concept, an embodiment of the present invention further provides a data transmission apparatus applicable to a PCIE bus, where the data transmission apparatus is applied to a first node, and as shown in fig. 6, the data transmission apparatus includes:
a credit acquisition unit 601, configured to acquire a credit matching the data to be transmitted from a locally stored credit image of the second node; wherein the credit image is used for characterizing a credit pool of the second node for the first node, the credit number of the credit pool is determined according to the performance of the first node and the second node, and the credit is used for indicating the memory address information of the second node;
a sending unit 602, configured to send the data to be transmitted to a memory space of the second node indicated by a credit matching with the data to be transmitted via a PCIE bus.
Further, the apparatus further comprises a receiving unit 603:
the method is specifically configured to receive a credit image, which is sent by a second node and corresponds to a credit pool of the first node, of the second node, and store the credit image.
Further, the receiving unit 603 is further configured to:
receiving and storing a credit bitmap which is sent by the second node and corresponds to the credit image, wherein the credit bitmap is used for marking the use state of the second node for the credit in the credit pool of the first node;
the device further comprises:
an updating unit 604, configured to update a credit bitmap of the second node and send the updated credit bitmap to the second node, where the updated credit bitmap is used to indicate that the first node has sent the data to be transmitted.
Further, the receiving unit 603 is further configured to:
receiving a credit bitmap which is sent by the second node and is updated by the second node;
the updating unit 604 is further configured to:
and updating the credit image of the second node stored locally and the credit bitmap corresponding to the credit image according to the updated credit bitmap of the second node.
Further, the credit acquisition unit 601 is specifically configured to:
and acquiring the credit matched with the data to be transmitted from a locally stored credit image of the second node according to the priority order of the data to be transmitted.
Further, the credit acquisition unit 601 is specifically configured to:
determining whether the priority of the data to be transmitted matches the transmittable state of the credit image of the second node; wherein the transmittable state is determined according to a number of credits not yet used in a credit image of the second node.
An embodiment of the present invention further provides a data transmission apparatus applicable to a PCIE bus, where the data transmission apparatus is applied to a second node, and as shown in fig. 7, the data transmission apparatus includes:
a credit pool determining unit 701, configured to establish a credit pool of a second node for a first node according to performance of the first node and performance of the second node, and determine a credit image, where the credit image is used to characterize the credit pool of the second node for the first node, and the credit is used to indicate memory address information of the second node;
a credit image sending unit 702, configured to send the credit image to the first node, so that the first node stores the credit image, obtains a credit matching the data to be transmitted from the credit image, and sends the data to be transmitted to a memory space of the second node indicated by the credit matching the data to be transmitted via a PCIE bus.
Further, the credit pool determining unit 701 is specifically configured to:
determining a credit image and a credit bitmap according to the credit pool of the second node for the first node, wherein the credit bitmap is used for marking the use state of the second node for the credit in the credit pool of the first node;
the credit image sending unit 702 is specifically configured to:
and sending the credit image and the credit bitmap to the first node.
Further, the apparatus further comprises:
a receiving unit 703, configured to receive an updated credit bitmap sent by the first node, where the updated credit bitmap is determined after the first node updates a credit bitmap of the second node for the first node; and determining that the first node has sent the data to be transmitted according to the updated credit bitmap.
Further, the apparatus further includes an updating unit 704, specifically configured to:
after determining that the data to be transmitted is output from the memory space corresponding to the credit corresponding to the data to be transmitted, updating a credit bitmap of the second node for the first node;
and sending the updated credit bitmap to the first node.
Further, the credit pool determining unit 701 is specifically configured to:
determining the number of credits in a credit pool of the second node for the first node according to the first node and the node with the worst performance in the second node;
and establishing a credit pool of the second node for the first node according to the credit number.
An embodiment of the present invention provides an electronic device, which includes at least one processing unit and at least one storage unit, where the storage unit stores a computer program, and when the program is executed by the processing unit, the processing unit is caused to execute the steps of the data transmission method. As shown in fig. 8, the hardware structure of the electronic device according to the embodiment of the present invention is schematically illustrated, and the electronic device may be a desktop computer, a portable computer, a smart phone, a tablet computer, or the like. Specifically, the electronic device may include a memory 801, a processor 802, and a computer program stored on the memory, wherein the processor 802 implements the steps of any of the data transmission methods in the above embodiments when executing the program. Memory 801 may include Read Only Memory (ROM) and Random Access Memory (RAM), among other things, and provides processor 802 with program instructions and data stored in memory 801.
Fig. 8 illustrates an example of connection via a bus. The processor 802 calls the program instructions stored in the memory 801 and executes the data transmission method provided by the above-described embodiment according to the obtained program instructions.
Embodiments of the present application provide a computer program product comprising a computer program stored on a non-transitory computer readable storage medium, the computer program comprising program instructions which, when executed by a computer, cause the computer to perform any of the data transmission methods described above.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (25)

1. A data transmission method suitable for a PCIE bus is applied to a first node, and is characterized by comprising the following steps:
acquiring a credit matched with the data to be transmitted from a credit image of a second node stored locally; wherein the credit image is used for characterizing a credit pool of the second node for the first node, the credit number of the credit pool is determined according to the performance of the first node and the second node, and the credit is used for indicating the memory address information of the second node;
and sending the data to be transmitted to the memory space of the second node indicated by the credit matched with the data to be transmitted through the PCIE bus.
2. The method of claim 1, wherein before obtaining the credit matching the data to be transmitted from the locally stored credit image of the second node, further comprising:
receiving a credit image which is sent by a second node and corresponds to a credit pool of the first node by the second node, and storing the credit image.
3. The method of claim 2, further comprising:
receiving and storing a credit bitmap which is sent by the second node and corresponds to the credit image, wherein the credit bitmap is used for marking the use state of the second node for the credit in the credit pool of the first node;
correspondingly, after the data to be transmitted is sent to the memory space of the second node indicated by the credit matched with the data to be transmitted through the PCIE bus, the method further includes:
and updating the credit bitmap of the second node and sending the updated credit bitmap to the second node, wherein the updated credit bitmap is used for indicating that the first node has sent the data to be transmitted completely.
4. The method of claim 3, wherein after sending the updated credit bitmap to the second node, further comprising:
receiving a credit bitmap which is sent by the second node and is updated by the second node;
and updating the credit image of the second node stored locally and the credit bitmap corresponding to the credit image according to the updated credit bitmap of the second node.
5. The method according to any one of claims 1 to 4, wherein obtaining credits matching the data to be transmitted from a locally stored credit image of the second node comprises:
and acquiring the credit matched with the data to be transmitted from a locally stored credit image of the second node according to the priority order of the data to be transmitted.
6. The method of claim 5, wherein before obtaining the credits matching the data to be transmitted in the priority order of the data to be transmitted from the locally stored credit image of the second node, further comprising:
determining whether the priority of the data to be transmitted matches the transmittable state of the credit image of the second node; wherein the transmittable state is determined according to a number of credits not yet used in a credit image of the second node.
7. A data transmission method suitable for a PCIE bus is applied to a second node, and is characterized by comprising the following steps:
establishing a credit pool of a second node for a first node according to the performance of the first node and the performance of the second node, and determining a credit image, wherein the credit image is used for representing the credit pool of the second node for the first node, and the credit is used for indicating the memory address information of the second node;
and sending the credit mirror image to the first node so that the first node stores the credit mirror image, acquires the credit matched with the data to be transmitted from the credit mirror image, and sends the data to be transmitted to the memory space of the second node indicated by the credit matched with the data to be transmitted through a PCIE bus.
8. The method of claim 7, wherein the establishing a credit pool of the second node for the first node according to the performance of the first node and the performance of the second node and determining a credit image corresponding to the credit pool comprises:
determining a credit image and a credit bitmap according to the credit pool of the second node for the first node, wherein the credit bitmap is used for marking the use state of the second node for the credit in the credit pool of the first node;
the sending the credit image to the first node comprises:
and sending the credit image and the credit bitmap to the first node.
9. The method of claim 8, wherein sending the credit image and the credit bitmap to the first node further comprises:
receiving an updated credit bitmap sent by the first node, wherein the updated credit bitmap is determined after the first node updates the credit bitmap of the second node for the first node;
and determining that the first node has sent the data to be transmitted according to the updated credit bitmap.
10. The method of claim 9, wherein after determining that the first node has sent the data to be transmitted according to the updated credit bitmap, further comprising:
after determining that the data to be transmitted is output from the memory space corresponding to the credit corresponding to the data to be transmitted, updating a credit bitmap of the second node for the first node;
and sending the updated credit bitmap to the first node.
11. The method according to any of claims 7-10, wherein said establishing a credit pool for said second node to said first node based on the performance of said first node and the performance of said second node comprises:
determining the number of credits in a credit pool of the second node for the first node according to the first node and a worst-performing node of the second nodes;
and establishing a credit pool of the second node for the first node according to the credit number.
12. A data transmission device suitable for a PCIE bus is applied to a first node and is characterized by comprising:
the credit acquisition unit is used for acquiring a credit matched with the data to be transmitted from a locally stored credit image of the second node; wherein the credit image is used for characterizing a credit pool of the second node for the first node, the credit number of the credit pool is determined according to the performance of the first node and the second node, and the credit is used for indicating the memory address information of the second node;
and the sending unit is used for sending the data to be transmitted to the memory space of the second node indicated by the credit matched with the data to be transmitted through the PCIE bus.
13. The apparatus of claim 12, further comprising a receiving unit:
the method is specifically configured to receive a credit image, which is sent by a second node and corresponds to a credit pool of the first node, of the second node, and store the credit image.
14. The apparatus of claim 13, wherein the receiving unit is further configured to:
receiving and storing a credit bitmap which is sent by the second node and corresponds to the credit image, wherein the credit bitmap is used for marking the use state of the second node for the credit in the credit pool of the first node;
the device further comprises:
and the updating unit is used for updating the credit bitmap of the second node and sending the updated credit bitmap to the second node, wherein the updated credit bitmap is used for indicating that the first node has sent the data to be transmitted.
15. The apparatus of claim 14, wherein the receiving unit is further configured to:
receiving a credit bitmap which is sent by the second node and is updated by the second node;
the update unit is further configured to:
and updating the credit image of the second node stored locally and the credit bitmap corresponding to the credit image according to the updated credit bitmap of the second node.
16. The apparatus according to any of claims 12-15, wherein the credit acquisition unit is specifically configured to:
and acquiring the credit matched with the data to be transmitted from a locally stored credit image of the second node according to the priority order of the data to be transmitted.
17. The apparatus according to claim 16, wherein the credit acquisition unit is specifically configured to:
determining whether the priority of the data to be transmitted matches the transmittable state of the credit image of the second node; wherein the transmittable state is determined according to a number of credits not yet used in a credit image of the second node.
18. A data transmission device suitable for a PCIE bus is applied to a second node and is characterized by comprising:
a credit pool determining unit, configured to establish a credit pool of a second node for a first node according to performance of the first node and performance of the second node, and determine a credit image, where the credit image is used to characterize the credit pool of the second node for the first node, and the credit is used to indicate memory address information of the second node;
and the credit mirror image sending unit is used for sending the credit mirror image to the first node so that the first node stores the credit mirror image, acquires the credit matched with the data to be transmitted from the credit mirror image, and sends the data to be transmitted to the memory space of the second node indicated by the credit matched with the data to be transmitted through a PCIE bus.
19. The apparatus according to claim 18, wherein the credit pool determining unit is specifically configured to:
determining a credit image and a credit bitmap according to the credit pool of the second node for the first node, wherein the credit bitmap is used for marking the use state of the second node for the credit in the credit pool of the first node;
the credit image sending unit is specifically configured to:
and sending the credit image and the credit bitmap to the first node.
20. The apparatus of claim 19, further comprising:
a receiving unit, configured to receive an updated credit bitmap sent by the first node, where the updated credit bitmap is determined after the first node updates a credit bitmap of the second node for the first node; and determining that the first node has sent the data to be transmitted according to the updated credit bitmap.
21. The apparatus according to claim 20, wherein the apparatus further comprises an updating unit, specifically configured to:
after determining that the data to be transmitted is output from the memory space corresponding to the credit corresponding to the data to be transmitted, updating a credit bitmap of the second node for the first node;
and sending the updated credit bitmap to the first node.
22. The apparatus according to any of claims 18-21, wherein the credit pool determining unit is specifically configured to:
determining the number of credits in a credit pool of the second node for the first node according to the first node and the node with the worst performance in the second node;
and establishing a credit pool of the second node for the first node according to the credit number.
23. A data transmission system suitable for a PCIE bus is characterized by comprising: the PCIE bus adapted data transmission apparatus as claimed in any one of claims 12 to 17 applied to the first node and the PCIE bus adapted data transmission apparatus as claimed in any one of claims 18 to 22 applied to the second node.
24. A terminal device, characterized in that it comprises at least one processing unit and at least one memory unit, wherein the memory unit stores a computer program that, when executed by the processing unit, causes the processing unit to perform the steps of the method of any of claims 1 to 6 or to perform the steps of the method of any of claims 7 to 11.
25. A computer-readable medium, characterized in that it stores a computer program executable by a terminal device, which program, when run on the terminal device, causes the terminal device to perform the steps of the method of any one of claims 1 to 6 or to perform the steps of the method of any one of claims 7 to 11.
CN201811557916.1A 2018-12-19 2018-12-19 Data transmission method, device and system suitable for PCIE bus Active CN109634902B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811557916.1A CN109634902B (en) 2018-12-19 2018-12-19 Data transmission method, device and system suitable for PCIE bus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811557916.1A CN109634902B (en) 2018-12-19 2018-12-19 Data transmission method, device and system suitable for PCIE bus

Publications (2)

Publication Number Publication Date
CN109634902A CN109634902A (en) 2019-04-16
CN109634902B true CN109634902B (en) 2020-08-25

Family

ID=66075465

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811557916.1A Active CN109634902B (en) 2018-12-19 2018-12-19 Data transmission method, device and system suitable for PCIE bus

Country Status (1)

Country Link
CN (1) CN109634902B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112468416B (en) * 2020-10-23 2022-08-30 曙光网络科技有限公司 Network flow mirroring method and device, computer equipment and storage medium
CN113315709B (en) * 2021-03-22 2023-02-28 阿里巴巴新加坡控股有限公司 Address cache creating method, routing and addressing method and device

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102263698B (en) * 2011-08-11 2014-01-22 福建星网锐捷网络有限公司 Method for establishing virtual channel, method of data transmission and line card
CN102523168B (en) * 2011-12-23 2014-09-10 福建星网锐捷网络有限公司 Method and apparatus for message transmission
CN103618618B (en) * 2013-11-13 2017-05-24 福建星网锐捷网络有限公司 Line card fault recovery method and related device based on distributed PCIE system
CN104394100B (en) * 2014-11-07 2017-12-08 深圳市国微电子有限公司 Credit assignment method and interchanger
CN104767606B (en) * 2015-03-19 2018-10-19 华为技术有限公司 Data synchronization unit and method

Also Published As

Publication number Publication date
CN109634902A (en) 2019-04-16

Similar Documents

Publication Publication Date Title
CN106980582B (en) Data processing method and device
US10476697B2 (en) Network-on-chip, data transmission method, and first switching node
US11252111B2 (en) Data transmission
CN109672708B (en) Communication method, device and system
CN104796337A (en) Method and device for forwarding message
CN109634902B (en) Data transmission method, device and system suitable for PCIE bus
CN109587732B (en) Transmission method and device for service quality flow
CN111371694B (en) Shunting method, device and system, processing equipment and storage medium
CN114138700B (en) Flow control method, device, equipment and storage medium for serial port data transmission
US10621124B2 (en) Method, device and computer program product for enabling SR-IOV functions in endpoint device
CN114285695B (en) Communication method, device, apparatus, system and storage medium
US8595311B2 (en) Network system, information processing apparatus, and computer product
CN109032704B (en) Data processing method and device
CN113742273A (en) Balance training method, device and system
CN117312229B (en) Data transmission device, data processing equipment, system, method and medium
CN109669897B (en) Data transmission method and device
CN104780120A (en) Method and device for transmitting files in local area network
CN112714146B (en) Resource scheduling method, device, equipment and computer readable storage medium
CN109343984B (en) Data processing method, system, computing device and storage medium
CN113261249A (en) Data transmission method, related equipment and computer storage medium
CN105471959A (en) Starting method and device of virtual machine in cluster network
CN107454021B (en) Communication method and device
CN115514698A (en) Protocol calculation method, switch, cross-device link aggregation system and storage medium
CN110166506B (en) Method for connecting hypertext transfer protocol Http and node equipment
CN109802897B (en) Data transmission method and communication equipment

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