WO2023155815A1 - 一种报文处理方法、装置、终端设备及存储介质 - Google Patents
一种报文处理方法、装置、终端设备及存储介质 Download PDFInfo
- Publication number
- WO2023155815A1 WO2023155815A1 PCT/CN2023/076263 CN2023076263W WO2023155815A1 WO 2023155815 A1 WO2023155815 A1 WO 2023155815A1 CN 2023076263 W CN2023076263 W CN 2023076263W WO 2023155815 A1 WO2023155815 A1 WO 2023155815A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- time
- real
- messages
- message
- processing
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5019—Ensuring fulfilment of SLA
- H04L41/5022—Ensuring fulfilment of SLA by giving priorities, e.g. assigning classes of service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9005—Buffering arrangements using dynamic buffer space allocation
Definitions
- the processing time of the non-real-time message is too long, resulting in the problem that the delay of the real-time message is too large, or even discarded, which seriously affects the user experience.
- the existing technology adopts a round-robin strategy, and the single processing capacity of each priority is limited. If some messages have high real-time requirements and the processing capacity of this priority is full, they need to wait until the next round to process. , which will cause the message to lose real-time performance.
- the CPU packet processing rate is lower than the packet arrival rate, packet loss will also occur, and the priority of the discarded packets cannot be determined, which may cause high-priority packets to be discarded, or low-priority packets. If the discarded packets are real-time packets, it will seriously affect the user experience.
- the technical problem to be solved by the embodiment of the present application is to provide a message processing method, device, terminal equipment and storage medium, which can reduce the packet loss rate of real-time messages, reduce the network delay of real-time messages, and ensure the timeliness and improve user experience.
- a message with a real-time message condition is a real-time message
- a message that does not meet the real-time message condition is a non-real-time message
- the single processing amount of the non-real-time message is dynamically adjusted according to the number of real-time messages in the priority processing queue, and the adjusted single processing amount of the non-real-time message is obtained, specifically To: determine the number of real-time messages in the priority processing queue; dynamically adjust the single-time processing volume of the non-real-time messages according to the relationship between the number of real-time messages and the first threshold and the second threshold, The adjusted single processing amount of non-real-time packets is obtained, wherein the first threshold is smaller than the second threshold.
- the single processing amount of the non-real-time messages is dynamically adjusted to obtain the adjusted
- the single processing capacity of the non-real-time message is specifically: when the quantity of the real-time message is 0, determine the maximum message processing capacity per unit time of the CPU as the single processing capacity; When the number is greater than 0 and less than the first threshold, or, when the number of real-time packets is greater than or equal to the first threshold and less than or equal to the second threshold, the number of real-time packets is used as a predetermined function variable, so as to dynamically adjust the single processing amount of the non-real-time message through the predetermined function to obtain the adjusted single-time processing amount of the non-real-time message; when the number of the real-time message is greater than the specified When the second threshold is determined, a predetermined constant is determined as the single processing amount.
- the predetermined function is a linear function
- the slope and adjustment constant of the linear function when the number of real-time messages is greater than 0 and smaller than the first threshold are greater than or equal to the number of real-time messages It is different when it is equal to the first threshold and less than or equal to the second threshold.
- the first threshold A a ⁇ L
- the non-real-time messages buffered in the ordinary queue are processed in the S4 according to the single processing amount, specifically:
- the embodiment of the present application also provides a message processing device, including:
- the receiving module is used to receive messages from the firmware buffer in sequence, and put the messages that meet the real-time message conditions into the priority processing queue for buffering, and put the messages that do not meet the real-time message conditions into the ordinary queue for buffering;
- the message that meets the real-time message condition is a real-time message
- the message that does not meet the real-time message condition is a non-real-time message
- the non-real-time message processing module is used to process the non-real-time messages buffered in the ordinary queue according to the single processing amount, and after each processing of the non-real-time message of the single processing amount, check all Whether there are new messages to be received in the firmware buffer, if so, then return to S1, if not, then continue to process the non-real-time messages of the single processing amount until all non-real-time messages are processed.
- the inspection module dynamically adjusts the single processing amount of the non-real-time message according to the number of real-time messages in the priority processing queue to obtain the adjusted single-time processing amount of the non-real-time message, Specifically: determining the number of real-time messages in the priority processing queue; dynamically adjusting the single-time processing volume of the non-real-time messages according to the relationship between the number of real-time messages and the first threshold and the second threshold , to obtain the adjusted single processing amount of non-real-time packets, wherein the first threshold is smaller than the second threshold.
- the inspection module dynamically adjusts the single processing amount of the non-real-time message according to the relationship between the number of the real-time message and the first threshold and the second threshold, and obtains the adjusted The single processing amount of the non-real-time message, specifically: when the quantity of the real-time message is 0, determine the maximum message processing amount per unit time of the CPU as the single processing amount; The number of real-time packets is greater than 0 and less than the first threshold, or, when the number of real-time packets is greater than or equal to the first threshold and less than or equal to the second threshold, the number of real-time packets is used as the preset function variable, to dynamically adjust the single processing capacity of the non-real-time message through the predetermined function, and obtain the single processing capacity of the adjusted non-real-time message; when the number of the real-time message is greater than When the second threshold is used, a predetermined constant is determined as the single processing amount.
- the predetermined function is a linear function
- the slope and adjustment constant of the linear function when the number of real-time messages is greater than 0 and smaller than the first threshold are greater than or equal to the number of real-time messages It is different when it is equal to the first threshold and less than or equal to the second threshold.
- the first threshold A a ⁇ L
- An embodiment of the present application also provides a terminal device, including a processor, a memory, and a computer program stored in the memory and configured to be executed by the processor.
- a terminal device including a processor, a memory, and a computer program stored in the memory and configured to be executed by the processor.
- the processor executes the computer program, the above-mentioned The message processing method described in any one.
- the beneficial effects of the message processing method, device, terminal device and storage medium are: the original coherent process of receiving and processing the message is divided into: first receive and buffer packets, and then process the packets according to the designed packet processing policy. According to the number of real-time messages in the priority processing queue, the processing capacity of non-real-time messages is dynamically adjusted to obtain the single-time processing capacity of non-real-time messages; The processing capacity handles non-real-time packets.
- FIG. 1 is a schematic flow diagram of a preferred embodiment of a message processing method provided by the present application
- FIG. 3 is a schematic structural diagram of a preferred embodiment of a message processing device provided by the present application.
- the hardware receiving packet will put the message in the firmware buffer area, and then it will interrupt and notify the software to receive the packet.
- the software receives the packets one by one from the buffer, and judges whether the real-time packet conditions are met for each packet received, and puts the packets that meet the real-time packet conditions, that is, real-time packets, into the priority processing queue for buffering , put the packets that do not meet the conditions of real-time packets, that is, non-real-time packets, into the ordinary queue for buffering.
- the hardware receiving packet will put the message in the firmware buffer, and the software processing the message can be carried out at the same time.
- the software is processing the message, the hardware can continue to receive the message and put it into the firmware buffer. Therefore, after processing a single non-real-time message, it is necessary to return to check whether there is any new message to be received.
- Different real-time messages have different judgment methods.
- ARP, ICMP, TCP, etc. can be identified by identifying the data link layer/IP protocol used by the message; multicast messages can be identified by matching whether the MAC address meets the multicast MAC address.
- the original coherent process of receiving and processing the message is divided into: first receive and buffer the message, and then process the message according to the designed message processing strategy deal with.
- the processing capacity of non-real-time messages is dynamically adjusted to obtain the single-time processing capacity of non-real-time messages;
- the processing capacity handles non-real-time packets.
- the single processing amount of the non-real-time message is dynamically adjusted according to the number of real-time messages in the priority processing queue, and the adjusted single-time processing amount of the non-real-time message is obtained, specifically: Determine the number of real-time messages in the priority processing queue; according to the relationship between the number of real-time messages and the first threshold and the second threshold, dynamically adjust the single processing amount of non-real-time messages to obtain adjusted non-real-time messages A single processing amount of , wherein the first threshold is smaller than the second threshold.
- the word processing capacity of non-real-time messages can be dynamically adjusted according to the number of real-time messages, so as to reduce the network delay of real-time messages and ensure the timeliness of real-time messages.
- the single processing capacity of non-real-time messages is dynamically adjusted to obtain the adjusted single-time processing capacity of non-real-time messages , specifically: when the number of real-time messages is 0, determine the maximum message processing volume per unit time of the CPU as a single processing volume; when the number of real-time messages is greater than 0 and less than the first threshold, or, the number of real-time messages When the number is greater than or equal to the first threshold and less than or equal to the second threshold, the number of real-time messages is used as a variable of the predetermined function, so as to dynamically adjust the single processing amount of the non-real-time message through the predetermined function, and obtain the adjusted non-real-time A single processing amount of real-time packets; when the number of real-time packets is greater than the second threshold, a predetermined constant is determined as a single processing amount.
- the predetermined function is a linear function
- the slope of the linear function and the adjustment constant and the number of real-time messages are greater than or equal to the first threshold and less than or equal to the second threshold different.
- the single processing amount of the non-real-time message is dynamically adjusted according to the number of real-time messages in the priority processing queue, and the adjusted single-time processing amount of the non-real-time message is obtained, specifically:
- x is the number of real-time packets in the priority processing queue; A is the first threshold, B is the second threshold; y1 is the maximum amount of packet processing per unit time of the CPU; y2 is a preset constant, used in real-time When the message accumulation is serious, control the processing rate of the non-real-time message; c 1 and c 3 are adjustment constants, and c 2 and c 4 are slopes.
- y1 is the maximum message processing capacity of the CPU per unit time, which can also be set according to actual requirements in specific applications.
- the single processing amount of the non-real-time message is dynamically adjusted to obtain the adjusted single processing amount y of the non-real-time message.
- the single processing volume of non-real-time packets slowly decreases; when the number x of real-time packets in the priority processing queue increases from A to B, the non-real-time The single-time processing volume of messages has dropped significantly; when the number x of real-time messages in the priority processing queue is greater than B, it indicates that the accumulation of real-time messages is serious, and it is necessary to strictly limit the single-time processing volume of non-real-time messages to ensure the timeliness of real-time messages.
- the specific interval setting can be adjusted according to actual needs.
- the single processing amount y of non-real-time packets decreases nonlinearly with the increase of the number x of real-time packets cached, and the larger the value of x is, the faster the reduction speed of y is.
- the non-real-time message processing rate has a nonlinear relationship with the single processing amount y. When y is small, the non-real-time message processing rate increases rapidly; as y increases, the non-real-time message processing rate increases slowly; when y reaches After a certain threshold, the non-real-time packet processing rate basically does not increase. It should be noted that there may be some fluctuations in the range of different models.
- the dynamic adjustment formula in this embodiment adopts a one-time function, which can effectively avoid causing complex operation of the system. As a result, the performance of processing packets is affected.
- the first threshold A a ⁇ L
- the non-real-time messages buffered in the common queue are processed in S4 according to the single processing amount, specifically:
- the non-real-time messages buffered in the common queue are processed one by one according to the single processing amount y.
- the single processing amount y is called.
- the non-real-time messages buffered in the ordinary queue they are processed one by one according to the single processing amount y.
- After processing the non-real-time message of the single processing amount once check whether there is a new message to be received in the firmware buffer, if so, return to S1, if not, continue to process the single The amount of non-real-time packets processed until all non-real-time packets are processed.
- the non-real-time message stored at the head of the common queue for the longest time is discarded.
- the present application also provides a device for processing a message, which can realize all the processes of the method for processing a message in the above embodiment.
- FIG. 3 is a schematic structural diagram of a preferred embodiment of a message processing device provided in this application.
- the message processing device includes:
- the receiving module 301 is used to receive messages from the firmware buffer in turn, and put the messages that meet the real-time message conditions into the priority processing queue for buffering, and put the messages that do not meet the real-time message conditions into the ordinary queue for buffering ;
- the message that meets the real-time message condition is a real-time message
- the message that does not meet the real-time message condition is a non-real-time message
- a real-time message processing module 303 configured to process all real-time messages buffered in the priority processing queue
- the non-real-time message processing module 304 is configured to process the non-real-time messages buffered in the ordinary queue according to the single processing amount, and after each processing of the non-real-time message of the single processing amount, check Whether there are new messages to be received in the firmware buffer, if so, return to S1, if not, continue to process the non-real-time messages of the single processing amount until all non-real-time messages are processed.
- the inspection module dynamically adjusts the non-real-time message single-time processing capacity according to the number of real-time messages in the priority processing queue, and obtains the adjusted non-real-time message single-time processing capacity, specifically: Determining the quantity of real-time messages in the priority processing queue; dynamically adjusting the single processing volume of the non-real-time messages according to the size relationship between the quantity of the real-time messages and the first threshold and the second threshold, and obtaining the The adjusted single processing amount of non-real-time packets, wherein the first threshold is smaller than the second threshold.
- the inspection module is based on the number of real-time packets and the first threshold and the second threshold Size relationship, dynamically adjust the single processing amount of the non-real-time message to obtain the adjusted single-time processing amount of the non-real-time message, specifically: when the number of the real-time message is 0, determine The maximum amount of message processing per CPU unit time is the single processing amount; when the number of real-time messages is greater than 0 and less than the first threshold, or, the number of real-time messages is greater than or equal to the first threshold When a threshold is less than or equal to the second threshold, the number of real-time messages is used as a variable of the predetermined function, so as to dynamically adjust the single-time processing amount of the non-real-time message through the predetermined function, and obtain the The adjusted single processing amount of the non-real-time packets; when the number of the real-time packets is greater than the second threshold, determine a predetermined constant as the single processing amount.
- the predetermined function is a linear function, and when the number of real-time messages is greater than 0 and smaller than the first threshold, the slope of the linear function and the adjustment constant and the number of real-time messages are greater than or equal to the It is different when the first threshold is less than or equal to the second threshold.
- the inspection module 302 dynamically adjusts the non-real-time message single-time processing amount according to the number of real-time messages in the priority processing queue, and obtains the adjusted single-time processing amount of the non-real-time message, specifically :
- x is the number of real-time packets in the priority processing queue; A is the first threshold, B is the second threshold; y1 is the maximum amount of packet processing per unit time of the CPU; y2 is a preset constant, used in real-time When the message accumulation is serious, control the processing rate of the non-real-time message; c 1 and c 3 are adjustment constants, and c 2 and c 4 are slopes.
- the first threshold A a ⁇ L
- the non-real-time message processing module 304 processes the normal message according to the single processing amount Non-real-time packets buffered in the queue, specifically:
- the non-real-time messages buffered in the common queue are processed one by one according to the single processing amount y.
- the non-real-time message stored at the head of the common queue for the longest time is discarded.
- FIG. 4 is a schematic structural diagram of a preferred embodiment of a terminal device provided in this application.
- the terminal device includes a processor 401, a memory 402, and a computer program stored in the memory 402 and configured to be executed by the processor 401.
- the processor 401 executes the computer program, any of the above implementations is realized.
- the computer program can be divided into one or more modules/units (such as computer program 1, computer program 2, ...), and the one or more modules/units are stored in the stored in the memory 402 and executed by the processor 401 to complete the application.
- the one or more modules/units may be a series of computer program instruction segments capable of accomplishing specific functions, and the instruction segments are used to describe the execution process of the computer program in the terminal device.
- the processor 401 may be a central processing unit (Central Processing Unit, CPU), and may also be other general-purpose processors, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), Field-Programmable Gate Array (Field-Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
- the general-purpose processor can be a microprocessor, or the processor 401 can also be It is any conventional processor, and the processor 401 is the control center of the terminal equipment, and uses various interfaces and lines to connect various parts of the terminal equipment.
- the above-mentioned terminal device may include, but not limited to, a processor and a memory.
- a processor and a memory.
- FIG. 4 the schematic structural diagram in FIG. 4 is only an example of the above-mentioned terminal device, and does not constitute a limitation on the above-mentioned terminal device. More or fewer components than shown, or combinations of certain components, or different components may be included.
- the embodiment of the present application also provides a computer-readable storage medium, the computer-readable storage medium includes a stored computer program, wherein, when the computer program is running, the device where the computer-readable storage medium is located is controlled to perform any of the above tasks.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种报文处理方法、装置、终端设备及存储介质,所述方法包括:接收报文,将实时报文放入优先处理队列进行缓冲,将非实时报文放入普通队列进行缓冲;检查固件缓冲区中的报文是否被全部接收完毕;若否,则返回接收报文;若是,则根据实时报文的数量对非实时报文单次处理量进行动态调整;处理全部实时报文;根据单次处理量处理非实时报文,且在每处理完一次单次处理量的非实时报文后,检查固件缓冲区中是否有新的报文需要接收,若是,则返回接收报文,若否,则继续处理单次处理量的非实时报文,直至所有的非实时报文处理完毕。本申请实施例能够降低实时报文的丢包率,缩减实时报文的网络时延,保障实时报文的时效性,提高用户体验感。
Description
本申请要求于2022年02月16日提交中国专利局、申请号为202210142967.8、申请名称“一种报文处理方法、装置、终端设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本公开中。
本申请涉及数据传输技术领域,尤其涉及一种报文处理方法、装置、终端设备及存储介质。
网络中的报文大致可分为两种,一种是实时报文,这类报文对实时性有着极高的要求,其包含但不限于ARP报文、ICMP报文、组播报文、TCP小包等等;另一种是非实时报文,这类报文对时延不敏感,报文处理可接收一定的时延,其包含但不限于各类文件下载报文等等。
现有技术中的家庭网关在工作状态下,会出现由于处理非实时报文的时间过长,导致实时报文的时延过大,甚至被丢弃的问题,从而严重影响用户体验感。同时,现有技术采用轮询策略,每个优先级的单次处理量有限,如果部分报文对实时性要求极高,且该优先级处理量已满,则需要等到下一轮次才能处理,这样会导致该报文失去实时性。另外,当CPU报文处理速率小于报文到达速率时,也会造成丢包现象,且被丢弃的报文的优先级不可确定,可能导致高优先级报文被丢弃,也可能是低优先级报文,如果丢弃的是实时性报文,则会严重影响用户体验感。
发明内容
本申请实施例所要解决的技术问题在于,提供一种报文处理方法、装置、终端设备及存储介质,能够降低实时报文的丢包率,缩减实时报文的网络时延,保障实时报文的时效性,提高用户体验感。
为了实现上述目的,本申请实施例提供了一种报文处理方法,包括:
S1,依次从固件缓冲区中接收报文,并将满足实时报文条件的报文放入优先处理队列进行缓冲,将不满足实时报文条件的报文放入普通队列进行缓冲;其中,满足实时报文条件的报文为实时报文,不满足实时报文条件的报文为非实时报文;
S2,检查所述固件缓冲区中的报文是否被全部接收完毕;若否,则返回S 1,直至所述固件缓冲区中的报文被全部接收完毕;若是,则根据所述优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量;
S3,处理所述优先处理队列中缓冲的全部实时报文;
S4,根据所述单次处理量处理所述普通队列中缓冲的非实时报文,且在每处理完一次所述单次处理量的非实时报文后,检查所述固件缓冲区中是否有新的报文需要接收,若是,则返回S1,若否,则继续处理所述单次处理量的非实时报文,直至所有的非实时报文处理完毕。
作为上述方案的改进,所述S2中根据所述优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量,具体为:确定所述优先处理队列中实时报文的数量;根据所述实时报文的数量与第一阈值以及第二阈值的大小关系,对所述非实时报文单次处理量进行动态调整,得到所述调整后的非实时报文的单次处理量,其中,所述第一阈值小于所述第二阈值。
作为上述方案的改进,所述根据所述实时报文的数量与第一阈值以及第二阈值的大小关系,对所述非实时报文单次处理量进行动态调整,得到所述调整后的
非实时报文的单次处理量,具体为:在所述实时报文的数量为0时,确定CPU单位时间内最大报文处理量为所述单次处理量;在所述实时报文的数量大于0且小于所述第一阈值,或,所述实时报文的数量大于或等于所述第一阈值且小于或等于所述第二阈值时,将所述实时报文的数量作为预定函数的变量,以通过所述预定函数对所述非实时报文单次处理量进行动态调整,得到所述调整后的非实时报文的单次处理量;在所述实时报文的数量大于所述第二阈值时,确定预定常数为所述单次处理量。
作为上述方案的改进,所述预定函数为一次函数,所述实时报文的数量大于0且小于所述第一阈值时所述一次函数的斜率以及调整常数与所述实时报文的数量大于或等于所述第一阈值且小于或等于所述第二阈值时不同。
作为上述方案的改进,所述第一阈值A=a×L,所述第二阈值B=b×L;其中,L为优先处理队列的长度,a和b均为系数,且a+b=1。
作为上述方案的改进,所述S4中根据所述单次处理量处理所述普通队列中缓冲的非实时报文,具体为:
当检测到所述优先处理队列中所有的实时报文全部处理完成后,调取所述单次处理量;
对所述普通队列中缓冲的非实时报文,根据所述单次处理量按次处理。
作为上述方案的改进,若所述普通队列出现报文溢出现象,则丢弃所述普通队列头部存放时间最长的非实时报文。
本申请实施例还提供了一种报文处理装置,包括:
接收模块,用于依次从固件缓冲区中接收报文,并将满足实时报文条件的报文放入优先处理队列进行缓冲,将不满足实时报文条件的报文放入普通队列进行缓冲;其中,满足实时报文条件的报文为实时报文,不满足实时报文条件的报文为非实时报文;
检查模块,用于检查所述固件缓冲区中的报文是否被全部接收完毕;若否,则返回S1,直至所述固件缓冲区中的报文被全部接收完毕;若是,则根据所述优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量;
实时报文处理模块,用于处理所述优先处理队列中缓冲的全部实时报文;
非实时报文处理模块,用于根据所述单次处理量处理所述普通队列中缓冲的非实时报文,且在每处理完一次所述单次处理量的非实时报文后,检查所述固件缓冲区中是否有新的报文需要接收,若是,则返回S1,若否,则继续处理所述单次处理量的非实时报文,直至所有的非实时报文处理完毕。
作为上述方案的改进,所述检查模块中根据所述优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量,具体为:确定所述优先处理队列中实时报文的数量;根据所述实时报文的数量与第一阈值以及第二阈值的大小关系,对所述非实时报文单次处理量进行动态调整,得到所述调整后的非实时报文的单次处理量,其中,所述第一阈值小于所述第二阈值。
作为上述方案的改进,所述检查模块根据所述实时报文的数量与第一阈值以及第二阈值的大小关系,对所述非实时报文单次处理量进行动态调整,得到所述调整后的非实时报文的单次处理量,具体为:在所述实时报文的数量为0时,确定CPU单位时间内最大报文处理量为所述单次处理量;在所述实时报文的数量大于0且小于所述第一阈值,或,所述实时报文的数量大于或等于所述第一阈值且小于或等于所述第二阈值时,将所述实时报文的数量作为预定函数的变量,以通过所述预定函数对所述非实时报文单次处理量进行动态调整,得到所述调整后的非实时报文的单次处理量;在所述实时报文的数量大于所述第二阈值时,确定预定常数为所述单次处理量。
作为上述方案的改进,所述预定函数为一次函数,所述实时报文的数量大于0且小于所述第一阈值时所述一次函数的斜率以及调整常数与所述实时报文的数量大于或等于所述第一阈值且小于或等于所述第二阈值时不同。
作为上述方案的改进,所述第一阈值A=a×L,所述第二阈值B=b×L;其中,L为优先处理队列的长度,a和b均为系数,且a+b=1。
本申请实施例还提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的报文处理方法。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述任一项所述的报文处理方法。
相对于现有技术,本申请实施例提供的一种报文处理方法、装置、终端设备及存储介质的有益效果在于:将原本的报文接收并处理的连贯流程拆分为:先接收并缓冲报文,再根据设计的报文处理策略对报文进行处理。根据优先处理队列中实时报文的数量对非实时报文的处理量进行动态调整,得到非实时报文的单次处理量;当实时报文全部处理完成后,根据非实时报文的单次处理量处理非实时报文。并且,在每处理完一次单次处理量的非实时报文后,检查固件缓冲区中是否有新的报文需要接收,避免高优先级的报文丢失,若是,则返回接收报文,若否,则继续处理所述单次处理量的非实时报文,直至所有的非实时报文处理完毕,从而能够降低实时报文的丢包率,缩减实时报文的网络时延,保障实时报文的时效性,提高用户体验感。
图1是本申请提供的一种报文处理方法的一个优选实施例的流程示意图;
图2是本申请提供的一种报文处理方法的另一个优选实施例的流程示意图;
图3是本申请提供的一种报文处理装置的一个优选实施例的结构示意图;
图4是本申请提供的一种终端设备的一个优选实施例的结构示意图。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参阅图1和图2,图1是本申请提供的一种报文处理方法的一个优选实施例的流程示意图,图2是本申请提供的一种报文处理方法的另一个优选实施例的流程示意图。所述报文处理方法,包括:
S1,依次从固件缓冲区中接收报文,并将满足实时报文条件的报文放入优先处理队列进行缓冲,将不满足实时报文条件的报文放入普通队列进行缓冲;其中,满足实时报文条件的报文为实时报文,不满足实时报文条件的报文为非实时报文;
S2,检查所述固件缓冲区中的报文是否被全部接收完毕;若否,则返回S1,直至所述固件缓冲区中的报文被全部接收完毕;若是,则根据所述优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量;
S3,处理所述优先处理队列中缓冲的全部实时报文;
S4,根据所述单次处理量处理所述普通队列中缓冲的非实时报文,且在每处理完一次所述单次处理量的非实时报文后,检查所述固件缓冲区中是否有新的报文需要接收,若是,则返回S1,若否,则继续处理所述单次处理量的非实时报文,直至所有的非实时报文处理完毕。
具体的,首先,硬件收包会将报文放在固件缓存区,然后会中断通知软件收
包,软件将报文一个一个从缓冲区收上来,每收取一个包,就判断是否满足实时报文条件,将满足实时报文条件的报文,即实时报文,放入优先处理队列进行缓冲,将不满足实时报文条件的报文,即非实时报文,放入普通队列进行缓冲。这一过程需要先将固件缓冲区中的报文全部接收完毕,因为部分报文软件处理时间较长,及时取出报文空出硬件资源,一定程度上能够避免丢包。然后,检查固件缓冲区中的报文是否被全部接收完毕;若否,则返回继续接收报文,直至固件缓冲区中的报文被全部接收完毕;若是,则根据优先处理队列中实时报文的数量x对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量y。处理所述优先处理队列中缓冲的全部实时报文。根据所述单次处理量处理所述普通队列中缓冲的非实时报文,且在每处理完一次所述单次处理量的非实时报文后,检查所述固件缓冲区中是否有新的报文需要接收,若是,则返回接收报文,若否,则继续处理所述单次处理量的非实时报文,直至所有的非实时报文处理完毕。
需要说明的是,硬件收包会将报文放在固件缓存区,和软件处理报文是可以同时进行,在软件处理报文的时候,硬件可以继续接收报文,并放入固件缓冲区。因此,需要在处理完单次量的非实时报文后,就要返回检查有没有新的报文需要接收。不同实时报文判断方式不尽相同,ARP、ICMP、TCP等可以通过识别报文使用的数据链路层/IP协议识别;组播报文可以通过匹配MAC地址是否满足组播MAC地址进行识别。
本实施例通过调整家庭网关对报文的接收与处理流程,将原本的报文接收并处理的连贯流程拆分为:先接收并缓冲报文,再根据设计的报文处理策略对报文进行处理。根据优先处理队列中实时报文的数量对非实时报文的处理量进行动态调整,得到非实时报文的单次处理量;当实时报文全部处理完成后,根据非实时报文的单次处理量处理非实时报文。并且,在每处理完一次单次处理量的非实时报文后,检查固件缓冲区中是否有新的报文需要接收,避免高优先级的报文丢失,
若是,则返回接收报文,若否,则继续处理所述单次处理量的非实时报文,直至所有的非实时报文处理完毕,从而能够降低实时报文的丢包率,缩减实时报文的网络时延,保障实时报文的时效性,提高用户体验感。
在另一个优选实施例中,S2中根据优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量,具体为:确定优先处理队列中实时报文的数量;根据实时报文的数量与第一阈值以及第二阈值的大小关系,对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量,其中,第一阈值小于第二阈值。
在该实施例中,可以根据实时报文的数量来对非实时报文的单词处理量进行动态调整,以缩减实时报文的网络时延,保障实时报文的时效性。
在上述实施例中,根据实时报文的数量与第一阈值以及第二阈值的大小关系,对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量,具体为:在实时报文的数量为0时,确定CPU单位时间内最大报文处理量为单次处理量;在实时报文的数量大于0且小于第一阈值,或,实时报文的数量大于或等于第一阈值且小于或等于第二阈值时,将实时报文的数量作为预定函数的变量,以通过预定函数对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量;在实时报文的数量大于第二阈值时,确定预定常数为单次处理量。
其中,在预定函数为一次函数时,实时报文的数量大于0且小于第一阈值时一次函数的斜率以及调整常数与实时报文的数量大于或等于第一阈值且小于或等于第二阈值时不同。
例如,所述S2中根据所述优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量,具体为:
通过分段函数对非实时报文的单次处理量进行动态调整,得到调整后的非实时报文的单次处理量y;
其中,x为优先处理队列中实时报文的数量;A为第一阈值,B为第二阈值;y1为CPU单位时间内最大报文处理量;y2为预设的常数,用于在实时报文堆积严重时,控制非实时报文的处理速率;c1和c3均为调整常数,c2和c4均为斜率。
具体的,本实施例中建议y1为CPU单位时间内最大报文处理量,在具体应用时也可以根据实际需求进行设置。通过分段函数对非实时报文的单次处理量进行动态调整,得到调整后的非实时报文的单次处理量y。当优先处理队列中实时报文的数量x从0增长到A时,非实时报文的单次处理量缓慢下降;当优先处理队列中实时报文的数量x从A增长到B时,非实时报文的单次处理量大幅度下降;当优先处理队列中实时报文的数量x大于B时,表明实时报文堆积较为严重,需要严格限制非实时报文的单次处理量,优先处理实时报文,以保障实时报文的时效性。其中,具体的区间设置可按实际需求进行调整。
需要说明的是,非实时报文的单次处理量y随着缓存的实时报文的数量x的增大呈非线性减少,x的值越大,y减少的速度越快。非实时报文处理速率与单次处理量y呈非线性关系,在y较小时,非实时报文处理速率增长较快;随着y增加,非实时报文处理速率增长较慢;在y到达一定的阈值后,非实时报文处理速率基本不再增长。需要注意的是,不同机型,区间范围可能会有一定的浮动。
本实施例中动态调整的公式采用一次函数,能够有效避免造成系统复杂运行,
导致影响处理报文的性能。
在又一个优选实施例中,所述第一阈值A=a×L,所述第二阈值B=b×L;其中,L为优先处理队列的长度,a和b均为系数,且a+b=1。
例如,本实施例中a取1/3,b取2/3,则分段函数为:
在又一个优选实施例中,所述S4中根据所述单次处理量处理所述普通队列中缓冲的非实时报文,具体为:
当检测到所述优先处理队列中所有的实时报文全部处理完成后,调取所述单次处理量y;
对所述普通队列中缓冲的非实时报文,根据所述单次处理量y按次处理。
具体的,当检测到优先处理队列中所有的实时报文全部处理完成后,调取单次处理量y。对普通队列中缓冲的非实时报文,根据单次处理量y按次处理。在每处理完一次所述单次处理量的非实时报文后,检查所述固件缓冲区中是否有新的报文需要接收,若是,则返回S1,若否,则继续处理所述单次处理量的非实时报文,直至所有的非实时报文处理完毕。
作为优选方案,若所述普通队列出现报文溢出现象,则丢弃所述普通队列头部存放时间最长的非实时报文。
需要说明的是,CPU的报文处理能力要大于实时报文的接收速率,才能避免优先处理队列不会有溢出现象。如果出现网关性能饱和,此时丢弃非实时报文,以保证实时报文能被及时处理,并且尽可能不丢包。如果普通队列即将溢出时,
选择丢弃队列头部存放时间最长的报文,以接收新的报文。
相应地,本申请还提供一种报文处理装置,能够实现上述实施例中的报文处理方法的所有流程。
请参阅图3,图3是本申请提供的一种报文处理装置的一个优选实施例的结构示意图。所述报文处理装置,包括:
接收模块301,用于依次从固件缓冲区中接收报文,并将满足实时报文条件的报文放入优先处理队列进行缓冲,将不满足实时报文条件的报文放入普通队列进行缓冲;其中,满足实时报文条件的报文为实时报文,不满足实时报文条件的报文为非实时报文;
检查模块302,用于检查所述固件缓冲区中的报文是否被全部接收完毕;若否,则返回S1,直至所述固件缓冲区中的报文被全部接收完毕;若是,则根据所述优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量;
实时报文处理模块303,用于处理所述优先处理队列中缓冲的全部实时报文;
非实时报文处理模块304,用于根据所述单次处理量处理所述普通队列中缓冲的非实时报文,且在每处理完一次所述单次处理量的非实时报文后,检查所述固件缓冲区中是否有新的报文需要接收,若是,则返回S1,若否,则继续处理所述单次处理量的非实时报文,直至所有的非实时报文处理完毕。
优选地,所述检查模块中根据所述优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量,具体为:确定所述优先处理队列中实时报文的数量;根据所述实时报文的数量与第一阈值以及第二阈值的大小关系,对所述非实时报文单次处理量进行动态调整,得到所述调整后的非实时报文的单次处理量,其中,所述第一阈值小于所述第二阈值。
优选地,所述检查模块根据所述实时报文的数量与第一阈值以及第二阈值的
大小关系,对所述非实时报文单次处理量进行动态调整,得到所述调整后的非实时报文的单次处理量,具体为:在所述实时报文的数量为0时,确定CPU单位时间内最大报文处理量为所述单次处理量;在所述实时报文的数量大于0且小于所述第一阈值,或,所述实时报文的数量大于或等于所述第一阈值且小于或等于所述第二阈值时,将所述实时报文的数量作为预定函数的变量,以通过所述预定函数对所述非实时报文单次处理量进行动态调整,得到所述调整后的非实时报文的单次处理量;在所述实时报文的数量大于所述第二阈值时,确定预定常数为所述单次处理量。
优选地,所述预定函数为一次函数,所述实时报文的数量大于0且小于所述第一阈值时所述一次函数的斜率以及调整常数与所述实时报文的数量大于或等于所述第一阈值且小于或等于所述第二阈值时不同。
优选地,所述检查模块302中根据所述优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量,具体为:
通过分段函数对非实时报文的单次处理量进行动态调整,得到调整后的非实时报文的单次处理量y;
其中,x为优先处理队列中实时报文的数量;A为第一阈值,B为第二阈值;y1为CPU单位时间内最大报文处理量;y2为预设的常数,用于在实时报文堆积严重时,控制非实时报文的处理速率;c1和c3均为调整常数,c2和c4均为斜率。
优选地,所述第一阈值A=a×L,所述第二阈值B=b×L;其中,L为优先处理队列的长度,a和b均为系数,且a+b=1。
优选地,所述非实时报文处理模块304中根据所述单次处理量处理所述普通
队列中缓冲的非实时报文,具体为:
当检测到所述优先处理队列中所有的实时报文全部处理完成后,调取所述单次处理量y;
对所述普通队列中缓冲的非实时报文,根据所述单次处理量y按次处理。
优选地,若所述普通队列出现报文溢出现象,则丢弃所述普通队列头部存放时间最长的非实时报文。
在具体实施当中,本申请实施例提供的报文处理装置的工作原理、控制流程及实现的技术效果,与上述实施例中的报文处理方法对应相同,在此不再赘述。
请参阅图4,图4是本申请提供的一种终端设备的一个优选实施例的结构示意图。所述终端设备包括处理器401、存储器402以及存储在所述存储器402中且被配置为由所述处理器401执行的计算机程序,所述处理器401执行所述计算机程序时实现上述任一实施例所述的报文处理方法。
优选地,所述计算机程序可以被分割成一个或多个模块/单元(如计算机程序1、计算机程序2、......),所述一个或者多个模块/单元被存储在所述存储器402中,并由所述处理器401执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述终端设备中的执行过程。
所述处理器401可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,通用处理器可以是微处理器,或者所述处理器401也可以是任何常规的处理器,所述处理器401是所述终端设备的控制中心,利用各种接口和线路连接所述终端设备的各个部分。
所述存储器402主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序等,数据存储区可存储相关数据等。此外,所述存储器402可以是高速随机存取存储器,还可以是非易失性存储器,例如插接式硬盘,智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡和闪存卡(Flash Card)等,或所述存储器402也可以是其他易失性固态存储器件。
需要说明的是,上述终端设备可包括,但不仅限于,处理器、存储器,本领域技术人员可以理解,图4的结构示意图仅仅是上述终端设备的示例,并不构成对上述终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述任一实施例所述的报文处理方法。
本申请实施例提供了一种报文处理方法、装置、终端设备及存储介质,通过将原本的报文接收并处理的连贯流程拆分为:先接收并缓冲报文,再根据设计的报文处理策略对报文进行处理。根据优先处理队列中实时报文的数量对非实时报文的处理量进行动态调整,得到非实时报文的单次处理量;当实时报文全部处理完成后,根据非实时报文的单次处理量处理非实时报文。并且,在每处理完一次单次处理量的非实时报文后,检查固件缓冲区中是否有新的报文需要接收,避免高优先级的报文丢失,若是,则返回接收报文,若否,则继续处理所述单次处理量的非实时报文,直至所有的非实时报文处理完毕,从而能够降低实时报文的丢包率,缩减实时报文的网络时延,保障实时报文的时效性,提高用户体验感。
需说明的是,以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络
单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的系统实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本申请的保护范围。
Claims (10)
- 一种报文处理方法,包括:S1,依次从固件缓冲区中接收报文,并将满足实时报文条件的报文放入优先处理队列进行缓冲,将不满足实时报文条件的报文放入普通队列进行缓冲;其中,满足实时报文条件的报文为实时报文,不满足实时报文条件的报文为非实时报文;S2,检查所述固件缓冲区中的报文是否被全部接收完毕;若否,则返回S1,直至所述固件缓冲区中的报文被全部接收完毕;若是,则根据所述优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量;S3,处理所述优先处理队列中缓冲的全部实时报文;S4,根据所述单次处理量处理所述普通队列中缓冲的非实时报文,且在每处理完一次所述单次处理量的非实时报文后,检查所述固件缓冲区中是否有新的报文需要接收,若是,则返回S1,若否,则继续处理所述单次处理量的非实时报文,直至所有的非实时报文处理完毕。
- 如权利要求1所述的报文处理方法,其中,所述S2中根据所述优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量,具体为:确定所述优先处理队列中实时报文的数量;根据所述实时报文的数量与第一阈值以及第二阈值的大小关系,对所述非实时报文单次处理量进行动态调整,得到所述调整后的非实时报文的单次处理量,其中,所述第一阈值小于所述第二阈值。
- 如权利要求2所述的报文处理方法,其中,所述根据所述实时报文的数量与第一阈值以及第二阈值的大小关系,对所述非实时报文单次处理量进行动态调整,得到所述调整后的非实时报文的单次处理量,具体为:在所述实时报文的数量为0时,确定CPU单位时间内最大报文处理量为所述单次处理量;在所述实时报文的数量大于0且小于所述第一阈值,或,所述实时报文的数量大于或等于所述第一阈值且小于或等于所述第二阈值时,将所述实时报文的数量作为预定函数的变量,以通过所述预定函数对所述非实时报文单次处理量进行动态调整,得到所述调整后的非实时报文的单次处理量;在所述实时报文的数量大于所述第二阈值时,确定预定常数为所述单次处理量。
- 如权利要求3所述的报文处理方法,所述预定函数为一次函数,所述实时报文的数量大于0且小于所述第一阈值时所述一次函数的斜率以及调整常数与所述实时报文的数量大于或等于所述第一阈值且小于或等于所述第二阈值时不同。
- 如权利要求2至4中任一项所述的报文处理方法,其中,所述第一阈值A=a×L,所述第二阈值B=b×L;其中,L为优先处理队列的长度,a和b均为系数,且a+b=1。
- 如权利要求5所述的报文处理方法,其中,所述S4中根据所述单次处理量处理所述普通队列中缓冲的非实时报文,具体为:当检测到所述优先处理队列中所有的实时报文全部处理完成后,调取所述单 次处理量;对所述普通队列中缓冲的非实时报文,根据所述单次处理量按次处理。
- 如权利要求6所述的报文处理方法,其中,若所述普通队列出现报文溢出现象,则丢弃所述普通队列头部存放时间最长的非实时报文。
- 一种报文处理装置,包括:接收模块,被配置为依次从固件缓冲区中接收报文,并将满足实时报文条件的报文放入优先处理队列进行缓冲,将不满足实时报文条件的报文放入普通队列进行缓冲;其中,满足实时报文条件的报文为实时报文,不满足实时报文条件的报文为非实时报文;检查模块,被配置为检查所述固件缓冲区中的报文是否被全部接收完毕;若否,则返回S1,直至所述固件缓冲区中的报文被全部接收完毕;若是,则根据所述优先处理队列中实时报文的数量对非实时报文单次处理量进行动态调整,得到调整后的非实时报文的单次处理量;实时报文处理模块,被配置为处理所述优先处理队列中缓冲的全部实时报文;非实时报文处理模块,被配置为根据所述单次处理量处理所述普通队列中缓冲的非实时报文,且在每处理完一次所述单次处理量的非实时报文后,检查所述固件缓冲区中是否有新的报文需要接收,若是,则返回S1,若否,则继续处理所述单次处理量的非实时报文,直至所有的非实时报文处理完毕。
- 一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权 利要求1至7中任意一项所述的报文处理方法。
- 一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至7中任意一项所述的报文处理方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210142967.8 | 2022-02-16 | ||
CN202210142967.8A CN114567566B (zh) | 2022-02-16 | 一种报文处理方法、装置、终端设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023155815A1 true WO2023155815A1 (zh) | 2023-08-24 |
Family
ID=81713987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2023/076263 WO2023155815A1 (zh) | 2022-02-16 | 2023-02-15 | 一种报文处理方法、装置、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2023155815A1 (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101459932A (zh) * | 2009-01-06 | 2009-06-17 | 北京交通大学 | 基于IEEE802.16d标准的无线Mesh网MAC层带宽请求与分配方法 |
US20150271089A1 (en) * | 2012-10-29 | 2015-09-24 | Lin Tang | Selective high-priority bandwidth allocation for time-division multiple access communications |
CN112737978A (zh) * | 2020-12-31 | 2021-04-30 | 中国电子科技集团公司第七研究所 | 面向数据报文的双队列同步方法、系统、设备、存储介质 |
WO2021254475A1 (zh) * | 2020-06-19 | 2021-12-23 | 华为技术有限公司 | 一种用于调度队列的方法及装置 |
CN114567566A (zh) * | 2022-02-16 | 2022-05-31 | 上海联虹技术有限公司 | 一种报文处理方法、装置、终端设备及存储介质 |
-
2023
- 2023-02-15 WO PCT/CN2023/076263 patent/WO2023155815A1/zh unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101459932A (zh) * | 2009-01-06 | 2009-06-17 | 北京交通大学 | 基于IEEE802.16d标准的无线Mesh网MAC层带宽请求与分配方法 |
US20150271089A1 (en) * | 2012-10-29 | 2015-09-24 | Lin Tang | Selective high-priority bandwidth allocation for time-division multiple access communications |
WO2021254475A1 (zh) * | 2020-06-19 | 2021-12-23 | 华为技术有限公司 | 一种用于调度队列的方法及装置 |
CN112737978A (zh) * | 2020-12-31 | 2021-04-30 | 中国电子科技集团公司第七研究所 | 面向数据报文的双队列同步方法、系统、设备、存储介质 |
CN114567566A (zh) * | 2022-02-16 | 2022-05-31 | 上海联虹技术有限公司 | 一种报文处理方法、装置、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114567566A (zh) | 2022-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11233746B2 (en) | Congestion control method and network device | |
US11695669B2 (en) | Network interface device | |
EP1784735B1 (en) | Apparatus and method for supporting memory management in an offload of network protocol processing | |
CA2573162C (en) | Apparatus and method for supporting connection establishment in an offload of network protocol processing | |
US8996718B2 (en) | TCP-aware receive side coalescing | |
WO2021244240A1 (zh) | 网络拥塞的控制方法、装置、设备、系统及存储介质 | |
US20070133582A1 (en) | Efficient send socket call handling by a transport layer | |
CN110445722B (zh) | 拥塞控制方法、装置、设备及存储介质 | |
WO2018113426A1 (zh) | 一种流量控制方法及交换设备 | |
EP3961981A1 (en) | Method and device for congestion control, communication network, and computer storage medium | |
US8223788B1 (en) | Method and system for queuing descriptors | |
CN112995048B (zh) | 数据中心网络的阻塞控制与调度融合方法及终端设备 | |
US20230139633A1 (en) | Data Packet Sending Method and Apparatus | |
WO2021047404A1 (zh) | 一种网络参数配置方法及装置 | |
WO2022089175A1 (zh) | 网络拥塞控制方法及装置 | |
US20080291833A1 (en) | Method for buffer control for network device | |
CN111698275B (zh) | 数据处理方法、装置及设备 | |
EP1683321B1 (en) | Method and system to protect a protocol control block for network packet processing | |
US7822051B1 (en) | Method and system for transmitting packets | |
WO2023155815A1 (zh) | 一种报文处理方法、装置、终端设备及存储介质 | |
US6625149B1 (en) | Signaled receiver processing methods and apparatus for improved protocol processing | |
US10673648B1 (en) | Network interface device that sets an ECN-CE bit in response to detecting congestion at an internal bus interface | |
JP5400881B2 (ja) | データ通信リンクを用いるデータ・フローの制御 | |
US10990447B1 (en) | System and method for controlling a flow of storage access requests | |
CN115967687A (zh) | 快转发报文方法、网络设备、存储介质及计算机程序产品 |
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: 23755817 Country of ref document: EP Kind code of ref document: A1 |