WO2020244498A1 - 服务器系统内消息的处理方法、装置及系统 - Google Patents

服务器系统内消息的处理方法、装置及系统 Download PDF

Info

Publication number
WO2020244498A1
WO2020244498A1 PCT/CN2020/093905 CN2020093905W WO2020244498A1 WO 2020244498 A1 WO2020244498 A1 WO 2020244498A1 CN 2020093905 W CN2020093905 W CN 2020093905W WO 2020244498 A1 WO2020244498 A1 WO 2020244498A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
server system
information
storage area
sending
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.)
Ceased
Application number
PCT/CN2020/093905
Other languages
English (en)
French (fr)
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of WO2020244498A1 publication Critical patent/WO2020244498A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues

Definitions

  • This application relates to the field of message transmission control in a server system, and in particular to a method for processing messages in a server system. It also relates to a device and system for processing messages in a server system.
  • a server also known as a server, is a computing device that provides computing services. It consists of a processor, memory, system bus, hard disk, and processor. As the internal devices of the server and between different servers need to continuously respond to service request messages and process them, the operation efficiency of data processing between the internal devices of the server and between different servers is improved, and the message congestion between the devices is prevented. , Has become a technical goal pursued by those skilled in the art.
  • the prior art usually adopts a point-to-point Credit flow control back pressure mechanism to control the messages transmitted between the internal devices of the server system or between different server systems through the system bus.
  • the implementation of the above-mentioned prior art is usually not accurate enough to effectively solve the problem between the internal devices of the server system or between different server systems.
  • the message congestion problem between. As a result, the problem of contention for the system bus between various devices in the server system or between different server systems has become more prominent, and the resulting congestion has seriously affected the efficiency of the data processing of the server system. On the one hand, the resulting congestion leads to out-of-order bandwidth competition for messages. On the other hand, the congestion is back-pressured to all devices communicating with the congested device, causing serious performance degradation of the server.
  • This application provides a method for processing messages in a server system to solve the problem of inefficient data processing caused by message congestion in the server system in the prior art.
  • This application additionally provides a device and system for processing messages in a server system.
  • the method for processing messages in a server system provided by this application includes: a second device in the server system obtains the current spatial information of the first message storage area of the first device provided by the first device in the server system, and The first message storage area is used to buffer the first message sent by the second device to the first device; the second device controls the sending of the first message according to the current space information.
  • the second device in the server system obtaining the current space information of the first message storage area of the first device provided by the first device in the server system includes: The first device sends a request message for the current space information of the first message storage area of the first device; the second device obtains the return of the first device in response to the request message carrying the first device A response message for the current space information of the first message storage area; the current space information of the first message storage area of the first device is obtained from the response message.
  • the second device controlling the sending of the first message according to the current space information includes: before the second device sends the first message to the first device, The space information that the first message needs to occupy is compared with the current space information, and if the current space information meets the size of the space that the first message needs to occupy, the first message is sent to the first device. Message, if the current space information does not meet the size of the space required by the first message, stop sending the first message to the first device.
  • the second device in the server system obtaining the current space information of the first message storage area of the first device provided by the first device in the server system includes: the second device obtaining all information The response message returned by the first device carrying the Credit value of the first message storage area of the first device; wherein the Credit value is a basic flow control unit included in the first message storage area of the first device Read the Credit value from the response message; Determine the current space information of the first message storage area of the first device according to the Credit value.
  • the method for processing messages in the server system further includes: a second device in the server system obtains an indication Credit value provided by the first device in the server system; the second device credits according to the indication The value controls the sending of the first message.
  • the method for processing messages in the server system further includes: when the indicated Credit value is the set initial Credit value, starting to control the sending of the first message; when the indicated Credit value If it is the set target Credit value, the control of sending the first message is cancelled.
  • this application also provides a method for processing messages in a server system, including: obtaining current space information of a first message storage area of a first device in the server system, and the first message storage area is used to cache the The first message sent by the second device in the server system to the first device; sending response information carrying the current spatial information to the second device, and the response information is used to trigger the second device to The sending of the first message is controlled.
  • the sending response information carrying the current spatial information to the second device includes: the first device obtains the information sent by the second device A request message for acquiring current spatial information of the first message storage area of the first device; the first device returns the first message storage area carrying the first device to the second device for the request message The response message of the current spatial information.
  • the method for processing messages in the server system further includes: quantizing the current spatial information to obtain a Credit value for the current spatial information, where the Credit value is used to indicate the value of the first device The current remaining space size of the first message storage area.
  • the method for processing messages in the server system further includes: sending response information carrying the initial Credit value to the second device; wherein the response information carrying the initial Credit value is used to initiate a response The sending of the first message is controlled; the response information carrying the target Credit value is sent to the second device; wherein the response information carrying the target Credit value is used to cancel the sending of the first message control.
  • the present application also provides a method for processing messages in a server system, including: obtaining space information of a first message storage area of a first device in the server system, and the first message storage area is used to cache the first message storage area.
  • the device receives the first message from the second device in the server system; obtains the rate limit information for the second message according to the space information of the first message storage area; wherein, the second message is the first message A message sent by a device to the second device, where the first message is a response message of the second device to the second message.
  • the obtaining rate limit information for the second message according to the space information of the first message storage area includes: obtaining the rate limit information for the second message according to the remaining space information of the first message storage area Speed information; wherein the remaining space information is negatively related to the speed limit information.
  • the method for processing messages in the server system further includes: obtaining quantified data of the first message in the transmission line between the first device and the second device;
  • the quantified data of the first message in the first message determines the size of the space that the first message needs to occupy in the transmission line; and the speed limit for the second message is obtained according to the remaining space information of the first message storage area
  • the information specifically includes: obtaining rate limit information for the second message according to the size of the space that the first message needs to occupy in the transmission line and the remaining space information of the first message storage area; wherein, the transmission line
  • the size of the space that the first message needs to occupy is negatively related to the speed limit information.
  • the method for processing messages in the server system further includes: obtaining quantified data of the first message in the transmission line between the first device and the second device; The quantified data of the first message in the transmission line is used to determine the size of the space that the first message needs to occupy in the transmission line; Speed limit information; wherein the size of the space that the first message needs to occupy in the transmission line is negatively related to the speed limit information.
  • the obtaining quantified data of the first message in the transmission line between the first device and the second device includes: obtaining quantized data of the second message sent by the first device Data and the quantized data of the first message received by the first device; according to the quantized data of the second message sent by the first device and the quantized data of the first message received by the first device To obtain the quantized data of the first message in the transmission line between the first device and the second device.
  • the method for processing messages in the server system further includes: obtaining remaining space information of the first message storage area; if the remaining space information is less than or equal to a set spatial information threshold, using the The speed limit information determined by the current spatial information controls the speed at which the first device sends the second message to the second device.
  • this application also provides an apparatus for processing messages in a server system, including: a current spatial information obtaining unit and a first control unit; the current spatial information obtaining unit is configured to obtain the second device in the server system The current space information of the first message storage area of the first device provided by the first device in the server system, and the first message storage area is used to cache the first message storage area sent by the second device to the first device.
  • the first control unit is used for the second device to control the sending of the first message according to the current space information.
  • the current spatial information obtaining unit is specifically configured to: the second device sends a request message for the current spatial information of the first message storage area of the first device to the first device; The second device obtains the response message that the first device returns to the request message and carries the current space information of the first message storage area of the first device; obtains the first device's first device from the response message The current spatial information of a message storage area.
  • the first control unit is specifically configured to: before the second device sends the first message to the first device, compare the space information that the first message needs to occupy with the current space Information is compared, and if the current spatial information meets the size of the space required by the first message, the first message is sent to the first device end, and if the current spatial information does not meet the first The size of the space that the message needs to occupy, then stop sending the first message to the first device end.
  • the current spatial information obtaining unit is specifically configured to: the second device obtains the response message returned by the first device and carrying the Credit value of the first message storage area of the first device; wherein, The Credit value is the trust value of the flow control basic unit contained in the first message storage area of the first device; the Credit value is read from the response message; the first device's first device is determined according to the Credit value The current spatial information of a message storage area.
  • the apparatus for processing messages in the server system further includes: an indication Credit value obtaining unit and a second control unit; the indication Credit value obtaining unit is used for the second device in the server system to obtain the server The indicated Credit value provided by the first device in the system; the second control unit is configured to control the sending of the first message by the second device according to the indicated Credit value.
  • the second control unit is specifically configured to: when the indicated Credit value is the set initial Credit value, start to control the sending of the first message; when the indicated Credit value is the set target Credit value, then cancel the control of sending the first message.
  • this application also provides an apparatus for processing messages in a server system, including: a current spatial information obtaining unit and a response information sending unit; the current spatial information obtaining unit is used to obtain the first device in the server system The current space information of a message storage area, the first message storage area is used to cache the first message sent by the second device in the server system to the first device; the response information sending unit is used to send The second device sends response information that carries the current spatial information, and the response information is used to trigger the second device to control the sending of the first message.
  • the response information sending unit is specifically configured to: the first device obtains a request message sent by the second device to obtain current spatial information of the first message storage area of the first device; A device returns a response message carrying current space information of the first message storage area of the first device to the second device in response to the request message.
  • the apparatus for processing messages in the server system further includes: a spatial information quantization unit; the spatial information quantization unit is configured to quantize the current spatial information to obtain a Credit for the current spatial information Value, where the Credit value is used to indicate the current remaining space size of the first message storage area of the first device.
  • the apparatus for processing messages in the server system further includes: a first response information sending unit and a second response information sending unit; the first response information sending unit is configured to send to the second device The response information carrying the initial Credit value; wherein the response information carrying the initial Credit value is used to initiate control of the sending of the first message; the second response information sending form is used to send the Second, the device sends response information that carries the target Credit value; wherein the response information that carries the target Credit value is used to cancel control of sending the first message.
  • this application also provides an apparatus for processing messages in a server system, including: a spatial information obtaining unit and a speed limit information obtaining unit; the spatial information obtaining unit is used to obtain a first message of a first device in the server system The space information of the storage area, the first message storage area is used to cache the first message received by the first device from the second device in the server system; the speed limit information obtaining unit is used to The space information of the first message storage area is used to obtain the rate limit information for the second message; wherein, the second message is a message sent by the first device to the second device, and the first message is the A response message of the second device to the second message.
  • the speed limit information obtaining unit is specifically configured to: obtain the speed limit information for the second message according to the remaining space information of the first message storage area; wherein, the remaining space information and the speed limit Information becomes negatively correlated.
  • the apparatus for processing messages in the server system further includes: a spatial information quantization unit and a spatial information size determination unit; the spatial information quantization unit is configured to obtain the first device and the second device The quantized data of the first message in the transmission line between the transmission line; the spatial information size determining unit is configured to determine the first message in the transmission line according to the quantized data of the first message in the transmission line The size of the space that the message needs to occupy; the speed limit information obtaining unit is specifically configured to: obtain information about the first message according to the size of the space that the first message needs to occupy in the transmission line and the remaining space information of the first message storage area 2.
  • the rate limit information of the message wherein the size of the space that the first message needs to occupy in the transmission line is negatively related to the rate limit information.
  • the apparatus for processing messages in the server system further includes: a spatial information quantization unit and a spatial information size determination unit; the spatial information quantization unit is configured to obtain the first device and the second device The quantized data of the first message in the transmission line between the transmission line; the spatial information size determining unit is configured to determine the first message in the transmission line according to the quantized data of the first message in the transmission line The size of the space that the message needs to occupy; the rate limit information obtaining unit is configured to obtain the rate limit information for the second message according to the size of the space that the first message needs to occupy in the transmission line; wherein, the transmission line The size of the space that the first message needs to occupy is negatively related to the speed limit information.
  • the spatial information quantization unit is specifically configured to: obtain quantized data of the second message sent by the first device and quantized data of the first message received by the first device; The difference between the quantized data of the second message sent by the first device and the quantized data of the first message received by the first device to obtain the transmission line between the first device and the second device Quantitative data of the first message described in.
  • the device for processing messages in the server system further includes: obtaining remaining space information of the first message storage area; if the remaining space information is less than or equal to a set spatial information threshold, using the The speed limit information determined by the current spatial information controls the speed at which the first device sends the second message to the second device.
  • this application also provides a system for processing messages in a server system, including: the above-mentioned device for processing messages in the server system.
  • this application also provides an electronic device, including: a processor and a memory; the memory is used to store a program of a method for processing messages in a server system, and the device is powered on and runs the processing of messages in the server system through the processor.
  • the second device in the server system obtains the current space information of the first message storage area of the first device provided by the first device in the server system, and the first message The storage area is used to buffer the first message sent by the second device to the first device; the second device controls the sending of the first message according to the current space information.
  • the present application also provides a storage device that stores a program of a method for processing messages in a server system.
  • the program is run by a processor to perform the following steps: a second device in the server system obtains information in the server system The current space information of the first message storage area of the first device provided by the first device, where the first message storage area is used to buffer the first message sent by the second device to the first device; The second device controls the sending of the first message according to the current space information.
  • the messages sent between devices in the server system can be accurately controlled according to the space status of the message receiving device in the server system, and message congestion between devices in the server system can be prevented , Thereby improving the data processing efficiency of the server system.
  • FIG. 2 is a schematic diagram of a message processing device in a server system provided by an embodiment of the present invention
  • FIG. 3 is a schematic diagram of an electronic device provided by an embodiment of the present invention.
  • 5c is a flowchart of a method for processing CPL (Completion) messages in a server system provided by an embodiment of the present invention
  • 6a is a flowchart of the first stage before application of a method for processing Post messages in a server system according to an embodiment of the present invention
  • the second device sends a request message for the current space information of the first message storage area of the first device to the first device.
  • the sending of the first message is controlled according to the indicated Credit value.
  • the sending of response information carrying current spatial information to the second device can be specifically implemented in the following ways:
  • the current spatial information may also be quantified to obtain a Credit value for the current spatial information, where the Credit value is used to indicate the current remaining space size of the first message storage area of the first device.
  • the device system bus interface device can be installed at the interface between the first device, the second device and the system bus, and is used to control the internal function module of the first device and the system bus, and the internal function module of the second device and the system bus. Messages are exchanged and transmitted between buses, between the internal function modules of the first device and the system bus, and between the internal function modules of the second device.
  • Step 1 The second device in the server system obtains the current space information of the first message storage area of the first device provided by the first device in the server system, and the first message storage area is used to cache the information of the second device to The first message sent by the first device.
  • Step 2 The second device controls the sending of the first message according to the current space information.
  • the CPL message receiving storage area is used to receive the CPL message of the second device and forward it to the internal functional module of the first device; the CPL message receiving storage area state is provided to the traffic distribution scheduler as a judgment basis for controlling the CPL message.
  • the non-post message receiving storage area is used to receive the CPL message of the second device and forward it to the internal function module of the first device.
  • the current space information obtaining unit 201 is configured to obtain the current space information of the first message storage area of the first device provided by the first device in the server system by the second device in the server system, and the first message storage The area is used to buffer the first message sent by the second device to the first device.
  • the server system may be a traditional server system, a server cluster system or a cloud server system, and in many cases may also be other computing equipment systems for providing computing services.
  • FIG. 4 it is a schematic diagram of message congestion in a server system according to an embodiment of the present invention.
  • the return message (CPL: completion message) obtained by the computing device 1 reading the memory, and the Post message (Post Write message) written to the computing device 1 by the network card 2 are prone to collisions during transmission between devices in the server system, resulting in congestion Unordered bandwidth competition between messages.
  • CPL completion message
  • Post message Post Write message
  • the storage device 2 may refer to a cache memory (Cache) used to cache information;
  • the system bus 2 may refer to a bus that connects data, control, and status that realizes the connection between the computing device 3 and the storage device 2 (Bus).
  • the second device obtains the response message returned by the first device to the request message and carries the current space information of the first message storage area of the first device.
  • the second device After the second device records the current spatial information of the first message storage area in the first device, it determines whether the current spatial information reaches the preset spatial information threshold, and if so, triggers the congestion control mechanism provided by the present invention, that is, according to the current The spatial information controls the sending of the first message.
  • the controlling the sending of the first message according to the current space information specifically includes: before the second device sends the first message to the first device, comparing the space information that the first message needs to occupy with the current space information, if If the current space information meets the space required by the first message, the first message is sent to the first device side. If the current space information does not meet the space required by the first message, then stop sending the first message to the first device side .
  • the sending of the first message is controlled according to the indicated Credit value.
  • the controlling the sending of the first message according to the indicated Credit value specifically includes: when the indicated Credit value is the set initial Credit value, then starting to control the sending of the first message, when the indicated Credit value is the set target Credit value , Then cancel the control of sending the first message.
  • device A may refer to the first device described in the present invention
  • device B sending device
  • the Post message may be Refers to the first message in the present invention
  • the device A may be multiple receiving devices, and each receiving device is a device that receives the Post message sent by the device B.
  • Device B may record a Post remote Credit value for the above multiple receiving devices, obtain the current space information of each receiving device through the Post remote Credit value, and perform the Post message sent by device B according to the obtained current space information. control.
  • the Post remote Credit value can be updated according to the Credit value carried in the response message returned by the device A, and the Post message can be sent to the device A only when the Post remote Credit value meets the length of the Post message.
  • Using the device for processing messages in the server system provided by this application can accurately control the messages sent between devices in the server system according to the spatial state of the message receiving end of the devices in the server system, and prevent message congestion between devices in the server system , Thereby improving the computing efficiency of the server system.
  • the present invention also provides an electronic device. Please refer to FIG. 3, which is a schematic diagram of an electronic device according to an embodiment of the present invention.
  • the electronic device provided by the present invention specifically includes: a processor 302 and a memory 301.
  • the memory 301 is used to store the program of the message processing method in the server system. After the device is powered on and runs the program of the message processing method in the server system through the processor 302, the following steps are executed:
  • the second device obtains the current space information of the first message storage area of the first device provided by the first device in the server system, and the first message storage area is used to cache the information of the second device to the first The first message sent by the device; the second device controls the sending of the first message according to the current space information.
  • the present invention also provides a storage device that stores a program of the method for processing messages in the server system.
  • the program is run by the processor to perform step one: the server
  • the second device in the system obtains the current space information of the first message storage area of the first device provided by the first device in the server system, and the first message storage area is used to cache the second device to The first message sent by the first device.
  • Step 2 The second device controls the sending of the first message according to the current space information.
  • the computing device includes one or more processors (CPU), input/output interfaces, network interfaces, and memory.
  • processors CPU
  • input/output interfaces network interfaces
  • memory volatile and non-volatile memory
  • the memory may include non-permanent memory in computer readable media, random access memory (RAM) and/or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM). Memory is an example of computer readable media.
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash memory
  • Computer-readable media include permanent and non-permanent, removable and non-removable media, and information storage can be realized by any method or technology.
  • the information can be computer-readable instructions, data structures, program modules, or other data.
  • Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disc (DVD) or other optical storage, Magnetic tape storage, disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by computing devices.
  • PRAM phase change memory
  • SRAM static random access memory
  • DRAM dynamic random access memory
  • RAM random access memory
  • ROM read-only memory
  • EEPROM electrically erasable programmable read-only memory
  • flash memory or other memory technology
  • CD-ROM compact disc
  • the embodiments of the present invention can be provided as a method, a system, or a computer program product. Therefore, the present invention may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

