CN116233000B - 报文发送控制方法、装置、服务器、设备和存储介质 - Google Patents
报文发送控制方法、装置、服务器、设备和存储介质 Download PDFInfo
- Publication number
- CN116233000B CN116233000B CN202310486702.4A CN202310486702A CN116233000B CN 116233000 B CN116233000 B CN 116233000B CN 202310486702 A CN202310486702 A CN 202310486702A CN 116233000 B CN116233000 B CN 116233000B
- Authority
- CN
- China
- Prior art keywords
- message
- postal
- messages
- posted
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 230000004044 response Effects 0.000 claims abstract description 35
- 238000004590 computer program Methods 0.000 claims description 45
- 230000005540 biological transmission Effects 0.000 claims description 28
- 238000012545 processing Methods 0.000 claims description 9
- 230000002093 peripheral effect Effects 0.000 claims description 5
- 230000000903 blocking effect Effects 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 6
- UJKWLAZYSLJTKA-UHFFFAOYSA-N edma Chemical compound O1CCOC2=CC(CC(C)NC)=CC=C21 UJKWLAZYSLJTKA-UHFFFAOYSA-N 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 2
- COCLLEMEIJQBAG-UHFFFAOYSA-N 8-methylnonyl 2-methylprop-2-enoate Chemical compound CC(C)CCCCCCCOC(=O)C(C)=C COCLLEMEIJQBAG-UHFFFAOYSA-N 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- 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/39—Credit based
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
-
- 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/9063—Intermediate storage in different physical parts of a node or terminal
- H04L49/9078—Intermediate storage in different physical parts of a node or terminal using an external memory or storage device
-
- 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/9084—Reactions to storage capacity overflow
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及一种报文发送控制方法、装置、服务器、设备和存储介质。所述方法包括:根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记;在非邮递报文前为邮递报文时,设置所述非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同;在非邮递报文前为非邮递报文时,根据接收非邮递报文的顺序对所述非邮递报文设置时间戳标记;将邮递报文和非邮递报文分离为邮递报文队列和非邮递报文队列;响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送,以使邮递报文能够绕过非邮递报文进行发送,避免了阻塞。
Description
技术领域
本申请涉及服务器技术领域,特别是涉及一种报文发送控制方法、装置、服务器、设备和存储介质。
背景技术
在服务器技术领域,在外设高速互连接口(PCIe)系统与主机的数据交互过程中会使用流量控制(Flow Control)机制进行沟通,即PCIe采用串行连接方式并使用数据报文(TLP报文)的形式进行数据传输。数据报文也称传输层报文。发送端在发送前可通过流量控制机制知道接收端能否接收即将发送的TLP报文,也就是通过流控的信用值(Credit)来决定发送端能否发送。但是目前采用一个外设高速互连接口(PCIe)发送应用端发送P和NP两种类型的TLP报文时会导致阻塞问题,其中P类型的TLP报文为转发TLP报文,也称为邮递报文;NP类型的TLP报文为非转发TLP报文,也称为非邮递报文。当非邮递报文的信用值(Credit)缺少时会阻塞非邮递报文的发送,邮递报文被延后发送,导致阻塞。
发明内容
本申请提供一种报文发送控制方法、装置、服务器、设备和存储介质,能够解决目前在总线接口系统与主机的数据交互过程中采用一个总线接口发送应用端发送邮递报文和非邮递报文时会导致阻塞的技术问题。
一方面,提供一种报文发送控制方法,所述方法包括:
根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记;
响应于在非邮递报文前一个接收的报文为邮递报文时,设置所述非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同;响应于在非邮递报文前一个接收的报文为非邮递报文时,根据接收非邮递报文的顺序对所述非邮递报文设置时间戳标记;
将邮递报文和非邮递报文分离为邮递报文队列和非邮递报文队列;
响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送;
响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送。
在其中一个实施例中,所述根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记步骤,包括:
获取接收邮递报文的顺序;
根据接收邮递报文的顺序,将所述邮递报文依次分配一个连续递增的序列号作为其时间戳标记。
在其中一个实施例中,所述响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送步骤,包括:
获取所述邮递报文队列中的存在信用值的邮递报文;
获取所述邮递报文队列中的邮递报文的时间戳标记;
根据时间戳标记对应的连续递增的序列号顺序对存在信用值的邮递报文逐一发送。
在其中一个实施例中,所述根据时间戳标记对应的连续递增的序列号顺序对存在信用值的邮递报文逐一发送步骤,包括:
响应于当前待发送的邮递报文的时间戳标记的序列号与最新发送的邮递报文的时间戳标记的序列号不是连续递增的序列号时,等待;
响应于当前待发送的邮递报文的时间戳标记的序列号与最新发送的邮递报文的时间戳标记的序列号为连续递增的序列号时,将当前待发送的邮递报文进行发送。
在其中一个实施例中,所述方法还包括:
响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送。
在其中一个实施例中,所述响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送步骤,包括:
响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,获取待发送的邮递报文及非邮递报文的时间戳标记;
将所述邮递报文队列中的邮递报文按照时间戳标记的顺序进行排序,将述非邮递报文队列中的非邮递报文按照时间戳标记的顺序进行排序;
按照时间戳标记的顺序对所述邮递报文队列中的邮递报文及所述非邮递报文队列中的非邮递报文进行发送。
在其中一个实施例中,所述按照时间戳标记的顺序对所述邮递报文队列中的邮递报文及所述非邮递报文队列中的非邮递报文进行发送步骤中,包括:
响应于待发送的邮递报文及非邮递报文具有相同的时间戳标记时,控制非邮递报文先于邮递报文进行发送。
在其中一个实施例中,所述根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记步骤之前,还包括:
按时间顺序依次获取邮递报文和非邮递报文。
在其中一个实施例中,所述按时间顺序依次获取邮递报文和非邮递报文步骤之前,还包括:
分别生成邮递报文和非邮递报文。
在其中一个实施例中,所述分别生成邮递报文和非邮递报文步骤,包括:
控制直接存储器存取出口在读写数据时生成邮递报文;
控制直接存储器存取入口在读写数据时生成非邮递报文,同时根据直接存储器存取入口发起的非邮递报文信用值查询命令实时查询非邮递报文的信用值。
在其中一个实施例中,所述分别生成邮递报文和非邮递报文步骤,包括:
响应于查询到非邮递报文的信用值时,将查询到的非邮递报文的信用值添加至非邮递报文中。
在其中一个实施例中,所述按时间顺序依次获取邮递报文和非邮递报文步骤之后,还包括:
分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量;
控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值。
在其中一个实施例中,所述控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值步骤,包括:
实时检测当前待发送的非邮递报文的数量;
响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文,以使当前待发送的邮递报文的数量小于第一阈值。
在其中一个实施例中,所述控制当前待发送的邮递报文的数量小于第一阈值步骤,包括:
实时检测当前待发送的邮递报文的数量;
响应于当前待发送的邮递报文的数量大于等于第一阈值时,控制暂停生成邮递报文。
在其中一个实施例中,所述控制当前待发送的非邮递报文的数量小于第二阈值步骤,包括:
实时检测当前待发送的非邮递报文的数量;
响应于当前待发送的非邮递报文的数量大于等于第二阈值时,控制暂停生成非邮递报文。
在其中一个实施例中,所述分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量步骤,包括:
控制计数器的最高位数值分别用于表示邮递报文和非邮递报文的类型;
设置计数器的邮递报文和非邮递报文的计数个数相等;
设置第一阈值小于计数器对邮递报文的计数个数,设置第二阈值小于计数器对非邮递报文的计数个数;
实时检测并记录当前待发送的非邮递报文的数量;
实时检测并记录当前待发送的邮递报文的数量。
在其中一个实施例中,所述分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量步骤中,包括:
设置第一阈值等于第二阈值,设置第三阈值的取值范围小于第二阈值的取值范围;
实时检测并记录当前缺少信用值待发送的非邮递报文的数量,响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文。
在其中一个实施例中,在所述分别生成邮递报文和非邮递报文步骤之后,包括:
计算获取邮递报文和非邮递报文的信用值;
当发送一个邮递报文时将邮递报文的信用值减少,当发送一个非邮递报文时将非邮递报文的信用值减少。
另一方面,提供了一种报文发送控制装置,所述装置包括:
报文时间戳标记模块,用于根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记;响应于在非邮递报文前一个接收的报文为邮递报文时,设置所述非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同;响应于在非邮递报文前一个接收的报文为非邮递报文时,根据接收非邮递报文的顺序对所述非邮递报文设置时间戳标记;
报文分流模块,用于将邮递报文和非邮递报文分离为邮递报文队列和非邮递报文队列;
发送报文仲裁模块,用于响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送;并用于响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送。
再一方面,提供了一种服务器,其包括前文所述的报文发送控制装置以及连接至报文时间戳标记模块输入端的报文生成模块;
其中,所述报文生成模块用于分别生成邮递报文和非邮递报文并按时间顺序依次传输至所述报文时间戳标记模块中。
在其中一个实施例中,所述报文生成模块包括:
直接存储器存取出口,用于生成并传输邮递报文;
直接存储器存取入口,用于生成并传输非邮递报文,并用于发出非邮递报文信用值查询命令;
中央处理器,分别连接至所述直接存储器存取出口及所述直接存储器存取入口,用于控制所述直接存储器存取出口生成邮递报文,用于控制所述直接存储器存取入口生成非邮递报文,并用于接收非邮递报文信用值查询命令;
消息接口,连接至所述中央处理器与所述直接存储器存取出口及所述直接存储器存取入口之间。
再一方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记;
响应于在非邮递报文前一个接收的报文为邮递报文时,设置所述非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同;响应于在非邮递报文前一个接收的报文为非邮递报文时,根据接收非邮递报文的顺序对所述非邮递报文设置时间戳标记;
将邮递报文和非邮递报文分离为邮递报文队列和非邮递报文队列;
响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送;
响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送。
又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记;
响应于在非邮递报文前一个接收的报文为邮递报文时,设置所述非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同;响应于在非邮递报文前一个接收的报文为非邮递报文时,根据接收非邮递报文的顺序对所述非邮递报文设置时间戳标记;
将邮递报文和非邮递报文分离为邮递报文队列和非邮递报文队列;
响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送;
响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送。
上述报文发送控制方法、装置、服务器、设备和存储介质,通过对邮递报文和非邮递报文进行设置时间戳标记,同时增加对非邮递报文的信用值的监控来防止时间戳标记计数的溢出导致出现异常,来解决使用同一个PCIe接口发送应用端发送时的阻塞问题。而且本实施例利用按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送,以使所述邮递报文在所述非邮递报文不存在信用值时能够绕过所述非邮递报文进行发送的控制方式可实现当非邮递报文的信用值缺少时,邮递报文的发送不受非邮递报文的信用值缺少的影响,邮递报文可绕过非邮递报文进行发送,避免了邮递报文的发送阻塞。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中报文发送控制方法的应用环境图;
图2为一个实施例中报文发送控制方法的应用环境的结构原理图;
图3为一个实施例中报文发送控制方法的流程示意图;
图4为一个实施例中根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记步骤的流程示意图;
图5为一个实施例中响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送步骤的流程示意图;
图6为一个实施例中响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送步骤的流程示意图;
图7为一个实施例中报文发送控制装置的结构框图;
图8为一个实施例中服务器的结构框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的报文发送控制方法,可以应用于如图1所示的应用环境中。其中,主机102通过网络与服务器104通过网络进行通信。服务器104中外设高速互连接口(PCIe)系统,与主机的数据交互过程中会使用流量控制(Flow Control)机制进行沟通,是通过流控的信用值(Credit)来决定发送端能否发送。其中,主机102及服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。服务器104将主机侧数据搬移到其内部形成P和NP两种类型的TLP(传输线脉冲)报文,并采用一个外设高速互连接口(PCIe)发送应用端发送P和NP两种类型的TLP报文。其中P类型的TLP报文为转发TLP的报文,也称为邮递报文;NP类型的TLP报文为非转发TLP的报文,也称为非邮递报文。
如图2所示,在图2中主机102一侧与服务器104一侧交互,体现了服务器104内部的结构及数据控制方式。
在一个实施例中,结合图2,如图3所示,提供了一种报文发送控制方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
步骤S3,根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记;
步骤S4,响应于在非邮递报文前一个接收的报文为邮递报文时,设置所述非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同;响应于在非邮递报文前一个接收的报文为非邮递报文时,根据接收非邮递报文的顺序对所述非邮递报文设置时间戳标记;
步骤S5,将邮递报文和非邮递报文分离为邮递报文队列和非邮递报文队列;
步骤S6,响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送,以使所述邮递报文在所述非邮递报文不存在信用值时能够绕过所述非邮递报文进行发送。
结合图2,其中,服务器104的整个系统进行划分为:
CPU处理系统:主要用于控制IngressDMA和EngressDMA完成与主机的数据传输,同时进行IngressDMA的所发起的NP的credit值的查询;
DMA单元:IngressDMA用于发起NP TLP传输报文(即非邮递报文),将主机侧数据搬移到服务器104内;EngressDMA用于发起P TLP传输报文(即邮递报文),将服务器104内数据传输到Host主机102侧。
具体地,DMA(Direct Memory Access)为直接存储器存取。IngressDMA(IngressDMA)表示入DMA,为直接存储器存取入口。EDMA(Engress DMA)表示出DMA,为直接存储器存取出口。
本实施例中服务器104的PCIe系统侧(即PCIe-SSD)会使用同一个发送应用端进行发送 P和NP两种类型的TLP报文,通过对P和NP进行设置时间戳标记,同时增加对非邮递报文的信用值的监控来防止时间戳标记计数的溢出导致出现异常,来解决使用同一个PCIe接口发送应用端发送时的阻塞问题。
本实施例利用按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送,以使所述邮递报文在所述非邮递报文不存在信用值时能够绕过所述非邮递报文进行发送的控制方式可实现当非邮递报文的信用值缺少时,邮递报文的发送不受非邮递报文的信用值缺少的影响,绕过非邮递报文的信用值缺少限制进行发送,避免了邮递报文的发送阻塞问题。
如图4所示,在本实施例中,所述根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记步骤,包括:
步骤S31,获取接收邮递报文的顺序;
步骤S32,根据接收邮递报文的顺序,将所述邮递报文依次分配一个连续递增的序列号作为其时间戳标记。
可理解的是,所述响应于在非邮递报文前一个接收的报文为邮递报文时,设置所述非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同步骤具体为:根据接收非邮递报文的顺序,获取每一非邮递报文前一个邮递报文的时间戳标记,并将获取的时间戳标记作为对应非邮递报文的时间戳标记。
其中应该注意的是,本实施例利用连续递增的序列号作为邮递报文的时间戳标记,后续可严格按照连续递增的序列号控制邮递报文的发送,不会受非邮递报文的信用值缺少的影响,实现绕过非邮递报文的信用值缺少限制进行发送。而且非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同,这样不仅能够保证非邮递报文的发送顺序,还能在待发送的邮递报文及非邮递报文具有相同的时间戳标记时,实现控制非邮递报文先于邮递报文进行发送,保证后续非邮递报文先于邮递报文被处理。
如图5所示,在本实施例中,所述响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送步骤,包括:
步骤S61,获取所述邮递报文队列中的存在信用值的邮递报文;
步骤S62,获取所述邮递报文队列中的邮递报文的时间戳标记;
步骤S63,根据时间戳标记对应的连续递增的序列号顺序对存在信用值的邮递报文逐一发送。
其中,利用连续递增的序列号作为邮递报文的时间戳标记,严格按照连续递增的序列号控制邮递报文的发送,确保当非邮递报文的信用值(Credit)缺少时,实现邮递报文能够绕过非邮递报文进行发送。
具体的,在本实施例中,所述根据时间戳标记对应的连续递增的序列号顺序对存在信用值的邮递报文逐一发送步骤,包括:
响应于当前待发送的邮递报文的时间戳标记的序列号与最新发送的邮递报文的时间戳标记的序列号不是连续递增的序列号时,等待;
响应于当前待发送的邮递报文的时间戳标记的序列号与最新发送的邮递报文的时间戳标记的序列号为连续递增的序列号时,将当前待发送的邮递报文进行发送。
如图3所示,在上述步骤基础上,在邮递报文及非邮递报文的信用值充足情况下,本方法还包括:
步骤S7,响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送。
如图6所示,在本实施例中,所述响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送步骤,包括:
步骤S71,响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,获取待发送的邮递报文及非邮递报文的时间戳标记;
步骤S72,将所述邮递报文队列中的邮递报文按照时间戳标记的顺序进行排序,将述非邮递报文队列中的非邮递报文按照时间戳标记的顺序进行排序;
步骤S73,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文及所述非邮递报文队列中的非邮递报文进行发送。
在本实施例中,所述按照时间戳标记的顺序对所述邮递报文队列中的邮递报文及所述非邮递报文队列中的非邮递报文进行发送步骤中,包括:
响应于待发送的邮递报文及非邮递报文具有相同的时间戳标记时,控制非邮递报文先于邮递报文进行发送。
结合前文所述的非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同,这样不仅能够保证非邮递报文的发送顺序,还能在待发送的邮递报文及非邮递报文具有相同的时间戳标记时,实现控制非邮递报文先于邮递报文进行发送,保证后续非邮递报文先于邮递报文被处理。
如图3所示,在本实施例中,所述根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记步骤之前,还包括:
步骤S2,按时间顺序依次获取邮递报文和非邮递报文。
如图3所示,在本实施例中,所述按时间顺序依次获取邮递报文和非邮递报文步骤之前,还包括:
步骤S1,分别生成邮递报文和非邮递报文。
其中生成邮递报文和非邮递报文是有时间顺序的,后续按时间顺序依次获取邮递报文和非邮递报文,能够便于采用连续递增的序列号作为邮递报文的时间戳标记。
在本实施例中,所述分别生成邮递报文和非邮递报文步骤,包括:
控制直接存储器存取出口在读写数据时生成邮递报文;
控制直接存储器存取入口在读写数据时生成非邮递报文,同时根据直接存储器存取入口发起的非邮递报文信用值查询命令实时查询非邮递报文的信用值。
在本实施例中,所述分别生成邮递报文和非邮递报文步骤,包括:
响应于查询到非邮递报文的信用值时,将查询到的非邮递报文的信用值添加至非邮递报文中。
在本实施例中,所述按时间顺序依次获取邮递报文和非邮递报文步骤之后,还包括:
分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量;
控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值。
其中,控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值,可实现不因报文大量堆积影响报文发送。
在本实施例中,所述控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值步骤,包括:
实时检测当前待发送的非邮递报文的数量;
响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文,以使当前待发送的邮递报文的数量小于第一阈值。
其中,根据非邮递报文的数量控制邮递报文的生成数量,因为非邮递报文无信用值时需等待生成信用值后发送,此时邮递报文不断生成会造成邮递报文的数量远大于非邮递报文的数量,导致邮递报文翻转溢出。
在本实施例中,所述控制当前待发送的邮递报文的数量小于第一阈值步骤,包括:
实时检测当前待发送的邮递报文的数量;
响应于当前待发送的邮递报文的数量大于等于第一阈值时,控制暂停生成邮递报文。
在本实施例中,所述控制当前待发送的非邮递报文的数量小于第二阈值步骤,包括:
实时检测当前待发送的非邮递报文的数量;
响应于当前待发送的非邮递报文的数量大于等于第二阈值时,控制暂停生成非邮递报文。
在本实施例中,所述分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量步骤,包括:
控制计数器的最高位数值分别用于表示邮递报文和非邮递报文的类型;
设置计数器的邮递报文和非邮递报文的计数个数相等;
设置第一阈值小于计数器对邮递报文的计数个数,设置第二阈值小于计数器对非邮递报文的计数个数;
实时检测并记录当前待发送的非邮递报文的数量;
实时检测并记录当前待发送的邮递报文的数量。
在本实施例中,所述分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量步骤中,包括:
设置第一阈值等于第二阈值,设置第三阈值的取值范围小于第二阈值的取值范围;
实时检测并记录当前缺少信用值待发送的非邮递报文的数量,响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文。
在本实施例中,在所述分别生成邮递报文和非邮递报文步骤之后,包括:
计算获取邮递报文和非邮递报文的信用值;
当发送一个邮递报文时将邮递报文的信用值减少,当发送一个非邮递报文时将非邮递报文的信用值减少。
结合图2,P和NP报文会根据每种类型的流控Credit来决定能否发送到主机侧,时间戳标记模块会将EDMA产生的P类报文依次分配一个递增的Sequence序列号,而IDMA产生NP报文按照PT进行序列号的标记:在P类报文Credit充足下可以保证PT是按照递增序列号依次发送的;同时为了保证NP不能绕过P发送,当碰到第一个NP时需要将其之前的PT报文的序列号分配给NP即NP的Seq序列号与前一个P的序列号相同,具体执行过程如下所示:系统按照PT0 PT1 NP1 PT2 NP2……依次产生要发送的TLP传输报文,报文时间戳标记模块会依次将PT0、PT1、PT2…进行序列号时间戳的信息标记,同时将NP1、NP2…根据其前一个PT的序列号标记成相同的即NP1与PT1相同、NP2与PT2相同;最终完成PT和NP两种类型TLP报文的分流。
报文时间戳标记模块:为1个12bit的计数器(共4096个计数),最高位为range表示分为高/低两个范围(如最高位开头分为0和1),用剩余的11bit计数用于sequence的记录(时间戳),得到2048个计数值。
PCIe 发送TLP应用仲裁模块从PT和NP两个队列的消息根据每种类型TLP的credit值有无按照时间戳进行发送,越早的TLP进行优先发送,从而满足了当NP Credit缺少时PT发送可以绕过NP的发送;当PT和NP credit都充足的情况下根据时间戳标记进行发送;
NP Credit更新慢反馈PT发送处理模块:实际应用场景需要考虑由于NP Credit更新慢但PT credit更新快造成PT的seqNum序列号超过2048翻转溢出时会造成NP TLP的时间戳比较晚即早期的NP报文比最新传入的PT报文新,导致TLP 应用仲裁模块发送不出去,采用CPU监控NP Credit的使用值反压PT的传输,控制P报文产出,避免PT发送过多,具体原则如下:CPU监控IngressDMA的NP Credit剩余情况,当达到一定的阈值时停止EDMA的PT发送,保证PT连续发送个数不会超过2048个。
上述报文发送控制方法中,通过对邮递报文和非邮递报文进行设置时间戳标记,同时增加对非邮递报文的信用值的监控来防止时间戳标记计数的溢出导致出现异常,来解决使用同一个PCIe接口发送应用端发送时的阻塞问题。而且本实施例利用按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送,以使所述邮递报文在所述非邮递报文不存在信用值时能够绕过所述非邮递报文进行发送的控制方式可实现当非邮递报文的信用值缺少时,邮递报文的发送不受非邮递报文的信用值缺少的影响,邮递报文可绕过非邮递报文进行发送,避免了邮递报文的发送阻塞。
在SSD内部PCIe传输报文应用端的仲裁方法,在NP 报文和PT报文的发送时增加报文时间戳标记模块,完成对NP和PT发送报文的序列号标记及对应消息的分流操作,保证NP Credit值不足时不会阻塞PT的发送,同时在P和NP credit充足下保序发送;同时增加监控NP Credit更新值反馈PT发送处理机制,保证在主机在更新NP Credit过慢时不会造成PT的发送发生翻转。
SSD装置的ASIC系统中增加NP和PT报文的时间戳标记模块,NP报文时间戳标记与前一个PT报文一致;PCIe 发送TLP应用仲裁模块根据时间戳,保证PT发送可以绕过NP同时PT与NP发送时也是保序的。
增加NP Credit更新慢反馈PT发送处理模块(其包含于报文时间戳标记模块中)或反馈至EDMA,解决在PT大压力发送造成NP发送异常问题。
应该理解的是,虽然图3-图6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3-图6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,结合图2,如图7所示,提供了一种报文发送控制装置10,包括:报文时间戳标记模块1、报文分流模块2、发送报文仲裁模块3。
所述报文时间戳标记模块1用于根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记;响应于在非邮递报文前一个接收的报文为邮递报文时,设置所述非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同;响应于在非邮递报文前一个接收的报文为非邮递报文时,根据接收非邮递报文的顺序对所述非邮递报文设置时间戳标记。
所述报文分流模块2用于将邮递报文和非邮递报文分离为邮递报文队列和非邮递报文队列。
所述发送报文仲裁模块3用于响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送,以使所述邮递报文在所述非邮递报文不存在信用值时能够绕过所述非邮递报文进行发送;并用于响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送。
在本实施例中,所述报文时间戳标记模块1用于根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记步骤,包括:
获取接收邮递报文的顺序;
根据接收邮递报文的顺序,将所述邮递报文依次分配一个连续递增的序列号作为其时间戳标记。
在本实施例中,所述送报文仲裁模块3用于响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送步骤,包括:
获取所述邮递报文队列中的存在信用值的邮递报文;
获取所述邮递报文队列中的邮递报文的时间戳标记;
根据时间戳标记对应的连续递增的序列号顺序对存在信用值的邮递报文逐一发送。
在本实施例中,所述根据时间戳标记对应的连续递增的序列号顺序对存在信用值的邮递报文逐一发送步骤,包括:
响应于当前待发送的邮递报文的时间戳标记的序列号与最新发送的邮递报文的时间戳标记的序列号不是连续递增的序列号时,等待;
响应于当前待发送的邮递报文的时间戳标记的序列号与最新发送的邮递报文的时间戳标记的序列号为连续递增的序列号时,将当前待发送的邮递报文进行发送。
在本实施例中,所述发送报文仲裁模块3用于响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送步骤,包括:
响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,获取待发送的邮递报文及非邮递报文的时间戳标记;
将所述邮递报文队列中的邮递报文按照时间戳标记的顺序进行排序,将述非邮递报文队列中的非邮递报文按照时间戳标记的顺序进行排序;
按照时间戳标记的顺序对所述邮递报文队列中的邮递报文及所述非邮递报文队列中的非邮递报文进行发送。
在本实施例中,所述按照时间戳标记的顺序对所述邮递报文队列中的邮递报文及所述非邮递报文队列中的非邮递报文进行发送步骤中,包括:
响应于待发送的邮递报文及非邮递报文具有相同的时间戳标记时,控制非邮递报文先于邮递报文进行发送。
如图8所示,所述报文发送控制装置10还包括报文生成模块20。应该主要的是,所述报文生成模块20也可不为所述报文发送控制装置10的一部分,也可以为服务器104的一部分结构。本实施例中优选所述报文生成模块20不为所述报文发送控制装置10的一部分,而是为服务器104的一部分结构。具体的,所述报文生成模块20包括:直接存储器存取出口21,直接存储器存取入口22,中央处理器23和消息接口24。
在本实施例中,所述报文生成模块20在根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记步骤之前,用于按时间顺序依次获取邮递报文和非邮递报文。
在本实施例中,所述报文生成模块20在按时间顺序依次获取邮递报文和非邮递报文步骤之前,用于分别生成邮递报文和非邮递报文。
在本实施例中,所述分别生成邮递报文和非邮递报文步骤,包括:
控制直接存储器存取出口21在读写数据时生成邮递报文;
控制直接存储器存取入口22在读写数据时生成非邮递报文,同时根据直接存储器存取入口22发起的非邮递报文信用值查询命令实时查询非邮递报文的信用值。
在本实施例中,所述分别生成邮递报文和非邮递报文步骤,包括:
响应于查询到非邮递报文的信用值时,将查询到的非邮递报文的信用值添加至非邮递报文中。
如图7所示,所述报文发送控制装置10还包括计数器4。计数器4优选为12bit计数器。
在本实施例中,所述计数器4在按时间顺序依次获取邮递报文和非邮递报文步骤之后,用于:
分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量;
控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值。
在本实施例中,所述控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值步骤,包括:
实时检测当前待发送的非邮递报文的数量;
响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文,以使当前待发送的邮递报文的数量小于第一阈值。
在本实施例中,所述控制当前待发送的邮递报文的数量小于第一阈值步骤,包括:
实时检测当前待发送的邮递报文的数量;
响应于当前待发送的邮递报文的数量大于等于第一阈值时,控制暂停生成邮递报文。
在本实施例中,所述控制当前待发送的非邮递报文的数量小于第二阈值步骤,包括:
实时检测当前待发送的非邮递报文的数量;
响应于当前待发送的非邮递报文的数量大于等于第二阈值时,控制暂停生成非邮递报文。
在本实施例中,所述分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量步骤,包括:
控制计数器的最高位数值分别用于表示邮递报文和非邮递报文的类型;
设置计数器的邮递报文和非邮递报文的计数个数相等;
设置第一阈值小于计数器对邮递报文的计数个数,设置第二阈值小于计数器对非邮递报文的计数个数;
实时检测并记录当前待发送的非邮递报文的数量;
实时检测并记录当前待发送的邮递报文的数量。
在本实施例中,所述分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量步骤中,包括:
设置第一阈值等于第二阈值,设置第三阈值的取值范围小于第二阈值的取值范围;
实时检测并记录当前缺少信用值待发送的非邮递报文的数量,响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文。
在本实施例中,在所述分别生成邮递报文和非邮递报文步骤之后,包括:
计算获取邮递报文和非邮递报文的信用值;
当发送一个邮递报文时将邮递报文的信用值减少,当发送一个非邮递报文时将非邮递报文的信用值减少。
上述报文发送控制装置中,通过对邮递报文和非邮递报文进行设置时间戳标记,同时增加对非邮递报文的信用值的监控来防止时间戳标记计数的溢出导致出现异常,来解决使用同一个PCIe接口发送应用端发送时的阻塞问题。而且本实施例利用按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送,以使所述邮递报文在所述非邮递报文不存在信用值时能够绕过所述非邮递报文进行发送的控制方式可实现当非邮递报文的信用值缺少时,邮递报文的发送不受非邮递报文的信用值缺少的影响,邮递报文可绕过非邮递报文进行发送,避免了邮递报文的发送阻塞。
关于报文发送控制装置的具体限定可以参见上文中对于报文发送控制方法的限定,在此不再赘述。上述报文发送控制装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
如图2、图8所示,在一个实施例中,提供了一种服务器104,其包括前文所述的报文发送控制装置10以及连接至报文时间戳标记模块1输入端的报文生成模块20;其中,所述报文生成模块20用于分别生成邮递报文和非邮递报文并按时间顺序依次传输至所述报文时间戳标记模块中。
如图2、图8所示,所述报文生成模块20包括:直接存储器存取出口21,直接存储器存取入口22,中央处理器23和消息接口24。
直接存储器存取出口21,用于生成并传输邮递报文;直接存储器存取入口22,用于生成并传输非邮递报文,并用于发出非邮递报文信用值查询命令;中央处理器23,分别连接至所述直接存储器存取出口及所述直接存储器存取入口,用于控制所述直接存储器存取出口生成邮递报文,用于控制所述直接存储器存取入口生成非邮递报文,并用于接收非邮递报文信用值查询命令;消息接口24,连接至所述中央处理器与所述直接存储器存取出口及所述直接存储器存取入口之间。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储报文发送控制数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种报文发送控制方法。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记;
响应于在非邮递报文前一个接收的报文为邮递报文时,设置所述非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同;响应于在非邮递报文前一个接收的报文为非邮递报文时,根据接收非邮递报文的顺序对所述非邮递报文设置时间戳标记;
将邮递报文和非邮递报文分离为邮递报文队列和非邮递报文队列;
响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送;
响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记步骤,包括:
获取接收邮递报文的顺序;
根据接收邮递报文的顺序,将所述邮递报文依次分配一个连续递增的序列号作为其时间戳标记。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送步骤,包括:
获取所述邮递报文队列中的存在信用值的邮递报文;
获取所述邮递报文队列中的邮递报文的时间戳标记;
根据时间戳标记对应的连续递增的序列号顺序对存在信用值的邮递报文逐一发送。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述根据时间戳标记对应的连续递增的序列号顺序对存在信用值的邮递报文逐一发送步骤,包括:
响应于当前待发送的邮递报文的时间戳标记的序列号与最新发送的邮递报文的时间戳标记的序列号不是连续递增的序列号时,等待;
响应于当前待发送的邮递报文的时间戳标记的序列号与最新发送的邮递报文的时间戳标记的序列号为连续递增的序列号时,将当前待发送的邮递报文进行发送。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送步骤,包括:
响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,获取待发送的邮递报文及非邮递报文的时间戳标记;
将所述邮递报文队列中的邮递报文按照时间戳标记的顺序进行排序,将述非邮递报文队列中的非邮递报文按照时间戳标记的顺序进行排序;
按照时间戳标记的顺序对所述邮递报文队列中的邮递报文及所述非邮递报文队列中的非邮递报文进行发送。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述按照时间戳标记的顺序对所述邮递报文队列中的邮递报文及所述非邮递报文队列中的非邮递报文进行发送步骤中,包括:
响应于待发送的邮递报文及非邮递报文具有相同的时间戳标记时,控制非邮递报文先于邮递报文进行发送。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记步骤之前,还包括:
按时间顺序依次获取邮递报文和非邮递报文。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述按时间顺序依次获取邮递报文和非邮递报文步骤之前,还包括:
分别生成邮递报文和非邮递报文。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述分别生成邮递报文和非邮递报文步骤,包括:
控制直接存储器存取出口在读写数据时生成邮递报文;
控制直接存储器存取入口在读写数据时生成非邮递报文,同时根据直接存储器存取入口发起的非邮递报文信用值查询命令实时查询非邮递报文的信用值。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述分别生成邮递报文和非邮递报文步骤,包括:
响应于查询到非邮递报文的信用值时,将查询到的非邮递报文的信用值添加至非邮递报文中。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述按时间顺序依次获取邮递报文和非邮递报文步骤之后,还包括:
分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量;
控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值步骤,包括:
实时检测当前待发送的非邮递报文的数量;
响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文,以使当前待发送的邮递报文的数量小于第一阈值。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述控制当前待发送的邮递报文的数量小于第一阈值步骤,包括:
实时检测当前待发送的邮递报文的数量;
响应于当前待发送的邮递报文的数量大于等于第一阈值时,控制暂停生成邮递报文。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述控制当前待发送的非邮递报文的数量小于第二阈值步骤,包括:
实时检测当前待发送的非邮递报文的数量;
响应于当前待发送的非邮递报文的数量大于等于第二阈值时,控制暂停生成非邮递报文。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量步骤,包括:
控制计数器的最高位数值分别用于表示邮递报文和非邮递报文的类型;
设置计数器的邮递报文和非邮递报文的计数个数相等;
设置第一阈值小于计数器对邮递报文的计数个数,设置第二阈值小于计数器对非邮递报文的计数个数;
实时检测并记录当前待发送的非邮递报文的数量;
实时检测并记录当前待发送的邮递报文的数量。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量步骤中,包括:
设置第一阈值等于第二阈值,设置第三阈值的取值范围小于第二阈值的取值范围;
实时检测并记录当前缺少信用值待发送的非邮递报文的数量,响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文。
其中,在所述分别生成邮递报文和非邮递报文步骤之后,包括:
计算获取邮递报文和非邮递报文的信用值;
当发送一个邮递报文时将邮递报文的信用值减少,当发送一个非邮递报文时将非邮递报文的信用值减少。
关于处理器执行计算机程序时实现步骤的具体限定可以参见上文中对于报文发送控制的方法的限定,在此不再赘述。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记;
响应于在非邮递报文前一个接收的报文为邮递报文时,设置所述非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同;响应于在非邮递报文前一个接收的报文为非邮递报文时,根据接收非邮递报文的顺序对所述非邮递报文设置时间戳标记;
将邮递报文和非邮递报文分离为邮递报文队列和非邮递报文队列;
响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送;
响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记步骤,包括:
获取接收邮递报文的顺序;
根据接收邮递报文的顺序,将所述邮递报文依次分配一个连续递增的序列号作为其时间戳标记。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送步骤,包括:
获取所述邮递报文队列中的存在信用值的邮递报文;
获取所述邮递报文队列中的邮递报文的时间戳标记;
根据时间戳标记对应的连续递增的序列号顺序对存在信用值的邮递报文逐一发送。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述根据时间戳标记对应的连续递增的序列号顺序对存在信用值的邮递报文逐一发送步骤,包括:
响应于当前待发送的邮递报文的时间戳标记的序列号与最新发送的邮递报文的时间戳标记的序列号不是连续递增的序列号时,等待;
响应于当前待发送的邮递报文的时间戳标记的序列号与最新发送的邮递报文的时间戳标记的序列号为连续递增的序列号时,将当前待发送的邮递报文进行发送。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送步骤,包括:
响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,获取待发送的邮递报文及非邮递报文的时间戳标记;
将所述邮递报文队列中的邮递报文按照时间戳标记的顺序进行排序,将述非邮递报文队列中的非邮递报文按照时间戳标记的顺序进行排序;
按照时间戳标记的顺序对所述邮递报文队列中的邮递报文及所述非邮递报文队列中的非邮递报文进行发送。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述按照时间戳标记的顺序对所述邮递报文队列中的邮递报文及所述非邮递报文队列中的非邮递报文进行发送步骤中,包括:
响应于待发送的邮递报文及非邮递报文具有相同的时间戳标记时,控制非邮递报文先于邮递报文进行发送。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记步骤之前,还包括:
按时间顺序依次获取邮递报文和非邮递报文。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述按时间顺序依次获取邮递报文和非邮递报文步骤之前,还包括:
分别生成邮递报文和非邮递报文。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述分别生成邮递报文和非邮递报文步骤,包括:
控制直接存储器存取出口在读写数据时生成邮递报文;
控制直接存储器存取入口在读写数据时生成非邮递报文,同时根据直接存储器存取入口发起的非邮递报文信用值查询命令实时查询非邮递报文的信用值。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述分别生成邮递报文和非邮递报文步骤,包括:
响应于查询到非邮递报文的信用值时,将查询到的非邮递报文的信用值添加至非邮递报文中。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述按时间顺序依次获取邮递报文和非邮递报文步骤之后,还包括:
分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量;
控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值步骤,包括:
实时检测当前待发送的非邮递报文的数量;
响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文,以使当前待发送的邮递报文的数量小于第一阈值。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述控制当前待发送的邮递报文的数量小于第一阈值步骤,包括:
实时检测当前待发送的邮递报文的数量;
响应于当前待发送的邮递报文的数量大于等于第一阈值时,控制暂停生成邮递报文。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述控制当前待发送的非邮递报文的数量小于第二阈值步骤,包括:
实时检测当前待发送的非邮递报文的数量;
响应于当前待发送的非邮递报文的数量大于等于第二阈值时,控制暂停生成非邮递报文。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量步骤,包括:
控制计数器的最高位数值分别用于表示邮递报文和非邮递报文的类型;
设置计数器的邮递报文和非邮递报文的计数个数相等;
设置第一阈值小于计数器对邮递报文的计数个数,设置第二阈值小于计数器对非邮递报文的计数个数;
实时检测并记录当前待发送的非邮递报文的数量;
实时检测并记录当前待发送的邮递报文的数量。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量步骤中,包括:
设置第一阈值等于第二阈值,设置第三阈值的取值范围小于第二阈值的取值范围;
实时检测并记录当前缺少信用值待发送的非邮递报文的数量,响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文。
其中,在所述分别生成邮递报文和非邮递报文步骤之后,包括:
计算获取邮递报文和非邮递报文的信用值;
当发送一个邮递报文时将邮递报文的信用值减少,当发送一个非邮递报文时将非邮递报文的信用值减少。
关于计算机程序被处理器执行时实现步骤的具体限定可以参见上文中对于报文发送控制的方法的限定,在此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (19)
1.一种报文发送控制方法,其特征在于,包括:
按时间顺序依次获取邮递报文和非邮递报文;
分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量;
控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值;其包括:实时检测当前待发送的非邮递报文的数量;设置第一阈值小于计数器对邮递报文的计数个数,设置第二阈值小于计数器对非邮递报文的计数个数;响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文,以使当前待发送的邮递报文的数量小于第一阈值;
根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记;
响应于在非邮递报文前一个接收的报文为邮递报文时,设置所述非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同;响应于在非邮递报文前一个接收的报文为非邮递报文时,根据接收非邮递报文的顺序对所述非邮递报文设置时间戳标记;
将邮递报文和非邮递报文分离为邮递报文队列和非邮递报文队列;
采用一个外设高速互连接口发送邮递报文和非邮递报文,其中响应于所述非邮递报文队列中的非邮递报文不存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送;并用于响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送。
2.根据权利要求1所述的报文发送控制方法,其特征在于,所述根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记步骤,包括:
获取接收邮递报文的顺序;
根据接收邮递报文的顺序,将所述邮递报文依次分配一个连续递增的序列号作为其时间戳标记。
3.根据权利要求2所述的报文发送控制方法,其特征在于,所述响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送步骤,包括:
获取所述邮递报文队列中的存在信用值的邮递报文;
获取所述邮递报文队列中的邮递报文的时间戳标记;
根据时间戳标记对应的连续递增的序列号顺序对存在信用值的邮递报文逐一发送。
4.根据权利要求3所述的报文发送控制方法,其特征在于,所述根据时间戳标记对应的连续递增的序列号顺序对存在信用值的邮递报文逐一发送步骤,包括:
响应于当前待发送的邮递报文的时间戳标记的序列号与最新发送的邮递报文的时间戳标记的序列号不是连续递增的序列号时,等待;
响应于当前待发送的邮递报文的时间戳标记的序列号与最新发送的邮递报文的时间戳标记的序列号为连续递增的序列号时,将当前待发送的邮递报文进行发送。
5.根据权利要求1所述的报文发送控制方法,其特征在于,所述响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送步骤,包括:
响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,获取待发送的邮递报文及非邮递报文的时间戳标记;
将所述邮递报文队列中的邮递报文按照时间戳标记的顺序进行排序,将述非邮递报文队列中的非邮递报文按照时间戳标记的顺序进行排序;
按照时间戳标记的顺序对所述邮递报文队列中的邮递报文及所述非邮递报文队列中的非邮递报文进行发送。
6.根据权利要求5所述的报文发送控制方法,其特征在于,所述按照时间戳标记的顺序对所述邮递报文队列中的邮递报文及所述非邮递报文队列中的非邮递报文进行发送步骤中,包括:
响应于待发送的邮递报文及非邮递报文具有相同的时间戳标记时,控制非邮递报文先于邮递报文进行发送。
7.根据权利要求1所述的报文发送控制方法,其特征在于,所述按时间顺序依次获取邮递报文和非邮递报文步骤之前,还包括:
分别生成邮递报文和非邮递报文。
8.根据权利要求7所述的报文发送控制方法,其特征在于,所述分别生成邮递报文和非邮递报文步骤,包括:
控制直接存储器存取出口在读写数据时生成邮递报文;
控制直接存储器存取入口在读写数据时生成非邮递报文,同时根据直接存储器存取入口发起的非邮递报文信用值查询命令实时查询非邮递报文的信用值。
9.根据权利要求8所述的报文发送控制方法,其特征在于,所述分别生成邮递报文和非邮递报文步骤,包括:
响应于查询到非邮递报文的信用值时,将查询到的非邮递报文的信用值添加至非邮递报文中。
10.根据权利要求1所述的报文发送控制方法,其特征在于,所述控制当前待发送的邮递报文的数量小于第一阈值步骤,包括:
实时检测当前待发送的邮递报文的数量;
响应于当前待发送的邮递报文的数量大于等于第一阈值时,控制暂停生成邮递报文。
11.根据权利要求1所述的报文发送控制方法,其特征在于,所述控制当前待发送的非邮递报文的数量小于第二阈值步骤,包括:
实时检测当前待发送的非邮递报文的数量;
响应于当前待发送的非邮递报文的数量大于等于第二阈值时,控制暂停生成非邮递报文。
12.根据权利要求1所述的报文发送控制方法,其特征在于,所述分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量步骤,包括:
控制计数器的最高位数值分别用于表示邮递报文和非邮递报文的类型;
设置计数器的邮递报文和非邮递报文的计数个数相等;
实时检测并记录当前待发送的非邮递报文的数量;
实时检测并记录当前待发送的邮递报文的数量。
13.根据权利要求12所述的报文发送控制方法,其特征在于,所述分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量步骤中,包括:
设置第一阈值等于第二阈值,设置第三阈值的取值范围小于第二阈值的取值范围;
实时检测并记录当前缺少信用值待发送的非邮递报文的数量,响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文。
14.根据权利要求7所述的报文发送控制方法,其特征在于,在所述分别生成邮递报文和非邮递报文步骤之后,包括:
计算获取邮递报文和非邮递报文的信用值;
当发送一个邮递报文时将邮递报文的信用值减少,当发送一个非邮递报文时将非邮递报文的信用值减少。
15.一种报文发送控制装置,其特征在于,所述装置包括:
报文生成模块,用于按时间顺序依次获取邮递报文和非邮递报文;
计数器,用于分别对获取的邮递报文和非邮递报文进行计数,实时记录当前待发送的邮递报文和非邮递报文的数量;控制当前待发送的邮递报文的数量小于第一阈值,控制当前待发送的非邮递报文的数量小于第二阈值;其包括:实时检测当前待发送的非邮递报文的数量;设置第一阈值小于计数器对邮递报文的计数个数,设置第二阈值小于计数器对非邮递报文的计数个数;响应于当前待发送的非邮递报文的数量大于等于第三阈值且小于第二阈值时,控制暂停生成邮递报文,以使当前待发送的邮递报文的数量小于第一阈值;
报文时间戳标记模块,用于根据接收邮递报文的顺序对所述邮递报文按序设置时间戳标记;响应于在非邮递报文前一个接收的报文为邮递报文时,设置所述非邮递报文的时间戳标记与其前一个邮递报文的时间戳标记相同;响应于在非邮递报文前一个接收的报文为非邮递报文时,根据接收非邮递报文的顺序对所述非邮递报文设置时间戳标记;
报文分流模块,用于将邮递报文和非邮递报文分离为邮递报文队列和非邮递报文队列;
发送报文仲裁模块,用于采用一个外设高速互连接口发送邮递报文和非邮递报文,其中响应于所述非邮递报文队列中的非邮递报文不存在信用值时且所述邮递报文队列中的邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文队列中的邮递报文进行发送;并用于响应于所述邮递报文队列中的邮递报文存在信用值且所述非邮递报文队列中的非邮递报文存在信用值时,按照时间戳标记的顺序对所述邮递报文及所述非邮递报文进行发送。
16.一种服务器,其特征在于,包括权利要求15所述的报文发送控制装置以及连接至报文时间戳标记模块输入端的报文生成模块;
其中,所述报文生成模块用于分别生成邮递报文和非邮递报文并按时间顺序依次传输至所述报文时间戳标记模块中。
17.根据权利要求16所述的服务器,其特征在于,所述报文生成模块包括:
直接存储器存取出口,用于生成并传输邮递报文;
直接存储器存取入口,用于生成并传输非邮递报文,并用于发出非邮递报文信用值查询命令;
中央处理器,分别连接至所述直接存储器存取出口及所述直接存储器存取入口,用于控制所述直接存储器存取出口生成邮递报文,用于控制所述直接存储器存取入口生成非邮递报文,并用于接收非邮递报文信用值查询命令;
消息接口,连接至所述中央处理器与所述直接存储器存取出口及所述直接存储器存取入口之间。
18.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至14中任一项所述方法的步骤。
19.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至14中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310486702.4A CN116233000B (zh) | 2023-05-04 | 2023-05-04 | 报文发送控制方法、装置、服务器、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310486702.4A CN116233000B (zh) | 2023-05-04 | 2023-05-04 | 报文发送控制方法、装置、服务器、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116233000A CN116233000A (zh) | 2023-06-06 |
CN116233000B true CN116233000B (zh) | 2023-08-04 |
Family
ID=86577223
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310486702.4A Active CN116233000B (zh) | 2023-05-04 | 2023-05-04 | 报文发送控制方法、装置、服务器、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116233000B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10176126B1 (en) * | 2015-06-29 | 2019-01-08 | Cadence Design Systems, Inc. | Methods, systems, and computer program product for a PCI implementation handling multiple packets |
CN110688332A (zh) * | 2019-09-12 | 2020-01-14 | 无锡江南计算技术研究所 | 一种面向高速消息传输的pcie数据传输系统及计算机 |
CN111666246A (zh) * | 2019-03-08 | 2020-09-15 | 英特尔公司 | 用于串行互连的安全流协议 |
CN114968893A (zh) * | 2022-07-27 | 2022-08-30 | 井芯微电子技术(天津)有限公司 | 基于时间戳的PCIe报文队列调度方法、系统及设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140281099A1 (en) * | 2013-03-14 | 2014-09-18 | Broadcom Corporation | METHOD, SYSTEM, AND COMPUTER PROGRAM PRODUCT FOR CONTROLLING FLOW OF PCIe TRANSPORT LAYER PACKETS |
WO2019036217A1 (en) * | 2017-08-18 | 2019-02-21 | Missing Link Electronics, Inc. | HETEROGENEOUS TRANSPORT BASED ON PACKETS |
-
2023
- 2023-05-04 CN CN202310486702.4A patent/CN116233000B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10176126B1 (en) * | 2015-06-29 | 2019-01-08 | Cadence Design Systems, Inc. | Methods, systems, and computer program product for a PCI implementation handling multiple packets |
CN111666246A (zh) * | 2019-03-08 | 2020-09-15 | 英特尔公司 | 用于串行互连的安全流协议 |
CN110688332A (zh) * | 2019-09-12 | 2020-01-14 | 无锡江南计算技术研究所 | 一种面向高速消息传输的pcie数据传输系统及计算机 |
CN114968893A (zh) * | 2022-07-27 | 2022-08-30 | 井芯微电子技术(天津)有限公司 | 基于时间戳的PCIe报文队列调度方法、系统及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN116233000A (zh) | 2023-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108933993B (zh) | 短信缓存队列选择方法、装置、计算机设备和存储介质 | |
CN108834086B (zh) | 短信发送的方法、装置、计算机设备和存储介质 | |
CN108667721B (zh) | 订阅报表生成方法、装置、计算机设备和存储介质 | |
CN108933994B (zh) | 短信分发处理方法、装置、计算机设备和存储介质 | |
CN113422707B (zh) | 一种带内网络遥测方法及设备 | |
CN104092717A (zh) | 消息处理方法及系统、消息目的端设备与分布式消息系统 | |
CN108388478B (zh) | 日志数据处理方法和系统 | |
WO2020216077A1 (zh) | 一种区块链事件去重方法、装置、计算机设备及存储介质 | |
CN103986585A (zh) | 报文预处理方法及其装置 | |
DE112012002408T5 (de) | Fahrzeug-Steuervorrichtung, Fahrzeug-Steuersystem | |
WO2020211622A1 (zh) | 一种基于区块链的消息存储方法及装置 | |
CN116233000B (zh) | 报文发送控制方法、装置、服务器、设备和存储介质 | |
CN113672284B (zh) | 一种指令执行方法、系统、电子设备以及存储介质 | |
CN111614577A (zh) | 一种多通信任务管理方法、装置和计算机设备 | |
CN108389124B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
US20240086114A1 (en) | Data processing method and apparatus | |
CN103248636A (zh) | 离线下载的系统及方法 | |
CN105939293A (zh) | 一种skb回收方法及装置 | |
CN113626218A (zh) | 数据处理方法、装置、存储介质及计算机设备 | |
CN112788108A (zh) | 一种跨区块链分布式消息处理方法、平台及存储介质 | |
CN106209676A (zh) | 基于多设备的云主机系统的数据处理方法及装置 | |
WO2019157778A1 (zh) | 邮政单打印方法、电子装置及计算机可读存储介质 | |
CN107359961B (zh) | 从装置控制方法 | |
CN109522103A (zh) | 邮件发送方法、装置、计算机设备和存储介质 | |
CN115878309A (zh) | 资源分配方法、装置、处理核、设备和计算机可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |