CN110099013B - 一种报文发送控制方法及装置 - Google Patents
一种报文发送控制方法及装置 Download PDFInfo
- Publication number
- CN110099013B CN110099013B CN201910338567.2A CN201910338567A CN110099013B CN 110099013 B CN110099013 B CN 110099013B CN 201910338567 A CN201910338567 A CN 201910338567A CN 110099013 B CN110099013 B CN 110099013B
- Authority
- CN
- China
- Prior art keywords
- queue depth
- target
- queuing delay
- queue
- average length
- 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
Images
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/50—Queue scheduling
- H04L47/56—Queue scheduling implementing delay-aware scheduling
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开实施例提供的报文发送控制方法及装置,通过对发送队列深度的控制,对报文的排队时延进行调整,从而减小报文长度变化对网络时延的影响,降低网络时延的抖动。其中,报文发送控制方法包括:获取目标端口在目标历史时间段内接收到的报文的平均长度;基于所述平均长度,预先确定的排队时延阈值、以及预先确定的映射关系,确定所述目标端口对应的报文发送队列在未来预设时间段的目标队列深度;所述映射关系是报文平均长度、队列深度以及排队时延之间的映射关系;将所述目标端口对应的发送队列的队列深度调整至所述目标队列深度。
Description
技术领域
本公开涉及计算机通信技术领域,具体而言,涉及一种报文发送控制方法及装置。
背景技术
服务质量(Quality of Service,QOS)指计算机网络能力利用各种基础技术,为指定的网络通信提供更好的服务能力,是用来解决网络延迟和阻塞等问题的一种技术。对于网络业务,影响服务质量的因素包括传输的带宽、传送的时延、数据的丢包率等。在网络中可以通过保证传输的带宽、降低传送的时延、降低数据的丢包率以及时延抖动等措施来提高服务质量。网络资源总是有限的,在保证某类业务的服务质量的同时,可能就是在损害其它业务的服务质量。因此需要根据各种业务的特点来对网络资源进行合理的规划和分配,从而使网络资源得到高效利用。
发明内容
有鉴于此,本公开实施例的目的在于提供一种报文发送控制方法及装置,通过对发送队列深度的控制,对报文的排队时延进行调整,从而减小报文长度变化对网络时延的影响,降低网络时延的抖动。
第一方面,本公开实施例提供了一种报文发送控制方法,该报文发送控制方法应用于报文发送设备;该报文发送控制方法包括:
获取目标端口在目标历史时间段内接收到的报文的平均长度;
基于所述平均长度、预先确定的排队时延阈值、以及预先确定的映射关系,确定所述目标端口对应的报文发送队列的目标队列深度,所述映射关系是报文平均长度、队列深度以及排队时延之间的映射关系;
将所述目标端口对应的发送队列的队列深度调整至所述目标队列深度。
第二方面,本公开实施例还提供一种报文发送控制装置,该报文发送控制装置应用于报文发送设备;该报文发送控制装置包括:
获取模块,用于获取目标端口在目标历史时间段内接收到的报文的平均长度;
确定模块,用于基于所述平均长度、预先确定的排队时延阈值、以及预先确定的映射关系,确定所述目标端口对应的报文发送队列的目标队列深度,所述映射关系是报文平均长度、队列深度以及排队时延之间的映射关系;
调整模块,用于将所述目标端口对应的发送队列的队列深度调整至所述目标队列深度。
第三方面,本公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面的实施方式中的步骤。
第四方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面的实施方式中的步骤。
本公开实施例基于获取的目标端口在目标历史时间段内接收到的报文的平均长度、预先确定的排队时延阈值、以及预先确定的映射关系,确定目标端口对应的报文发送队列的目标队列深度,并将目标端口对应的发送队列的队列深度调整至目标队列深度,其中,映射关系是报文平均长度、队列深度以及排队时延之间的映射关系,从而实现了通过对发送队列深度的控制,对报文的排队时延进行调整,从而减小报文长度变化对网络时延的影响,减小网络时延的抖动。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种报文发送控制方法的流程图;
图2示出了本公开实施例所提供的一种报文发送控制装置的示意图;
图3示出了本公开实施例所提供的一种计算机设备的示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
在某些应用场景中,例如网络电话,为了保证通话的畅通,通常要求网络电话对应的报文在网络中传输过程中的网络时延不能超出一定的时延阈值。
报文在发送过程中的网络时延由四个部分组成:发送时延、传播时延、处理时延以及排队时延。其中,(1)发送时延是指网络设备发送报文所需要的时间;又称为传输时延,其与网络设备本身的处理性能以及报文的大小有关;(2)传播时延是报文在信道中以电磁波的形式传输;电磁波在信道中传播一定的距离需要花费的时间,其与传输信道的长度有关;(3)处理时延是指主网络设备在对报文进行转发处理时所花费的处理时间,其与网络设备本身的性能有关;(4)报文在网络中传输时,会经由网络设备的转发;网络设备在向外发送报文时,会为报文确定发送的端口;若端口处于流量拥塞状态,会将报文缓存到与该端口对应的输出队列中等待调度发送,从而产生了排队时延。
端口在对报文发送的过程中,一旦通过该端口的报文的长度发生了变化,导致发送队列中的报文长度随之发生变化;在端口的传输能力不变的情况下,报文传输时的网络时延就会发生变化,例如报文长度变长,会造成发送时延增加,同时在输出队列中排队的报文需要更多的排队时间,排队时延也就越大;而报文长度变小,会造成发送时延减少,处于输出队列中的报文需要较少的排队时间就能完成转发,排队时延也就越小;因此,报文长度的变化造成该端口在对报文发送过程中的排队时延发生抖动,进而导致网络设备在发送报文时的网络时延也发生抖动,造成无法满足网络时延的要求。
基于上述研究,本公开提供了一种报文发送控制方法及装置,能够通过目标端口在目标历史时间段内接收到的报文的平均长度、预先确定的排队时延阈值、以及预先确定的报文平均长度、队列深度以及排队时延时间的映射关系,确定目标端口对应的报文发送队列在未来预设时间段的目标队列深度,并将目标端口对应的发送队列的队列深度调整至该目标队列深度,从而实现了通过控制目标端口的队列深度来控制排队时延,减小报文长度变化对网络时延的影响,减小网络时延的抖动。
下面将结合本公开中附图,对本公开中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种报文发送控制方法进行详细介绍,本公开实施例所提供的报文发送控制方法的执行主体为报文发送设备,该报文发送设备为具有报文发送能力的电子设备,例如计算机、路由器、交换机、网桥、集线器、网关、网络接口卡、无线接入点、调制解调器等。下面以执行主体为网络设备对本公开实施例提供的报文发送控制方法加以说明。
实施例一
参见图1所示,为本公开实施例一提供的报文发送控制方法的流程图,该方法包括步骤S101~S103,其中:
S101:获取目标端口在目标历史时间段内接收到的报文的平均长度;
S102:基于平均长度、预先确定的排队时延阈值、以及预先确定的映射关系,确定目标端口对应的报文发送队列的目标队列深度,所述映射关系是报文平均长度、队列深度以及排队时延之间的映射关系;
S103:将目标端口对应的发送队列的队列深度调整至目标队列深度。
以下分别对为上述S101~S103的详细描述。
I:在上述S101中,目标端口可以根据实际的需要进行具体设定,其可以是某一网络设备上的全部发送端口,也可以是该网络设备上发送端口的一部分,例如某一类报文只会通过某发送端口进行发送,要求该类报文的排队时延不能超出一定的排队时延阈值,则可以将该发送端口确定为目标端口。
目标历史时间段也可以根据实际的需要具体设定,例如可以设定为过去的一周、24小时、1小时、20分钟等。该目标历史时间段的结束时间可以是当前时间,也可以在早于当前时间的另一时间。
报文的平均长度可以采用但不限于下述(1)或(2)中任一种方式获得:
(1):获取目标端口在目标历史时间段内接收到的各个报文的长度;根据各个报文的长度,以及目标端口在目标历史时间段内接收到的所有报文的数量,确定目标端口在目标历史时间段内接收到的报文的平均长度。
这里,目标端口在目标历史时间段内接收到的各个报文的长度包括:通过目标端口发送的各个报文的长度;或者包括:通过目标端口发送的各个报文,以及由于拥塞管理而被丢弃的各个报文的长度。
(2):在多个采样时间点对目标端口在目标历史时间段内接收到的报文进行采样,获得多个采样报文。根据各个采样报文的长度,确定采样报文的平均长度,并将采样本文的平均长度作为目标端口在目标历史时间段内接收到的报文的平均长度。
Ⅱ:在上述S102中,对于不同的业务,有不同的排队时延阈值;排队时延阈值,是指流量拥塞情况下排队的最大时延。且当报文平均长度不变的情况下,排队时延阈值越大,对应的队列深度越大。类似地,在排队时延一定的情况下,报文平均长度越大,对应的队列深度也就越小;在队列深度不变的情况下,报文平均长度越大,则排队时延也就越大。且经研究发现,由于网络设备本身性能、网络环境等因素的影响,当报文平均长度、队列深度以及排队时延三者中有一者不变时,另外两者并非是绝对的反比或者正比关系。因此可以首先确定报文平均长度、队列深度以及排队时延之间的映射关系。
具体地,可以采用下述方式确定报文平均长度、队列深度以及排队时延之间的映射关系:
获取多个样本端口在多个历史时间段内接收到报文的平均长度、在各个历史时间段内的队列深度、以及在各个历史时间段的排队时延;根据多个样本端口在各个历史时间段内接收到报文的平均长度、在各个历史时间段内的队列深度、以及在各个历史时间段的排队时延,确定平均长度、队列深度以及排队时延之间的映射关系。
此处,样本端口可以是和目标端口的端口类型相同的端口;针对每个样本端口,可以设置一个或者多个与该样本端口的历史时间段,并获取样本端口在每个历史时间段内接收到的报文的平均长度,以及该样本端口在各个历史时间段内的队列深度,以及对应的排队时延;且针对同一个样本端口,其在不同历史时间段对应的队列深度可以相同也可以不用。
在确定平均长度、队列深度以及排队时延之间的映射关系时,可以首先确定映射关系基础模型。映射关系基础模型可以根据实际的需要具体设置。例如可以是逻辑回归模型。
在确定了映射关系基础模型后,将平均长度和排队时延作为自变量,将队列深度作为因变量,并分别为各个自变量添加参数。然后使用各个样本端口在各个历史时间段内接收到报文的平均长度、在各个历史时间段内的队列深度、以及在各个历史时间段的排队时延,对映射关系基础模型的参数进行求解。将求解后得到的映射关系基础模型作为平均长度、队列深度以及排队时延之间的映射关系模型,也即报文平均长度、队列深度以及排队时延之间的映射关系。
在需要确定目标端口对应的报文发送队列在未来预设时间段的目标队列深度时,只需要将目标端口在目标历史时间段内接收到的报文的平均长度,以及排队时延阈值作为自变量的值,代入该映射关系模型中,并基于映射关系模型的输出的因变量的值得到目标队列深度。
具体地,排队时延阈值包括:排队时延上限阈值,或者包括排队时延上限阈值和排队时延下限阈值。
针对排队时延阈值包括排队时延上限阈值的情况,在得到映射关系模型输出的因变量的值后:
若映射关系模型的输出的因变量的值为整数,则可以将映射关系模型输出的因变量的值作为目标队列深度。
若映射关系模型输出的因变量的值为小数,为了保证报文在目标端口的排队时延不大于排队时延阈值,在平均长度一定的情况下,排队时延和队列深度成负相关性,因此可以对映射关系模型的输出的因变量的值向下取整,得到目标队列深度。
针对排队时延阈值包括排队时延上限阈值和排队时延下限阈值的情况,得到目标队列深度的过程可以为:
基于平均长度,排队时延上限阈值、以及所述映射关系,确定第一队列深度;并基于平均长度,排队时延下限阈值、以及所述映射关系,确定第二队列深度;
根据第一队列深度以及第二队列深度,确定标端口对应的报文发送队列在未来预设时间段的目标队列深度。
其中,第一队列深度是将平均长度和排队时延上限阈值输入至映射关系模型中得到的因变量的值;第二队列深度模型是将平均长度和排队时延下限阈值输入至映射关系模型中得到的因变量的值。由于当报文的平均长度确定的时候,发送队列的队列深度越大,则对应的排队时延也越大,因此第一队列深度大于第二队列深度。且目标队列深度大于或者等于第二队列深度,且小于或者等于第一队列深度。
基于此,在得到第一队列深度和第二队列深度后,就能够根据第一队列深度和第二队列深度确定目标队列深度。
示例性的,可以去第一队列深度和第二队列深度的平均值作为目标队列深度的值;此时,若第一队列深度和第二队列深度的平均值为小数,可以将第一队列深度和第二队列深度的平均值向上或者向下取整,并将取整后得到的值分别与第一队列深度和第二队列深度进行比对;若取整后得到的值大于或者等于第二队列深度,并小于或者等于第一队列深度,则将该取整后得到的值确定为目标队列深度的值。
示例性的,还可以将第一队列深度和第二队列深度之间任一整数值确定为目标队列深度的值。
在另一实施例中,所确定的目标端口对应的报文发送队列的目标队列深度,可以是目标端口对应的报文发送队列在未来预设时间段的目标队列深度。此处,未来预设时间段可以根据实际的需要进行具体设定,其起始时间可以是当前时间,也可以是当前时间在后的另一时间。在将目标端口对应的发送队列的队列深度调整至目标队列深度时,是将目标端口在该未来预设时间段的发送队列的队列深度调整至目标队列深度。此时,将目标端口对应的发送队列的队列深度调整至目标队列深度,一般是在预设时间段的起始时间执行的。或者在预设时间段的起始时间之前执行,但在预设时间段的起始时间开始生效。
本公开实施例基于获取的目标端口在目标历史时间段内接收到的报文的平均长度、预先确定的排队时延阈值、以及预先确定的映射关系,确定目标端口对应的报文发送队列的目标队列深度,并将目标端口对应的发送队列的队列深度调整至目标队列深度,其中,映射关系是报文平均长度、队列深度以及排队时延之间的映射关系,从而实现了通过对发送队列深度的控制,对报文的排队时延进行调整,从而减小报文长度变化对网络时延的影响,减小网络时延的抖动。
基于同一发明构思,本公开实施例中还提供了与报文发送控制方法对应的报文发送控制装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述报文发送控制方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
实施例二
参照图2所示,为本公开实施例二提供的一种报文发送控制装置的示意图,所述装置包括:获取模块21、确定模块22、调整模块23;其中:
获取模块21,用于获取目标端口在目标历史时间段内接收到的报文的平均长度;
确定模块22,用于基于所述平均长度、预先确定的排队时延阈值、以及预先确定的映射关系,确定所述目标端口对应的报文发送队列的目标队列深度,所述映射关系是报文平均长度、队列深度以及排队时延之间的映射关系;
调整模块23,用于将所述目标端口对应的发送队列的队列深度调整至所述目标队列深度。
本公开实施例基于获取的目标端口在目标历史时间段内接收到的报文的平均长度、预先确定的排队时延阈值、以及预先确定的映射关系,确定目标端口对应的报文发送队列的目标队列深度,并将目标端口对应的发送队列的队列深度调整至目标队列深度,其中,映射关系是报文平均长度、队列深度以及排队时延之间的映射关系,从而实现了通过对发送队列深度的控制,对报文的排队时延进行调整,从而减小报文长度变化对网络时延的影响,减小网络时延的抖动。
一种可能的实施方式中,所述排队时延阈值包括:排队时延上限阈值,或者包括排队时延上限阈值和排队时延下限阈值。
一种可能的实施方式中,针对所述排队时延阈值包括:排队时延上限阈值和排队时延下限阈值的情况,
所述确定模块22,具体用于采用下述方式确定所述目标端口对应的报文发送队列在未来预设时间段的目标队列深度:
基于所述平均长度,所述排队时延上限阈值、以及所述映射关系,确定第一队列深度;以及
基于所述平均长度,所述排队时延下限阈值、以及所述映射关系,确定第二队列深度;
根据所述第一队列深度以及所述第二队列深度,确定所述标端口对应的报文发送队列在未来预设时间段的目标队列深度。
一种可能的实施方式中,还包括:映射关系确定模块24,用于采用下述方式确定所述平均长度、队列深度以及排队时延之间的映射关系:
获取多个样本端口在多个历史时间段内接收到报文的平均长度、在各个所述历史时间段内的队列深度、以及在各个所述历史时间段的排队时延;所述样本端口与所述目标端口的端口类型相同;
根据多个样本端口在各个所述历史时间段内接收到报文的平均长度、在各个所述历史时间段内的队列深度、以及在各个所述历史时间段的排队时延,确定所述平均长度、队列深度以及排队时延之间的映射关系。
一种可能的实施方式中,所述确定模块22,具体用于基于所述平均长度、预先确定的所述排队时延阈值、以及预先确定的所述映射关系,确定所述目标端口对应的报文发送队列在未来预设时间段的目标队列深度;
所述调整模块23,具体用于将所述目标端口在所述未来预设时间段的发送队列的队列深度调整至所述目标队列深度。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
实施例三
本公开实施例三还提供了一种计算机设备300,如图3所示,为本公开实施例提供的计算机设备300结构示意图,包括:
处理器31、存储器32、和总线33;存储器32用于存储执行指令,包括内存321和外部存储器322;这里的内存321也称内存储器,用于暂时存放处理器31中的运算数据,以及与硬盘等外部存储器322交换的数据,处理器31通过内存321与外部存储器322进行数据交换,当所述用户设备30运行时,所述处理器31与所述存储器32之间通过总线33通信,使得所述处理器31在用户态执行以下指令:
获取目标端口在目标历史时间段内接收到的报文的平均长度;
基于所述平均长度、预先确定的排队时延阈值、以及预先确定的映射关系,确定所述目标端口对应的报文发送队列的目标队列深度,所述映射关系是报文平均长度、队列深度以及排队时延之间的映射关系;
将所述目标端口对应的发送队列的队列深度调整至所述目标队列深度。
一种可能的实施方式中,处理器31执行的指令中,所述排队时延阈值包括:排队时延上限阈值,或者包括排队时延上限阈值和排队时延下限阈值。
一种可能的实施方式中,处理器31执行的指令中,针对所述排队时延阈值包括:排队时延上限阈值和排队时延下限阈值的情况,
所述基于所述平均长度,预先确定的排队时延阈值、以及所述映射关系,确定所述目标端口对应的报文发送队列在未来预设时间段的目标队列深度,包括:
基于所述平均长度,所述排队时延上限阈值、以及所述映射关系,确定第一队列深度;以及
基于所述平均长度,所述排队时延下限阈值、以及所述映射关系,确定第二队列深度;
根据所述第一队列深度以及所述第二队列深度,确定所述标端口对应的报文发送队列在未来预设时间段的目标队列深度。
一种可能的实施方式中,处理器31执行的指令中,采用下述方式确定所述平均长度、队列深度以及排队时延之间的映射关系:
获取多个样本端口在多个历史时间段内接收到报文的平均长度、在各个所述历史时间段内的队列深度、以及在各个所述历史时间段的排队时延;所述样本端口与所述目标端口的端口类型相同;
根据多个样本端口在各个所述历史时间段内接收到报文的平均长度、在各个所述历史时间段内的队列深度、以及在各个所述历史时间段的排队时延,确定所述平均长度、队列深度以及排队时延之间的映射关系。
一种可能的实施方式中,处理器31执行的指令中,所述基于所述平均长度、预先确定的排队时延阈值、以及预先确定的映射关系,确定所述目标端口对应的报文发送队列的目标队列深度,包括:
基于所述平均长度、预先确定的所述排队时延阈值、以及预先确定的所述映射关系,确定所述目标端口对应的报文发送队列在未来预设时间段的目标队列深度;
所述将所述目标端口对应的发送队列的队列深度调整至所述目标队列深度,包括:
将所述目标端口在所述未来预设时间段的发送队列的队列深度调整至所述目标队列深度。
本公开实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器31运行时执行上述报文发送控制方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述报文发送控制方法,从而解决现有技术中存在的报文长度发生变化导致网络设备在发送报文时的网络时延也会发生抖动的问题,进而达到减小报文长度变化对网络时延的影响,降低网络时延的抖动的效果。
本公开实施例所提供的报文发送控制方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
Claims (12)
1.一种报文发送控制方法,其特征在于,该报文发送控制方法应用于报文发送设备;该报文发送控制方法包括:
获取目标端口在目标历史时间段内接收到的报文的平均长度;
基于所述平均长度、预先确定的排队时延阈值、以及预先确定的映射关系,确定所述目标端口对应的报文发送队列的目标队列深度,所述映射关系是报文平均长度、队列深度以及排队时延之间的映射关系;
将所述目标端口对应的发送队列的队列深度调整至所述目标队列深度。
2.根据权利要求1所述的报文发送控制方法,其特征在于,所述排队时延阈值包括:排队时延上限阈值,或者包括排队时延上限阈值和排队时延下限阈值。
3.根据权利要求2所述的报文发送控制方法,其特征在于,针对所述排队时延阈值包括:排队时延上限阈值和排队时延下限阈值的情况,
所述基于所述平均长度,预先确定的排队时延阈值、以及所述映射关系,确定所述目标端口对应的报文发送队列在未来预设时间段的目标队列深度,包括:
基于所述平均长度,所述排队时延上限阈值、以及所述映射关系,确定第一队列深度;以及
基于所述平均长度,所述排队时延下限阈值、以及所述映射关系,确定第二队列深度;
根据所述第一队列深度以及所述第二队列深度,确定所述目标端口对应的报文发送队列在未来预设时间段的目标队列深度。
4.根据权利要求1所述的报文发送控制方法,其特征在于,采用下述方式确定所述映射关系:
获取多个样本端口在多个历史时间段内接收到报文的平均长度、在各个所述历史时间段内的队列深度、以及在各个所述历史时间段的排队时延;所述样本端口与所述目标端口的端口类型相同;
根据多个样本端口在各个所述历史时间段内接收到报文的平均长度、在各个所述历史时间段内的队列深度、以及在各个所述历史时间段的排队时延,确定所述平均长度、队列深度以及排队时延之间的所述映射关系。
5.根据权利要求1所述的报文发送控制方法,其特征在于,所述基于所述平均长度、预先确定的排队时延阈值、以及预先确定的映射关系,确定所述目标端口对应的报文发送队列的目标队列深度,包括:
基于所述平均长度、预先确定的所述排队时延阈值、以及预先确定的所述映射关系,确定所述目标端口对应的报文发送队列在未来预设时间段的目标队列深度;
所述将所述目标端口对应的发送队列的队列深度调整至所述目标队列深度,包括:
将所述目标端口在所述未来预设时间段的发送队列的队列深度调整至所述目标队列深度。
6.一种报文发送控制装置,其特征在于,该报文发送控制装置应用于报文发送设备;该报文发送控制装置包括:
获取模块,用于获取目标端口在目标历史时间段内接收到的报文的平均长度;
确定模块,用于基于所述平均长度、预先确定的排队时延阈值、以及预先确定的映射关系,确定所述目标端口对应的报文发送队列的目标队列深度,所述映射关系是报文平均长度、队列深度以及排队时延之间的映射关系;
调整模块,用于将所述目标端口对应的发送队列的队列深度调整至所述目标队列深度。
7.根据权利要求6所述的报文发送控制装置,其特征在于,所述排队时延阈值包括:排队时延上限阈值,或者包括排队时延上限阈值和排队时延下限阈值。
8.根据权利要求7所述的报文发送控制装置,其特征在于,针对所述排队时延阈值包括:排队时延上限阈值和排队时延下限阈值的情况,
所述确定模块,具体用于采用下述方式确定所述目标端口对应的报文发送队列在未来预设时间段的目标队列深度:
基于所述平均长度,所述排队时延上限阈值、以及所述映射关系,确定第一队列深度;以及
基于所述平均长度,所述排队时延下限阈值、以及所述映射关系,确定第二队列深度;
根据所述第一队列深度以及所述第二队列深度,确定所述目标端口对应的报文发送队列在未来预设时间段的目标队列深度。
9.根据权利要求7所述的报文发送控制装置,其特征在于,还包括:映射关系确定模块,用于采用下述方式确定所述平均长度、队列深度以及排队时延之间的所述映射关系:
获取多个样本端口在多个历史时间段内接收到报文的平均长度、在各个所述历史时间段内的队列深度、以及在各个所述历史时间段的排队时延;所述样本端口与所述目标端口的端口类型相同;
根据多个样本端口在各个所述历史时间段内接收到报文的平均长度、在各个所述历史时间段内的队列深度、以及在各个所述历史时间段的排队时延,确定所述平均长度、队列深度以及排队时延之间的所述映射关系。
10.根据权利要求6所述的报文发送控制装置,其特征在于,所述确定模块,具体用于基于所述平均长度、预先确定的所述排队时延阈值、以及预先确定的所述映射关系,确定所述目标端口对应的报文发送队列在未来预设时间段的目标队列深度;
所述调整模块,具体用于将所述目标端口在所述未来预设时间段的发送队列的队列深度调整至所述目标队列深度。
11.一种计算机设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1至5任一所述报文发送控制方法的步骤。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至5任一所述报文发送控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910338567.2A CN110099013B (zh) | 2019-04-25 | 2019-04-25 | 一种报文发送控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910338567.2A CN110099013B (zh) | 2019-04-25 | 2019-04-25 | 一种报文发送控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110099013A CN110099013A (zh) | 2019-08-06 |
CN110099013B true CN110099013B (zh) | 2022-08-09 |
Family
ID=67445836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910338567.2A Active CN110099013B (zh) | 2019-04-25 | 2019-04-25 | 一种报文发送控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110099013B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230254263A1 (en) * | 2020-11-27 | 2023-08-10 | New H3C Technologies Co., Ltd. | Packet forwarding method, packet forwarding apparatus and electronic device |
CN113595814A (zh) * | 2021-07-06 | 2021-11-02 | 深圳Tcl新技术有限公司 | 消息延迟检测方法、装置、电子设备及存储介质 |
CN113676419A (zh) * | 2021-09-03 | 2021-11-19 | 中国人民银行清算总中心 | 一种消息传输方法及装置 |
CN114567679B (zh) * | 2022-03-25 | 2024-04-02 | 阿里巴巴(中国)有限公司 | 数据传输方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6738386B1 (en) * | 2000-05-11 | 2004-05-18 | Agere Systems Inc. | Controlled latency with dynamically limited queue depth based on history and latency estimation |
CN104426796A (zh) * | 2013-08-21 | 2015-03-18 | 中兴通讯股份有限公司 | 一种路由器的拥塞避免方法及装置 |
CN108540402A (zh) * | 2017-03-02 | 2018-09-14 | 华为技术有限公司 | 一种优化队列时延的方法和设备 |
CN109274550A (zh) * | 2018-09-07 | 2019-01-25 | 电信科学技术第五研究所有限公司 | 一种iSCSI自适应IO队列深度匹配方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8571048B2 (en) * | 2007-04-30 | 2013-10-29 | Hewlett-Packard Development Company, L.P. | Dynamic memory queue depth algorithm |
-
2019
- 2019-04-25 CN CN201910338567.2A patent/CN110099013B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6738386B1 (en) * | 2000-05-11 | 2004-05-18 | Agere Systems Inc. | Controlled latency with dynamically limited queue depth based on history and latency estimation |
CN104426796A (zh) * | 2013-08-21 | 2015-03-18 | 中兴通讯股份有限公司 | 一种路由器的拥塞避免方法及装置 |
CN108540402A (zh) * | 2017-03-02 | 2018-09-14 | 华为技术有限公司 | 一种优化队列时延的方法和设备 |
CN109274550A (zh) * | 2018-09-07 | 2019-01-25 | 电信科学技术第五研究所有限公司 | 一种iSCSI自适应IO队列深度匹配方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110099013A (zh) | 2019-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110099013B (zh) | 一种报文发送控制方法及装置 | |
US20220394316A1 (en) | Message sending method and device, readable medium and electronic device | |
KR101449352B1 (ko) | 데이터 전송 오버헤드 감소 방법 및 장치 | |
Shu et al. | eTime: Energy-efficient transmission between cloud and mobile devices | |
EP4258611A2 (en) | Message sending method, network node and system | |
CN108028781B (zh) | 用于网络往返时间估计的技术 | |
EP3414952B1 (en) | Power-aware network communication | |
CN112866134A (zh) | 发送报文的方法、第一网络设备及计算机可读存储介质 | |
KR101989249B1 (ko) | 이동 단말기의 오프로딩 방법 및 그 이동 단말기 | |
CN110780986B (zh) | 一种基于移动边缘计算的物联网任务调度方法及*** | |
CN113572655B (zh) | 无丢失网络的拥塞探测方法及*** | |
US10972442B1 (en) | Distributed predictive packet quantity threshold reporting | |
KR20120107948A (ko) | 데이터 패킷의 우선순위 레벨을 결정하는 방법, 데이터 패킷 전송 방법, 데이터 패킷 수신 방법, 데이터 패킷의 우선순위 레벨을 결정하는 모듈, 휴대용 전자 장치 및 시스템 | |
CN111385219B (zh) | 借用硬件中断实现高性能高精度软件tcp限速的方法 | |
CN105339915A (zh) | 推送型信息发送设备、推送型信息发送方法以及程序 | |
Winstein | Transport architectures for an evolving Internet | |
CN113747554A (zh) | 边缘计算网络任务调度与资源分配方法和装置 | |
KR101911296B1 (ko) | Mil-std-1553b 통신 시스템 및 그의 버스 제어기 운용 최적화 방법 | |
JP6805713B2 (ja) | 受信トラヒックの高速化装置、高速化方法、および高速化プログラム | |
CN112579316A (zh) | 用于信息处理的方法、设备和计算机程序产品 | |
CN114338839B (zh) | 基于tcp的数据传输方法、装置、电子设备及存储介质 | |
CN114071471A (zh) | 低速率小区的确定方法、装置及计算设备 | |
US10749781B2 (en) | Setting device, setting method, recording medium to which setting program is recorded, communication system, client device, and server device | |
CN117793006A (zh) | 一种流量调度***、方法和电子设备 | |
Lindner et al. | Alternative Best Effort (ABE) for Service Differentiation: Trading Loss Versus Delay |
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 |