一种服务器系统内消息的处理方法、装置及系统,其中,所述方法包括:服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息;所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。该方法根据服务器系统内接收设备端的空间状态,对服务器系统内设备之间发送的消息进行准确的控制,防止服务器系统内设备之间发生拥塞,从而提高了服务器系统的运算效率。

Description

服务器系统内消息的处理方法、装置及系统
本申请要求2019年06月04日递交的申请号为201910481358.3、发明名称为“服务器系统内消息的处理方法、装置及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及服务器系统内消息传输控制领域,具体涉及一种服务器系统内消息的处理方法。另外还涉及一种服务器系统内消息的处理的装置及系统。
背景技术
服务器,又称伺服器,是一种提供计算服务的计算设备,由处理器、内存、系统总线、硬盘以及处理器等设备构成。由于服务器内部设备之间和不同服务器之间都需要不断响应服务请求消息,并进行处理,因此,提高服务器内部设备之间和不同服务器之间数据处理的运行效率,防止设备之间的消息发生拥塞,成为本领域技术人员共同追求的技术目标。
为了解决上述问题,现有技术中通常采用点对点Credit流控的反压机制对服务器系统内部设备之间或者不同服务器系统之间通过系统总线传输的消息进行控制。但是,随着网络技术的快速发展,需要服务器系统响应并进行处理的请求消息越来越多,上述现有技术的实现方式通常不够精确,无法有效解决服务器系统内部设备之间或者不同服务器系统之间的消息拥塞问题。导致服务器系统内各个设备或者不同服务器系统之间对系统总线的争用问题越发凸显,形成的拥塞严重影响了服务器系统的数据处理的运行效率。造成的拥塞一方面导致消息的无序带宽竞争,另一方面拥塞反压至所有与拥塞设备通信的设备,造成服务器严重性能下降。
发明内容
本申请提供一种服务器系统内消息的处理方法,以解决现有技术中存在的无法有效解决服务器系统内部的消息拥塞导致的数据处理效率低下的问题。本申请另外提供一种服务器系统内消息的处理的装置及系统。
本申请提供的服务器系统内消息的处理方法,包括:服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息, 所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息;所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。
可选的,所述服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,包括:所述第二设备向所述第一设备发送针对所述第一设备的第一消息存储区的当前空间信息的请求消息;所述第二设备获得所述第一设备针对所述请求消息返回的携带有所述第一设备的第一消息存储区的当前空间信息的响应消息;从所述响应消息中获得所述第一设备的第一消息存储区的当前空间信息。
可选的,所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制,包括:在所述第二设备向所述第一设备发送所述第一消息之前,将所述第一消息需要占用的空间信息与所述当前空间信息进行比对,若所述当前空间信息满足所述第一消息需要占用的空间大小,则向所述第一设备端发送所述第一消息,若所述当前空间信息不满足所述第一消息需要占用的空间大小,则停止向所述第一设备端发送所述第一消息。
可选的,所述服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,包括:所述第二设备获得所述第一设备返回的携带有所述第一设备的第一消息存储区的Credit值的响应消息;其中,所述Credit值为所述第一设备的第一消息存储区包含的流量控制基本单元的信任值;从所述响应消息中读取Credit值;根据所述Credit值确定所述第一设备的第一消息存储区的当前空间信息。
可选的,所述的服务器系统内消息的处理方法还包括:服务器系统内的第二设备获得所述服务器系统内的第一设备提供的指示Credit值;所述第二设备根据所述指示Credit值对所述第一消息的发送进行控制。
可选的,所述的服务器系统内消息的处理方法,还包括:当所述指示Credit值为设置的初始Credit值,则启动对所述第一消息的发送进行控制;当所述指示Credit值为设置的目标Credit值,则取消对所述第一消息的发送进行控制。
相应的,本申请还提供一种服务器系统内消息的处理方法,包括:获得服务器系统内的第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述服务器系统内的第二设备向所述第一设备发出的第一消息;向所述第二设备发送携带有所述当前空间信息的响应信息,所述响应信息用于触发所述第二设备对所述第一消息的发送进行控制。
可选的,所述的服务器系统内消息的处理方法,所述向所述第二设备发送携带有所述当前空间信息的响应信息,包括:所述第一设备获得所述第二设备发出的获取所述第一设备的第一消息存储区的当前空间信息的请求消息;所述第一设备针对所述请求消息向所述第二设备返回携带有所述第一设备的第一消息存储区的当前空间信息的响应消息。
可选的,所述的服务器系统内消息的处理方法还包括:对所述当前空间信息进行量化,获得针对所述当前空间信息的Credit值,其中,Credit值用于表示所述第一设备的第一消息存储区的当前剩余空间大小。
可选的,所述的服务器系统内消息的处理方法,还包括:向所述第二设备发送携带有初始Credit值的响应信息;其中,所述携带有初始Credit值的响应信息用于启动对所述第一消息的发送进行控制;向所述第二设备发送携带有目标Credit值的响应信息;其中,所述携带有目标Credit值的响应信息用于取消对所述第一消息的发送进行控制。
相应的,本申请还提供一种服务器系统内消息的处理方法,包括:获得服务器系统内第一设备的第一消息存储区的空间信息,所述第一消息存储区用于缓存所述第一设备从所述服务器系统内的第二设备接收的第一消息;根据所述第一消息存储区的空间信息,获得针对第二消息的限速信息;其中,所述第二消息为所述第一设备向所述第二设备发送的消息,所述第一消息是所述第二设备针对所述第二消息的响应消息。
可选的,所述根据所述第一消息存储区的空间信息,获得针对第二消息的限速信息,包括:根据所述第一消息存储区的剩余空间信息,获得针对第二消息的限速信息;其中,所述剩余空间信息与所述限速信息成负相关。
可选的,所述的服务器系统内消息的处理方法,还包括:获得所述第一设备和所述第二设备之间的传输线路中所述第一消息的量化数据;根据所述传输线路中所述第一消息的量化数据,确定所述传输线路中所述第一消息需要占用的空间大小;所述根据所述第一消息存储区的剩余空间信息,获得针对第二消息的限速信息,具体包括:根据所述传输线路中所述第一消息需要占用的空间大小和所述第一消息存储区的剩余空间信息,获得针对第二消息的限速信息;其中,所述传输线路中所述第一消息需要占用的空间大小与所述限速信息成负相关。
可选的,所述的服务器系统内消息的处理方法,还包括:获得所述第一设备和所述第二设备之间的传输线路中所述第一消息的量化数据;根据所述传输线路中所述第一消息的量化数据,确定所述传输线路中所述第一消息需要占用的空间大小;根据所述传输 线路中所述第一消息需要占用的空间大小,获得针对第二消息的限速信息;其中,所述传输线路中所述第一消息需要占用的空间大小与所述限速信息成负相关。
可选的,所述获得所述第一设备和所述第二设备之间的传输线路中所述第一消息的量化数据,包括:获得所述第一设备发出的所述第二消息的量化数据和所述第一设备接收的所述第一消息的量化数据;根据所述第一设备发出的所述第二消息的量化数据和所述第一设备接收的所述第一消息的量化数据的差值,获得所述第一设备和所述第二设备之间的传输线路中所述第一消息的量化数据。
可选的,所述的服务器系统内消息的处理方法,还包括:获得所述第一消息存储区的剩余空间信息;若所述剩余空间信息小于或等于设置的空间信息阈值,则利用所述当前空间信息确定的限速信息控制所述第一设备向所述第二设备发送第二消息的速度。
相应的,本申请还提供一种服务器系统内消息的处理装置,包括:当前空间信息获得单元和第一控制单元;所述当前空间信息获得单元,用于服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息;所述第一控制单元,用于所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。
可选的,所述当前空间信息获得单元具体用于:所述第二设备向所述第一设备发送针对所述第一设备的第一消息存储区的当前空间信息的请求消息;所述第二设备获得所述第一设备针对所述请求消息返回的携带有所述第一设备的第一消息存储区的当前空间信息的响应消息;从所述响应消息中获得所述第一设备的第一消息存储区的当前空间信息。
可选的,所述第一控制单元具体用于:在所述第二设备向所述第一设备发送所述第一消息之前,将所述第一消息需要占用的空间信息与所述当前空间信息进行比对,若所述当前空间信息满足所述第一消息需要占用的空间大小,则向所述第一设备端发送所述第一消息,若所述当前空间信息不满足所述第一消息需要占用的空间大小,则停止向所述第一设备端发送所述第一消息。
可选的,所述当前空间信息获得单元具体用于:所述第二设备获得所述第一设备返回的携带有所述第一设备的第一消息存储区的Credit值的响应消息;其中,所述Credit值为所述第一设备的第一消息存储区包含的流量控制基本单元的信任值;从所述响应消息中读取Credit值;根据所述Credit值确定所述第一设备的第一消息存储区的当前空间 信息。
可选的,所述的服务器系统内消息的处理装置,还包括:指示Credit值获得单元和第二控单元;所述指示Credit值获得单元,用于服务器系统内的第二设备获得所述服务器系统内的第一设备提供的指示Credit值;所述第二控单元,用于所述第二设备根据所述指示Credit值对所述第一消息的发送进行控制。
可选的,所述第二控单元具体用于:当所述指示Credit值为设置的初始Credit值,则启动对所述第一消息的发送进行控制;当所述指示Credit值为设置的目标Credit值,则取消对所述第一消息的发送进行控制。
相应的,本申请还提供一种服务器系统内消息的处理装置,包括:当前空间信息获得单元和响应信息发送单元;所述当前空间信息获得单元,用于获得服务器系统内的第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述服务器系统内的第二设备向所述第一设备发出的第一消息;所述响应信息发送单元,用于向所述第二设备发送携带有所述当前空间信息的响应信息,所述响应信息用于触发所述第二设备对所述第一消息的发送进行控制。
可选的,所述响应信息发送单元具体用于:所述第一设备获得所述第二设备发出的获取所述第一设备的第一消息存储区的当前空间信息的请求消息;所述第一设备针对所述请求消息向所述第二设备返回携带有所述第一设备的第一消息存储区的当前空间信息的响应消息。
可选的,所述的服务器系统内消息的处理装置,还包括:空间信息量化单元;所述空间信息量化单元,用于对所述当前空间信息进行量化,获得针对所述当前空间信息的Credit值,其中,Credit值用于表示所述第一设备的第一消息存储区的当前剩余空间大小。
可选的,所述的服务器系统内消息的处理装置,还包括:第一响应信息发送单元和第二响应信息发送单元;所述第一响应信息发送单元,用于向所述第二设备发送携带有初始Credit值的响应信息;其中,所述携带有初始Credit值的响应信息用于启动对所述第一消息的发送进行控制;所述第二响应信息发送单,用于向所述第二设备发送携带有目标Credit值的响应信息;其中,所述携带有目标Credit值的响应信息用于取消对所述第一消息的发送进行控制。
相应的,本申请还提供一种服务器系统内消息的处理装置,包括:空间信息获得单元和限速信息获得单元;所述空间信息获得单元,用于获得服务器系统内第一设备的第一消息存储区的空间信息,所述第一消息存储区用于缓存所述第一设备从所述服务器系 统内的第二设备接收的第一消息;所述限速信息获得单元,用于根据所述第一消息存储区的空间信息,获得针对第二消息的限速信息;其中,所述第二消息为所述第一设备向所述第二设备发送的消息,所述第一消息是所述第二设备针对所述第二消息的响应消息。
可选的,所述限速信息获得单元具体用于:根据所述第一消息存储区的剩余空间信息,获得针对第二消息的限速信息;其中,所述剩余空间信息与所述限速信息成负相关。
可选的,所述的服务器系统内消息的处理装置,还包括:空间信息量化单元和空间信息大小确定单元;所述空间信息量化单元,用于获得所述第一设备和所述第二设备之间的传输线路中所述第一消息的量化数据;所述空间信息大小确定单元,用于根据所述传输线路中所述第一消息的量化数据,确定所述传输线路中所述第一消息需要占用的空间大小;所述限速信息获得单元具体用于:根据所述传输线路中所述第一消息需要占用的空间大小和所述第一消息存储区的剩余空间信息,获得针对第二消息的限速信息;其中,所述传输线路中所述第一消息需要占用的空间大小与所述限速信息成负相关。
可选的,所述的服务器系统内消息的处理装置,还包括:空间信息量化单元和空间信息大小确定单元;所述空间信息量化单元,用于获得所述第一设备和所述第二设备之间的传输线路中所述第一消息的量化数据;所述空间信息大小确定单元,用于根据所述传输线路中所述第一消息的量化数据,确定所述传输线路中所述第一消息需要占用的空间大小;所述限速信息获得单元,用于根据所述传输线路中所述第一消息需要占用的空间大小,获得针对第二消息的限速信息;其中,所述传输线路中所述第一消息需要占用的空间大小与所述限速信息成负相关。
可选的,所述空间信息量化单元具体用于:获得所述第一设备发出的所述第二消息的量化数据和所述第一设备接收的所述第一消息的量化数据;根据所述第一设备发出的所述第二消息的量化数据和所述第一设备接收的所述第一消息的量化数据的差值,获得所述第一设备和所述第二设备之间的传输线路中所述第一消息的量化数据。
可选的,所述的服务器系统内消息的处理装置,还包括:获得所述第一消息存储区的剩余空间信息;若所述剩余空间信息小于或等于设置的空间信息阈值,则利用所述当前空间信息确定的限速信息控制所述第一设备向所述第二设备发送第二消息的速度。
相应的,本申请还提供一种服务器系统内消息的处理系统,包括:上述所述的服务器系统内消息的处理装置。
相应的,本申请还提供一种电子设备,包括:处理器和存储器;存储器用于存储服务器系统内消息的处理方法的程序,该设备通电并通过所述处理器运行该服务器系统内 消息的处理方法的程序后,执行下述步骤:服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息;所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。
相应的,本申请还提供一种存储设备,存储有服务器系统内消息的处理方法的程序,该程序被处理器运行,执行下述步骤:服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息;所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。
与现有技术相比,本申请具有以下优点:
采用本申请提供的服务器系统内消息的处理方法,可以根据服务器系统内消息接收设备端的空间状态,对服务器系统内设备之间发送的消息进行准确的控制,防止服务器系统内设备之间发生消息拥塞,从而提高了服务器系统的数据处理效率。
附图说明
图1为本发明实施例提供的一种服务器系统内消息的处理方法的流程图;
图2为本发明实施例提供的一种服务器系统内消息的处理装置的示意图;
图3为本发明实施例提供的一种电子设备的示意图;
图4为本发明实施例提供的一种服务器系统内消息拥塞的示意图;
图5a为本发明实施例提供的一种服务器系统内CPL(Completion)消息的处理方法应用前的流程图;
图5b为本发明实施例提供的一种服务器系统内CPL(Completion)消息的处理方法应用中的流程图;
图5c为本发明实施例提供的一种服务器系统内CPL(Completion)消息的处理方法的流程图;
图6a为本发明实施例提供的一种服务器系统内Post消息的处理方法应用前的第一阶段的流程图;
图6b为本发明实施例提供的一种服务器系统内Post消息的处理方法应用中的第二阶段的流程图;
图6c为本发明实施例提供的一种服务器系统内Post消息的处理方法应用中的第三 阶段的流程图;
图6d为本发明实施例提供的一种服务器系统内Post消息的处理方法应用中的第四阶段的流程图;
图7为本发明实施例提供的一种服务器系统内Post消息接收端的处理方法的示意图;
图8为本发明实施例提供的一种服务器系统内Post消息发送端的处理方法的示意图;
图9为本发明实施例提供的一种服务器系统内的设备系统总线接口装置的示意图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此,本发明不受下面公开的具体实施例的限制。
下面基于本发明提供的服务器系统内消息的处理方法,对其实施例进行详细描述。请参考图1所示,其为本发明实施例提供的一种服务器系统内消息的处理方法的流程图。
本发明所述的实施例可以基于传统的服务器、服务器集群或者云服务器实现,具体实现过程包括以下步骤:
步骤S101:服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息。
在本发明实施例中,所述的服务器系统可以是传统的服务器系统、服务器集群系统或云服务器系统,很多时候也可以是其他用于提供计算服务的计算设备系统。
所述的第一设备可以是指服务器系统内接收第一消息的接收设备端,相应的,所述的第二设备可以是指服务器系统内发送第一消息的发送设备端。所述的第一消息可以是指服务器系统内的接收设备端读取发送设备端的数据时获得的返回消息(例如:CPL:Completion消息等),也可以是指服务器系统内的发送设备端写往接收设备端且不需要接收设备端返回确认通知的Post消息(例如:Post Write消息等)。需要说明的是,在本发明实施例中,所述的第一设备可以是指至少一个接收设备,各个接收设备都可以接收第二设备发出的第一消息。在所述第二设备可以针对上述各个接收设备分别记录其提供的内部第一消息存储区的当前空间信息。并且所述记录的所述当前空间信息可以根据 各个接收设备返回的响应信息携带的Credit值进行实时的更新。其中,所述的第一消息存储区可以是指第一消息缓存区。
如图4所述,其为本发明实施例提供的一种服务器系统内消息拥塞的示意图。计算设备1读内存获得的返回消息(CPL:completion消息),与网卡2写往计算设备1的Post消息(Post Write消息)在服务器系统内设备间进行传输过程中容易发生碰撞,造成的拥塞导致消息之间的无序带宽竞争。
需要说明的是,图4中的计算设备1和计算设备2可以是指服务器系统内提供计算能力的处理器等;所述的存储设备1可以是指服务器系统内用于存储信息的硬盘等;所述的系统总线1可以是指连接服务器系统内部主要组件的计算机总线,主要包括:数据总线DB(Data Bus)、地址总线AB(Address Bus)和控制总线CB(Control Bus)等。另外,图4中的计算设备3可以是指中央处理器(CPU,Central Processing Unit)内部提供计算能力的运算器(算术逻辑运算单元,ALU,Arithmetic Logic Unit)等;所述的存储设备2可以是指用于缓存信息的高速缓冲存储器(Cache);所述的系统总线2可以是指连接实现所述计算设备3和所述存储设备2之间联系的数据(Data)、控制及状态的总线(Bus)。
此外,所述的第一消息也可以是Non-Post消息、Post Credit请求消息等,相应的,所述第一消息存储区用于缓存第二设备向第一设备发送的第一消息,其可以是指多个接收存储区队列,例如:由用于缓存Post消息的Post消息接收存储区队列、用于缓存Non-Post消息的Non-Post消息接收存储区队列、用于缓存CPL消息的CPL消息接收存储区队列以及用于缓存Post Credit请求消息的Post Credit请求消息接收存储区队列等组成的消息存储区。
如图8所示,其为本发明实施例提供的一种服务器系统内Post消息发送端的处理方法的示意图。
在具体的实施过程中,所述的服务器系统内的第二设备获得服务器系统内的第一设备提供的第一设备的第一消息存储区的当前空间信息,具体可以通过如下方式实现:
1)第二设备向第一设备发送针对第一设备的第一消息存储区的当前空间信息的请求消息。
2)第二设备获得第一设备针对请求消息返回的携带有所述第一设备的第一消息存储区的当前空间信息的响应消息。
3)从响应消息中获得第一设备的第一消息存储区的当前空间信息。
以Post消息为例进行说明,当Post消息发送设备端(第二设备)向Post消息接收设备端(第一设备)发送针对第一设备的第一消息存储区的当前空间信息的请求消息。当Post消息发送设备端(第二设备)获得Post消息接收设备端(第一设备)针对所述请求信息返回的包含Credit值的响应信息。其中,Credit值为用于缓存Post消息的Post消息接收存储区队列对应流控基本单元的信任值,所述Credit值可以基于用于缓存Post消息的Post消息接收存储区队列对应流控基本单元的数量和预先设置的流控基本单元的字节数进行计算获得。从所述响应消息中读取Credit值,根据Credit值确定Post消息接收设备端(第一设备)的Post消息接收存储区(第一消息存储区)的当前空间信息。
步骤S102:所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。
上述步骤S101获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息。为本步骤针对所述服务器系统内第一消息的发送进行控制做了数据准备工作。在步骤S102中,可以根据服务器系统内设备消息接收端的空间状态,对服务器系统内设备之间发送的消息进行有效的控制,防止服务器系统内设备之间发生消息拥塞。
在本发明实施例中,所述的第二设备根据当前空间信息针对第一消息的发送进行控制,具体可以通过如下方式实现:
第二设备记录第一设备中第一消息存储区的当前空间信息后,判断所述当前空间信息是否达到预先设置的空间信息阈值,若是,则触发本发明提供的拥塞控制机制,即:根据当前空间信息针对第一消息的发送进行控制。
所述根据当前空间信息针对第一消息的发送进行控制,具体包括:在第二设备向第一设备发送第一消息之前,将第一消息需要占用的空间信息与当前空间信息进行比对,若当前空间信息满足第一消息需要占用的空间大小,则向第一设备端发送第一消息,若当前空间信息不满足第一消息需要占用的空间大小,则停止向第一设备端发送第一消息。
若服务器系统内的第二设备获得服务器系统内的第一设备返回的响应信息中包含指示Credit值,则根据指示Credit值对第一消息的发送进行控制。
所述根据指示Credit值对第一消息的发送进行控制,具体包括:当指示Credit值为设置的初始Credit值,则启动对第一消息的发送进行控制,当指示Credit值为设置的目标Credit值,则取消对第一消息的发送进行控制。
以Post消息为例进行说明,如图6a-6d所示,其为本发明实施例提供的一种服务器 系统内Post消息的处理方法的各个应用阶段的流程图。
在本发明所述的实施例中,设备A(接收设备)可以是指本发明所述的第一设备,设备B(发送设备)可以是指本发明所述的第二设备,Post消息可以是指本发明所述的第一消息。其中,所述设备A可以为多个接收设备,各个接收设备都为接收设备B发出的Post消息的设备。在设备B可以针对上述多个接收设备分别记录一个Post远端Credit值,通过所述Post远端Credit值获得各个接收设备的当前空间信息,根据获得的当前空间信息对设备B发出的Post消息进行控制。需要说明的是,该Post远端Credit值可以根据设备A返回的响应消息携带的Credit值更新,当Post远端Credit值满足Post消息长度时,Post消息才可以被发送至设备A。
在具体实施过程中,可以将本发明所述的实施例分为四个阶段:
第一阶段为Post消息拥塞控制关闭阶段,此时不需要设备B(Post消息发送设备端)根据设备A(Post消息接收设备端)的当前空间信息对Post消息(第一消息)的发送进行控制。设备B可以直接向设备A发送所述Post消息。
第二阶段为Post消息拥塞控制激活阶段,此时,判断设备A(Post消息接收设备端)内第一消息存储区(用于缓存Post消息的Post消息接收存储区队列)中当前空间信息是否达到预设的空间信息阈值,若是,则设备A向设备B发送携带有指示Credit值的响应消息。所述的指示Credit值为设置的初始Credit值,使得设备B可以根据初始Credit值对第一消息(Post消息)的发送进行控制。需要说明的是,所述的初始Credit值可以是指用于触发对第一消息的发送进行控制开启的控制指令字符串,也可以只是表示当前剩余空间信息的其他指令信息。
第三阶段为Post消息拥塞控制开启阶段,此时,设备A(Post消息接收设备端)内第一消息存储区(用于缓存Post消息的Post消息接收存储区队列)中当前空间信息已达到或超过预设的空间信息阈值,需要设备B在此期间内向设备A发送针对设备A的第一消息存储区的当前空间信息的请求消息,由设备A向设备B发送返回携带有指示Credit值的响应消息。根据响应信息中的Credit值,判定是否继续向所述设备A发送Post消息。
第四阶段为Post消息拥塞控制取消阶段,此时,判断设备A(Post消息接收设备端)内第一消息存储区(用于缓存Post消息的Post消息接收存储区队列)中当前空间信息是否低于预设的空间信息阈值,若是,则设备A向设备B发送携带有指示Credit值的响应消息。所述的指示Credit值为设置的目标Credit值,使得设备B可以根据目标Credit值对Post消息(第一消息)的发送进行取消控制。需要说明的是,所述的初始Credit值可 以是指用于触发对Post消息的发送进行控制取消的控制指令字符串,也可以只是表示当前剩余空间信息的指令信息。采用本申请提供的服务器系统内消息的处理方法,可以根据服务器系统内设备消息接收端的空间状态,对服务器系统内设备之间发送的消息进行准确的控制,防止服务器系统内设备之间发生消息拥塞,从而提高了服务器系统的运算效率。
上述服务器系统内消息的处理方法的执行主体是基于第一消息的发送设备端展开的,与上述提供的服务器系统内消息的处理方法相对应,本发明还提供一种基于第一消息的接收设备端展开的服务器系统内消息的处理方法。由于该第一消息的接收设备端的服务器系统内消息的处理方法的实施例相似于上述第一消息的发送设备端的服务器系统内消息的处理方法的实施例,所以描述的比较简单,相关之处请参见上述方法实施例部分的说明即可,下面描述的服务器系统内消息的处理方法的实施例仅是示意性的。请参考图7所示,其为本发明实施例提供的一种服务器系统内Post消息接收端的处理方法的示意图。
本发明实施例所述的服务器系统内消息的处理方法包括如下步骤:
步骤S201:获得服务器系统内的第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述服务器系统内的第二设备向所述第一设备发出的第一消息。
步骤S202:向所述第二设备发送携带有所述当前空间信息的响应信息,所述响应信息用于触发所述第二设备对所述第一消息的发送进行控制。
在本发明所述的实施例中,所述的向第二设备发送携带有当前空间信息的响应信息,具体可以通过如下方式实现:
第一设备获得第二设备发出的获取第一设备的第一消息存储区的当前空间信息的请求消息。第一设备针对请求消息向第二设备返回携带有第一设备的第一消息存储区的当前空间信息的响应消息。
在具体实施过程中,还可以对当前空间信息进行量化,获得针对当前空间信息的Credit值,其中,Credit值用于表示第一设备的第一消息存储区的当前剩余空间大小。
此外,还可以向第二设备发送携带有初始Credit值或目标Credit值的响应信息;其中,携带有初始Credit值的响应信息用于启动对所述第一消息的发送进行控制,携带有目标Credit值的响应信息用于取消对所述第一消息的发送进行控制。
上述两种服务器系统内消息的处理方法针对第一消息可以是CPL消息也可以是Post 消息,与上述提供的服务器系统内消息的处理方法相对应,本发明还提供另一种针对CPL消息服务器系统内消息的处理方法。请参考图5a、5b和图5c所示,其分别为本发明实施例提供的一种服务器系统内CPL(Completion)消息的处理方法应用前和应用中的流程图。
步骤S301:获得服务器系统内第一设备的第一消息存储区的空间信息,所述第一消息存储区用于缓存所述第一设备从所述服务器系统内的第二设备接收的第一消息。
步骤S302:根据所述第一消息存储区的空间信息,获得针对第二消息的限速信息;其中,所述第二消息为所述第一设备向所述第二设备发送的消息,所述第一消息是所述第二设备针对所述第二消息的响应消息。
在本发明所述的实施例中,所述的根据所述第一消息存储区的空间信息,获得针对第二消息的限速信息,具体可以通过如下方式实现:根据第一消息存储区的剩余空间信息,获得针对第二消息的限速信息;其中,剩余空间信息与所述限速信息成负相关。
在具体实施过程中,还可以获得第一设备和所述第二设备之间的传输线路中第一消息的量化数据,根据传输线路中第一消息的量化数据,确定传输线路中所述第一消息需要占用的空间大小。相应的,根据第一消息存储区的剩余空间信息,获得针对第二消息的限速信息,具体包括:根据传输线路中第一消息需要占用的空间大小和第一消息存储区的剩余空间信息,获得针对第二消息的限速信息;其中,传输线路中所述第一消息需要占用的空间大小与限速信息成负相关。
需要说明的是,所述的获得第一设备和第二设备之间的传输线路中第一消息的量化数据,具体可以通过如下方式实现:获得第一设备发出的第二消息的量化数据和第一设备接收的第一消息的量化数据;根据第一设备发出的第二消息的量化数据和第一设备接收的第一消息的量化数据的差值,获得第一设备和第二设备之间的传输线路中第一消息的量化数据。
如图9所示,其为本发明实施例提供的一种服务器系统内的设备系统总线接口装置的示意图。
所述的设备系统总线接口装置可以安装在第一设备、第二设备与系统总线之间的接口处,用于控制第一设备内部功能模块与系统总线之间、第二设备内部功能模块与系统总线之间、第一设备内部功能模块与系统总线以及第二设备内部功能模块之间进行消息交互传输。
所述控制消息交互传输的步骤包括:
步骤一:服务器系统内的第二设备获得服务器系统内的第一设备提供的第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向第一设备发送的第一消息。
步骤二:第二设备根据当前空间信息针对第一消息的发送进行控制。
在具体实施过程中,所述的设备系统总线接口装置可以包括:系统控制器、发送模块和接收模块。其中,发送模块可以包括CPL消息发送队列903、Post消息发送队列904、Non-post消息发送队列905、Post远端Credit管理模块906、输出调度器901和流量分配调度器902等。接收模块可以包括CPL消息接收存储区907、Post消息接收存储区908、Non-post消息接收存储区909、Post Credit请求消息接收存储区910、Post Credit响应消息接收存储区911以及Post本地Credit管理模块912等。
所述系统控制器用于控制第一设备内部功能模块、第二设备内部功能模块与系统总线的进行消息交互传输,例如:PCIE接口控制器、CCIX接口控制器、GenZ接口控制器等。
发送模块可以用于缓存第一设备或第二设备内部功能模块的发出消息,并执行本发明提供的服务器系统内消息的处理方法,控制消息的发送。CPL消息发送队列、Post消息发送队列和Non-post消息发送队列分别用于缓存来自第一设备内部功能模块的CPL消息、Post消息和Non-post消息。
Post远端Credit管理模块用于根据接收模块获得的携带有Credit值的响应消息、输出调度器发送Post消息情况并计算Post远端Credit值,将Post远端Credit值输出给输出调度器。
流量分配调度器可以用于执行本发明提供的服务器系统内消息的处理方法,控制Non-post消息发送队列处理速度,针对第二设备的请求消息返回根据Post本地Credit模块提供的携带有Credit值的响应消息。
输出调度器用于执行本发明提供的服务器系统内消息的处理方法,在发送方Post消息拥塞控制开启阶段产生请求消息,控制Post消息的发送速度。同时实现CPL消息、Post消息、Non-post消息、响应消息、请求消息的输出仲裁。
Post Credit请求接收存储区用于接收发送设备的Post Credit请求,然后传递给发送模块的流量分配调度器,由流量分配调度器去产生携带有Credit值的响应消息。
Post接收存储区用于接收发送设备的Post消息,并转发至第一设备内部功能模块。将第一设备Post接收存储区状态提供给Post本地Credit管理模块,以生成Credit值。
CPL消息接收存储区用于接收第二设备的CPL消息,并转发至第一设备内部功能模块;将CPL消息接收存储区状态提供给流量分配调度器,作为进行CPL消息进行控制的判断依据。
Non-post消息接收存储区用于接收第二设备的CPL消息,并转发至第一设备内部功能模块。
Post Credit响应接收存储区用于接收第一设备的响应消息,将其中Credit值提取后传给Post远端Credit管理模块,供其计算Post远端Credit值。
Post本地Credit模块用于根据Post消息接收存储区的状态、系统总线峰值带宽计算可以分配给发送设备的Credit总量,并将该Credit总量提供给流量分配调度器,由流量分配调度器决定如何将Credit总量分配给各个响应消息。
与上述提供的服务器系统内消息的处理方法相对应,本发明还提供一种服务器系统内消息的处理装置。由于该装置的实施例相似于上述方法实施例,所以描述的比较简单,相关之处请参见上述方法实施例部分的说明即可,下面描述的服务器系统内消息的处理装置的实施例仅是示意性的。请参考图2所示,其为本发明实施例提供的一种服务器系统内消息的处理装置的示意图。
本发明实施例所述的服务器系统内消息的处理装置包括如下部分:
当前空间信息获得单元201,用于服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息。
在本发明实施例中,所述的服务器系统可以是传统的服务器系统、服务器集群系统或云服务器系统,很多时候也可以是其他用于提供计算服务的计算设备系统。
所述的第一设备可以是指服务器系统内接收第一消息的接收设备端,相应的,所述的第二设备可以是指服务器系统内发送第一消息的发送设备端。所述的第一消息可以是指服务器系统内的接收设备端读取发送设备端的数据时获得的返回消息(例如:CPL:Completion消息等),也可以是指服务器系统内的发送设备端写往接收设备端且不需要接收设备端返回确认通知的Post消息(例如:Post Write消息等)。需要说明的是,在本发明实施例中,所述的第一设备可以是指至少一个接收设备,各个接收设备都可以接收第二设备发出的第一消息。在所述第二设备可以针对上述各个接收设备分别记录其提供的内部第一消息存储区的当前空间信息。并且所述记录的所述当前空间信息可以根据各个接收设备返回的响应信息携带的Credit值进行实时的更新。
如图4所述,其为本发明实施例提供的一种服务器系统内消息拥塞的示意图。计算设备1读内存获得的返回消息(CPL:completion消息),与网卡2写往计算设备1的Post消息(Post Write消息)在服务器系统内设备间进行传输过程中容易发生碰撞,造成的拥塞导致消息之间的无序带宽竞争。需要说明的是,图4中的计算设备1和计算设备2可以是指服务器系统内提供计算能力的处理器等;所述的存储设备1可以是指服务器系统内用于存储信息的硬盘等;所述的系统总线1可以是指连接服务器系统内部主要组件的计算机总线,主要包括:数据总线DB(Data Bus)、地址总线AB(Address Bus)和控制总线CB(Control Bus)等。另外,图4中的计算设备3可以是指中央处理器(CPU,Central Processing Unit)内部提供计算能力的运算器(算术逻辑运算单元,ALU,Arithmetic Logic Unit)等;所述的存储设备2可以是指用于缓存信息的高速缓冲存储器(Cache);所述的系统总线2可以是指连接实现所述计算设备3和所述存储设备2之间联系的数据(Data)、控制及状态的总线(Bus)。
此外,所述的第一消息也可以是Non-Post消息、Post Credit请求消息等,相应的,所述第一消息存储区用于缓存第二设备向第一设备发送的第一消息,其可以是指多个接收存储区队列,例如:由用于缓存Post消息的Post消息接收存储区队列、用于缓存Non-Post消息的Non-Post消息接收存储区队列、用于缓存CPL消息的CPL消息接收存储区队列以及用于缓存Post Credit请求消息的Post Credit请求消息接收存储区队列等组成的消息存储区。
如图8所示,其为本发明实施例提供的一种服务器系统内Post消息发送端的处理方法的示意图。
在具体的实施过程中,所述的服务器系统内的第二设备获得服务器系统内的第一设备提供的第一设备的第一消息存储区的当前空间信息,具体可以通过如下方式实现:
1)第二设备向第一设备发送针对第一设备的第一消息存储区的当前空间信息的请求消息。
2)第二设备获得第一设备针对请求消息返回的携带有所述第一设备的第一消息存储区的当前空间信息的响应消息。
3)从响应消息中获得第一设备的第一消息存储区的当前空间信息。
以Post消息为例进行说明,当Post消息发送设备端(第二设备)向Post消息接收设备端(第一设备)发送针对第一设备的第一消息存储区的当前空间信息的请求消息。当Post消息发送设备端(第二设备)获得Post消息接收设备端(第一设备)针对所述请 求信息返回的包含Credit值的响应信息。其中,Credit值为用于缓存Post消息的Post消息接收存储区队列对应流控基本单元的信任值,所述Credit值可以基于用于缓存Post消息的Post消息接收存储区队列对应流控基本单元的数量和预先设置的流控基本单元的字节数进行计算获得。从所述响应消息中读取Credit值,根据Credit值确定Post消息接收设备端(第一设备)的Post消息接收存储区(第一消息存储区)的当前空间信息。
第一控制单元202,用于所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。
上述当前空间信息获得单元201获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息。为第一控制单元202对所述服务器系统内第一消息的发送进行控制做了数据准备工作。在第一控制单元202中,可以根据服务器系统内设备消息接收端的空间状态,对服务器系统内设备之间发送的消息进行有效的控制,防止服务器系统内设备之间发生消息拥塞。
在本发明实施例中,所述的第二设备根据当前空间信息针对第一消息的发送进行控制,具体可以通过如下方式实现:
第二设备记录第一设备中第一消息存储区的当前空间信息后,判断所述当前空间信息是否达到预先设置的空间信息阈值,若是,则触发本发明提供的拥塞控制机制,即:根据当前空间信息针对第一消息的发送进行控制。
所述根据当前空间信息针对第一消息的发送进行控制,具体包括:在第二设备向第一设备发送第一消息之前,将第一消息需要占用的空间信息与当前空间信息进行比对,若当前空间信息满足第一消息需要占用的空间大小,则向第一设备端发送第一消息,若当前空间信息不满足第一消息需要占用的空间大小,则停止向第一设备端发送第一消息。
若服务器系统内的第二设备获得服务器系统内的第一设备返回的响应信息中包含指示Credit值,则根据指示Credit值对第一消息的发送进行控制。
所述根据指示Credit值对第一消息的发送进行控制,具体包括:当指示Credit值为设置的初始Credit值,则启动对第一消息的发送进行控制,当指示Credit值为设置的目标Credit值,则取消对第一消息的发送进行控制。
以Post消息为例进行说明,如图6a-6d所示,其为本发明实施例提供的一种服务器系统内Post消息的处理方法的流程图。
在本发明所述的实施例中,设备A(接收设备)可以是指本发明所述的第一设备,设备B(发送设备)可以是指本发明所述的第二设备,Post消息可以是指本发明所述的 第一消息。其中,所述设备A可以为多个接收设备,各个接收设备都为接收设备B发出的Post消息的设备。在设备B可以针对上述多个接收设备分别记录一个Post远端Credit值,通过所述Post远端Credit值获得各个接收设备的当前空间信息,根据获得的当前空间信息对设备B发出的Post消息进行控制。需要说明的是,该Post远端Credit值可以根据设备A返回的响应消息携带的Credit值更新,当Post远端Credit值满足Post消息长度时,Post消息才可以被发送至设备A。
在具体实施过程中,可以将本发明所述的实施例分为四个阶段:
第一阶段为Post消息拥塞控制关闭阶段,此时不需要设备B(Post消息发送设备端)根据设备A(Post消息接收设备端)的当前空间信息对Post消息(第一消息)的发送进行控制。设备B可以直接向设备A发送所述Post消息。
第二阶段为Post消息拥塞控制激活阶段,此时,判断设备A(Post消息接收设备端)内第一消息存储区(用于缓存Post消息的Post消息接收存储区队列)中当前空间信息是否达到预设的空间信息阈值,若是,则设备A向设备B发送携带有指示Credit值的响应消息。所述的指示Credit值为设置的初始Credit值,使得设备B可以根据初始Credit值对第一消息(Post消息)的发送进行控制。需要说明的是,所述的初始Credit值可以是指用于触发对第一消息的发送进行控制开启的控制指令字符串,也可以只是表示当前剩余空间信息的其他指令信息。
第三阶段为Post消息拥塞控制开启阶段,此时,设备A(Post消息接收设备端)内第一消息存储区(用于缓存Post消息的Post消息接收存储区队列)中当前空间信息已达到或超过预设的空间信息阈值,需要设备B在此期间内向设备A发送针对设备A的第一消息存储区的当前空间信息的请求消息,由设备A向设备B发送返回携带有指示Credit值的响应消息。根据响应信息中的Credit值,判定是否继续向所述设备A发送Post消息。
第四阶段为Post消息拥塞控制取消阶段,此时,判断设备A(Post消息接收设备端)内第一消息存储区(用于缓存Post消息的Post消息接收存储区队列)中当前空间信息是否低于预设的空间信息阈值,若是,则设备A向设备B发送携带有指示Credit值的响应消息。所述的指示Credit值为设置的目标Credit值,使得设备B可以根据目标Credit值对Post消息(第一消息)的发送进行取消控制。需要说明的是,所述的初始Credit值可以是指用于触发对Post消息的发送进行控制取消的控制指令字符串,也可以只是表示当前剩余空间信息的指令信息。
采用本申请提供的服务器系统内消息的处理装置,可以根据服务器系统内设备消息 接收端的空间状态,对服务器系统内设备之间发送的消息进行准确的控制,防止服务器系统内设备之间发生消息拥塞,从而提高了服务器系统的运算效率。
与上述提供的服务器系统内消息的处理方法相对应,本发明还提供一种电子设备。请参见图3所示,其为本发明实施例提供的一种电子设备的示意图。
本发明提供的电子设备具体包括:处理器302和存储器301。其中,存储器301用于存储服务器系统内消息的处理方法的程序,该设备通电并通过所述处理器302运行该服务器系统内消息的处理方法的程序后,执行下述步骤:服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息;所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。
与上述提供的服务器系统内消息的处理方法相对应,本发明还提供一种存储设备,该存储设备存储有服务器系统内消息的处理方法的程序,该程序被处理器运行,执行步骤一:服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息。步骤二:所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。
本发明虽然以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以做出可能的变动和修改,因此,本发明的保护范围应当以本发明权利要求所界定的范围为准。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁 带存储,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
本领域技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

Claims (22)

  1. 一种服务器系统内消息的处理方法,其特征在于,包括:
    服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息;
    所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。
  2. 根据权利要求1所述的服务器系统内消息的处理方法,其特征在于,所述服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,包括:
    所述第二设备向所述第一设备发送针对所述第一设备的第一消息存储区的当前空间信息的请求消息;
    所述第二设备获得所述第一设备针对所述请求消息返回的携带有所述第一设备的第一消息存储区的当前空间信息的响应消息;
    从所述响应消息中获得所述第一设备的第一消息存储区的当前空间信息。
  3. 根据权利要求1所述的服务器系统内消息的处理方法,其特征在于,所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制,包括:
    在所述第二设备向所述第一设备发送所述第一消息之前,将所述第一消息需要占用的空间信息与所述当前空间信息进行比对,若所述当前空间信息满足所述第一消息需要占用的空间大小,则向所述第一设备端发送所述第一消息,若所述当前空间信息不满足所述第一消息需要占用的空间大小,则停止向所述第一设备端发送所述第一消息。
  4. 根据权利要求1所述的服务器系统内消息的处理方法,其特征在于,所述服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,包括:
    所述第二设备获得所述第一设备返回的携带有所述第一设备的第一消息存储区的Credit值的响应消息;其中,所述Credit值为所述第一设备的第一消息存储区包含的流量控制基本单元的信任值;
    从所述响应消息中读取Credit值;
    根据所述Credit值确定所述第一设备的第一消息存储区的当前空间信息。
  5. 根据权利要求1所述的服务器系统内消息的处理方法,其特征在于,还包括:
    服务器系统内的第二设备获得所述服务器系统内的第一设备提供的指示Credit值;
    所述第二设备根据所述指示Credit值对所述第一消息的发送进行控制。
  6. 根据权利要求5所述的服务器系统内消息的处理方法,其特征在于,所述第二设备根据所述指示Credit值对所述第一消息的发送进行控制,包括:
    当所述指示Credit值为设置的初始Credit值,则启动对所述第一消息的发送进行控制;
    当所述指示Credit值为设置的目标Credit值,则取消对所述第一消息的发送进行控制。
  7. 一种服务器系统内消息的处理方法,其特征在于,包括:
    获得服务器系统内的第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述服务器系统内的第二设备向所述第一设备发出的第一消息;
    向所述第二设备发送携带有所述当前空间信息的响应信息,所述响应信息用于触发所述第二设备对所述第一消息的发送进行控制。
  8. 根据权利要求7所述的服务器系统内消息的处理方法,其特征在于,所述向所述第二设备发送携带有所述当前空间信息的响应信息,包括:
    所述第一设备获得所述第二设备发出的获取所述第一设备的第一消息存储区的当前空间信息的请求消息;
    所述第一设备针对所述请求消息向所述第二设备返回携带有所述第一设备的第一消息存储区的当前空间信息的响应消息。
  9. 根据权利要求7所述的服务器系统内消息的处理方法,其特征在于,还包括:
    对所述当前空间信息进行量化,获得针对所述当前空间信息的Credit值,其中,Credit值用于表示所述第一设备的第一消息存储区的当前剩余空间大小。
  10. 根据权利要求7所述的服务器系统内消息的处理方法,其特征在于,还包括:
    向所述第二设备发送携带有初始Credit值的响应信息;其中,所述携带有初始Credit值的响应信息用于启动对所述第一消息的发送进行控制;
    向所述第二设备发送携带有目标Credit值的响应信息;其中,所述携带有目标Credit值的响应信息用于取消对所述第一消息的发送进行控制。
  11. 一种服务器系统内消息的处理方法,其特征在于,包括:
    获得服务器系统内第一设备的第一消息存储区的空间信息,所述第一消息存储区用于缓存所述第一设备从所述服务器系统内的第二设备接收的第一消息;
    根据所述第一消息存储区的空间信息,获得针对第二消息的限速信息;其中,所述 第二消息为所述第一设备向所述第二设备发送的消息,所述第一消息是所述第二设备针对所述第二消息的响应消息。
  12. 根据权利要求11所述的服务器系统内消息的处理方法,其特征在于,所述根据所述第一消息存储区的空间信息,获得针对第二消息的限速信息,包括:
    根据所述第一消息存储区的剩余空间信息,获得针对第二消息的限速信息;其中,所述剩余空间信息与所述限速信息成负相关。
  13. 根据权利要求12所述的服务器系统内消息的处理方法,其特征在于,还包括:
    获得所述第一设备和所述第二设备之间的传输线路中所述第一消息的量化数据;
    根据所述传输线路中所述第一消息的量化数据,确定所述传输线路中所述第一消息需要占用的空间大小;
    所述根据所述第一消息存储区的剩余空间信息,获得针对第二消息的限速信息,具体包括:
    根据所述传输线路中所述第一消息需要占用的空间大小和所述第一消息存储区的剩余空间信息,获得针对第二消息的限速信息;其中,所述传输线路中所述第一消息需要占用的空间大小与所述限速信息成负相关。
  14. 根据权利要求11所述的服务器系统内消息的处理方法,其特征在于,还包括:
    获得所述第一设备和所述第二设备之间的传输线路中所述第一消息的量化数据;
    根据所述传输线路中所述第一消息的量化数据,确定所述传输线路中所述第一消息需要占用的空间大小;
    根据所述传输线路中所述第一消息需要占用的空间大小,获得针对第二消息的限速信息;其中,所述传输线路中所述第一消息需要占用的空间大小与所述限速信息成负相关。
  15. 根据权利要求14所述的服务器系统内消息的处理方法,其特征在于,所述获得所述第一设备和所述第二设备之间的传输线路中所述第一消息的量化数据,包括:
    获得所述第一设备发出的所述第二消息的量化数据和所述第一设备接收的所述第一消息的量化数据;
    根据所述第一设备发出的所述第二消息的量化数据和所述第一设备接收的所述第一消息的量化数据的差值,获得所述第一设备和所述第二设备之间的传输线路中所述第一消息的量化数据。
  16. 根据权利要求11所述的服务器系统内消息的处理方法,其特征在于,还包括:
    获得所述第一消息存储区的剩余空间信息;
    若所述剩余空间信息小于或等于设置的空间信息阈值,则利用当前空间信息确定的限速信息控制所述第一设备向所述第二设备发送第二消息的速度。
  17. 一种服务器系统内消息的处理装置,其特征在于,包括:当前空间信息获得单元和第一控制单元;
    所述当前空间信息获得单元,用于服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息;
    所述第一控制单元,用于所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。
  18. 一种服务器系统内消息的处理装置,其特征在于,包括:当前空间信息获得单元和响应信息发送单元;
    所述当前空间信息获得单元,用于获得服务器系统内的第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述服务器系统内的第二设备向所述第一设备发出的第一消息;
    所述响应信息发送单元,用于向所述第二设备发送携带有所述当前空间信息的响应信息,所述响应信息用于触发所述第二设备对所述第一消息的发送进行控制。
  19. 一种服务器系统内消息的处理装置,其特征在于,包括:空间信息获得单元和限速信息获得单元;
    所述空间信息获得单元,用于获得服务器系统内第一设备的第一消息存储区的空间信息,所述第一消息存储区用于缓存所述第一设备从所述服务器系统内的第二设备接收的第一消息;
    所述限速信息获得单元,用于根据所述第一消息存储区的空间信息,获得针对第二消息的限速信息;其中,所述第二消息为所述第一设备向所述第二设备发送的消息,所述第一消息是所述第二设备针对所述第二消息的响应消息。
  20. 一种服务器系统内消息的处理系统,其特征在于,包括:权利要求17所述的服务器系统内消息的处理装置、权利要求18所述的服务器系统内消息的处理装置以及权利要求19所述的服务器系统内消息的处理装置。
  21. 一种电子设备,其特征在于,包括:
    处理器;以及
    存储器,用于存储服务器系统内消息的处理方法的程序,该设备通电并通过所述处理器运行该服务器系统内消息的处理方法的程序后,执行下述步骤:
    服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息;
    所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。
  22. 一种存储设备,其特征在于,存储有服务器系统内消息的处理方法的程序,该程序被处理器运行,执行下述步骤:
    服务器系统内的第二设备获得所述服务器系统内的第一设备提供的所述第一设备的第一消息存储区的当前空间信息,所述第一消息存储区用于缓存所述第二设备向所述第一设备发送的第一消息;
    所述第二设备根据所述当前空间信息针对所述第一消息的发送进行控制。
PCT/CN2020/093905 2019-06-04 2020-06-02 服务器系统内消息的处理方法、装置及系统 Ceased WO2020244498A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910481358.3A CN110580202A (zh) 2019-06-04 2019-06-04 服务器系统内消息的处理方法、装置及系统
CN201910481358.3 2019-06-04

Publications (1)

Publication Number Publication Date
WO2020244498A1 true WO2020244498A1 (zh) 2020-12-10

Family

ID=68810451

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/093905 Ceased WO2020244498A1 (zh) 2019-06-04 2020-06-02 服务器系统内消息的处理方法、装置及系统

Country Status (2)

Country Link
CN (1) CN110580202A (zh)
WO (1) WO2020244498A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110580202A (zh) * 2019-06-04 2019-12-17 阿里巴巴集团控股有限公司 服务器系统内消息的处理方法、装置及系统
CN119182733B (zh) * 2024-11-21 2025-03-11 杭州菲田云计算有限公司 报文转发的控制方法、装置、设备及计算机程序产品

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101115053A (zh) * 2007-08-24 2008-01-30 中国科学院计算技术研究所 一种信誉流量控制方法
CN101115008A (zh) * 2007-08-24 2008-01-30 中国科学院计算技术研究所 一种基于信誉的流量控制系统、装置和方法
CN102075436A (zh) * 2011-02-10 2011-05-25 成都市华为赛门铁克科技有限公司 以太网络及其数据传输方法和装置
EP3182293A1 (en) * 2015-12-17 2017-06-21 Samsung Electronics Co., Ltd. Processor and method using credit-based flow control
CN108768898A (zh) * 2018-04-03 2018-11-06 郑州云海信息技术有限公司 一种片上网络传输报文的方法及其装置
CN110580202A (zh) * 2019-06-04 2019-12-17 阿里巴巴集团控股有限公司 服务器系统内消息的处理方法、装置及系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7609710B1 (en) * 2008-01-24 2009-10-27 Qlogic, Corporation Method and system for credit management in a networking system
CN101534173B (zh) * 2009-04-20 2011-11-09 福建星网锐捷网络有限公司 一种数据流量控制方法和系统
US8199759B2 (en) * 2009-05-29 2012-06-12 Intel Corporation Method and apparatus for enabling ID based streams over PCI express
FR2982049B1 (fr) * 2011-10-28 2014-02-28 Kalray Gestion de flux dans un reseau sur puce
CN103890746B (zh) * 2012-09-28 2016-12-28 华为技术有限公司 报文发送控制方法、处理方法、设备及系统
CN109739800A (zh) * 2019-01-08 2019-05-10 郑州云海信息技术有限公司 节点控制器的调度系统及fpga板卡

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101115053A (zh) * 2007-08-24 2008-01-30 中国科学院计算技术研究所 一种信誉流量控制方法
CN101115008A (zh) * 2007-08-24 2008-01-30 中国科学院计算技术研究所 一种基于信誉的流量控制系统、装置和方法
CN102075436A (zh) * 2011-02-10 2011-05-25 成都市华为赛门铁克科技有限公司 以太网络及其数据传输方法和装置
EP3182293A1 (en) * 2015-12-17 2017-06-21 Samsung Electronics Co., Ltd. Processor and method using credit-based flow control
CN108768898A (zh) * 2018-04-03 2018-11-06 郑州云海信息技术有限公司 一种片上网络传输报文的方法及其装置
CN110580202A (zh) * 2019-06-04 2019-12-17 阿里巴巴集团控股有限公司 服务器系统内消息的处理方法、装置及系统

Also Published As

Publication number Publication date
CN110580202A (zh) 2019-12-17

Similar Documents

Publication Publication Date Title
CN109690512B (zh) 具有触发操作的gpu远程通信
CN109347757B (zh) 消息拥塞控制方法、系统、设备及存储介质
US10078470B2 (en) Signal transfer device that maintains order of a read request and write request in posted write memory access
CN107347039B (zh) 一种共享缓存空间的管理方法及装置
CN107783727A (zh) 一种内存设备的访问方法、装置和系统
WO2023116438A1 (zh) 一种数据访问方法、装置以及设备
CN115934625B (zh) 一种用于远程直接内存访问的敲门铃方法、设备及介质
CN113687781A (zh) 一种热数据的上拉方法、装置、设备及介质
WO2020244498A1 (zh) 服务器系统内消息的处理方法、装置及系统
US8214448B2 (en) Optimized utilization of DMA buffers for incoming data packets in a network protocol
CN107886352A (zh) 一种广告结算的方法及系统
CN107180118A (zh) 一种文件系统缓存数据管理方法及装置
EP4040279A1 (en) Method and apparatus for accessing solid state disk
CN115623075A (zh) 一种请求处理方法及装置
WO2016206463A1 (zh) 一种写操作控制方法、装置及系统
CN111488222B (zh) 一种流聚合方法、装置及电子设备
WO2019095942A1 (zh) 一种数据传输方法及通信设备
CN104571952B (zh) 一种分开处理数据与元数据读写请求的方法
CN104509043A (zh) 基于阶段的报文优先级确定
CN115129632B (zh) 数据处理方法、相关装置及计算机可读存储介质
US12182394B2 (en) Methods and systems for managing memory buffer usage while processing computer system operations
HK40018366A (zh) 服务器系统内消息的处理方法、装置及系统
CN107592361A (zh) 一种基于双ib网络的数据传输方法、装置、设备
US11188394B2 (en) Technologies for synchronizing triggered operations
US12375380B2 (en) Host polling of a network adapter

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20818343

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20818343

Country of ref document: EP

Kind code of ref document: A1