CN113709056B - 内存流量控制方法、装置、存储介质及电子设备 - Google Patents

内存流量控制方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN113709056B
CN113709056B CN202110987291.8A CN202110987291A CN113709056B CN 113709056 B CN113709056 B CN 113709056B CN 202110987291 A CN202110987291 A CN 202110987291A CN 113709056 B CN113709056 B CN 113709056B
Authority
CN
China
Prior art keywords
total
time
virtual channel
memory
flow
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110987291.8A
Other languages
English (en)
Other versions
CN113709056A (zh
Inventor
朱敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuxi Muchuang Integrated Circuit Design Co ltd
Original Assignee
Wuxi Muchuang Integrated Circuit Design Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuxi Muchuang Integrated Circuit Design Co ltd filed Critical Wuxi Muchuang Integrated Circuit Design Co ltd
Priority to CN202110987291.8A priority Critical patent/CN113709056B/zh
Publication of CN113709056A publication Critical patent/CN113709056A/zh
Application granted granted Critical
Publication of CN113709056B publication Critical patent/CN113709056B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/27Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

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

Abstract

本申请涉及计算机技术领域,具体涉及一种内存流量控制方法、装置、存储介质及电子设备,包括:从当前时刻起对每个虚拟通道按照预设时间窗口获取每个时间窗口的流量值;结合预设时间窗口确定每个时间窗口的实时流量值;计算每个虚拟通道在所有时间窗口总时间内的总流量值;计算所有虚拟通道在所有个时间窗口总时间内的总流量值;再结合预先确认的内存总量和每个虚拟通道的内存量对每个虚拟通道进行条件判定;将通过判定的虚拟通道内的报文丢弃,继续传输下一个报文。通过条件式判定是否丢弃虚拟通道内的报文,不仅避免了因流量拥塞造成的丢包,还能够及时空出虚拟通道,继续进行数据传输,避免了流量通道的无效占用,提高了数据传输效率。

Description

内存流量控制方法、装置、存储介质及电子设备
技术领域
本申请涉及计算机技术领域,特别地涉及一种内存流量控制方法、装置、存储介质及电子设备。
背景技术
内存流量控制,是一种限制数据发送速率的方法,由于内存输入输出数据的流量速率有限,当输入流量数据超过内存能够接收数据的最大速率时,就会发生丢包,导致数据丢失的同时还会造成网络资源的浪费。
目前市场上采用的优先级流量控制(Priority-based Flow Control,PFC)在IEEE:802.1Qbb标准文档中定义,对传统流控的暂停机制一种增强。与传统的流控机制相比,当出现拥塞时传统流控会阻止一条链路上的所有流量。而PFC允许在一条以太网链路上创建8个虚拟通道,并为每条虚拟通道指定一个IEEE 802.1P优先等级,允许单独暂停和重启其中任意一条虚拟通道,同时允许其它虚拟通道的流量无中断通过。虽然该方法使网络能够为单个虚拟链路创建无丢包类别的服务,但其控制虚拟通道单独暂停发送报文的同时,会导致被暂停的虚拟通道的处于被占用状态但却又没有有效流量产生,这就造成了内存流量的浪费。
发明内容
针对上述问题,本申请提供一种内存流量控制方法、装置、存储介质及电子设备,解决了相关技术中控制虚拟通道单独暂停发送报文的同时,会导致被暂停的虚拟通道的处于被占用状态但却又没有有效流量产生,造成了内存流量浪费的技术问题。
第一方面,本申请提供了一种内存流量控制方法,所述方法包括:
从当前时刻起,对每个虚拟通道的历史流量数据按照预设时间窗口获取j+1个时间窗口的每个时间窗口的流量值,其中,j为大于或等于0的整数;
根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值;
为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值;
根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值;
根据所述每个虚拟通道在j+1个时间窗口总时间内的总流量值、所述所有虚拟通道在j+1个时间窗口总时间内的总流量值、预先确认的内存总量和预先计算的每个虚拟通道分配的内存量对每个虚拟通道进行条件判定;
将条件判定通过的虚拟通道内的报文丢弃,继续传输下一个报文。
在一些实施例中,预先确认的内存总量和每个虚拟通道分配的内存量的获取过程,包括:
确定内存总量Mall
将所述内存的流量通道划分为8个虚拟通道Pi,其中i∈[0..7];
根据所述内存总量Mall、所述内存的流量经验值Tall-exp和所述8个虚拟通道的流量经验值Ti-exp计算每个虚拟通道的内存量mi
其中,所述流量经验值为根据历史经验获得的流量的平均值。
在一些实施例中,所述根据所述内存总量Mall、所述内存的流量经验值Tall-exp和所述8个虚拟通道的流量经验值Ti-exp计算每个虚拟通道的内存量mi,包括:
根据公式
Figure BDA0003231177680000021
计算每个虚拟通道的内存量mi
在一些实施例中,所述根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值,包括:
根据公式
Figure BDA0003231177680000022
计算每个时间窗口的实时流量值;
其中Ti为时间窗口的实时流量值,单位为字节/秒,TWi为虚拟通道Pi在一个时间窗口内的总流量值,单位为字节,Wi为预设时间窗口,单位为秒。
在一些实施例中,所述为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值,包括:
为同一虚拟通道每个时间窗口赋予流量权重
Figure BDA0003231177680000031
根据公式
Figure BDA0003231177680000032
计算虚拟通道Pi在j+1个时间窗口总时间内的总流量值TijWij
其中,Wij为第i个虚拟通道Pi的第j个时间窗口,单位为秒,Tij为第i个虚拟通道Pi的第j个时间窗口Wij的实时流量,单位为字节/秒。
在一些实施例中,所述根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值,包括:
根据公式
Figure BDA0003231177680000033
计算所有虚拟通道在j+1个时间窗口总时间内的总流量值TWall,单位为字节。
在一些实施例中,所述根据所述每个虚拟通道在j+1个时间窗口总时间内的总流量值、所述所有虚拟通道在j+1个时间窗口总时间内的总流量值、预先确认的内存总量和预先计算的每个虚拟通道分配的内存量对每个虚拟通道进行条件判定,包括:
根据条件式
Figure BDA0003231177680000034
对每个虚拟通道进行条件判定;
若虚拟通道Pi将所述条件式中的各项数值代入后,所述条件式成立,则判定所述虚拟通道Pi通过条件判定;
若虚拟通道Pi将所述条件式中的各项数值代入后,所述条件式不成立,则判定所述虚拟通道Pi未通过条件判定。
第二方面,一种内存流量控制装置,所述装置包括:
获取单元,用于从当前时刻起,对每个虚拟通道的历史流量数据按照预设时间窗口获取j+1个时间窗口的每个时间窗口的流量值,其中,j为大于或等于0的整数;
确定单元,用于根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值;
求和单元,用于为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值;
计算单元,用于根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值;
判定单元,用于根据所述每个虚拟通道在j+1个时间窗口总时间内的总流量值、所述所有虚拟通道在j+1个时间窗口总时间内的总流量值、预先确认的内存总量和预先计算的每个虚拟通道分配的内存量对每个虚拟通道进行条件判定;
传输单元,用于将条件判定通过的虚拟通道内的报文丢弃,继续传输下一个报文。
第三方面,一种存储介质,该存储介质存储的计算机程序,可被一个或多个处理器执行,可用来实现如上述第一方面所述的内存流量控制方法。
第四方面,一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,所述存储器和所述处理器之间互相通信连接,该计算机程序被所述处理器执行时,执行如上述第一方面所述的内存流量控制方法。
本申请提供的一种内存流量控制方法、装置、存储介质及电子设备,包括:从当前时刻起,对每个虚拟通道的历史流量数据按照预设时间窗口获取j+1个时间窗口的每个时间窗口的流量值,其中,j为大于或等于0的整数;根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值;为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值;根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值;根据所述每个虚拟通道在j+1个时间窗口总时间内的总流量值、所述所有虚拟通道在j+1个时间窗口总时间内的总流量值、预先确认的内存总量和预先计算的每个虚拟通道分配的内存量对每个虚拟通道进行条件判定;将条件判定通过的虚拟通道内的报文丢弃,继续传输下一个报文。通过条件式判定是否丢弃虚拟通道内的报文,不仅避免了因流量拥塞造成的丢包,还能够及时空出虚拟通道,继续进行数据传输,避免了流量通道的无效占用,提高了数据传输效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种内存流量控制方法的流程示意图;
图2为本申请实施例提供的历史流量中的一个时间窗口示意图;
图3为本申请实施例提供的历史流量中的j+1个时间窗口示意图;
图4为本申请实施例提供的一种内存流量控制装置的结构示意图;
图5为本申请实施例提供的一种电子设备的连接框图。
具体实施方式
以下将结合附图及实施例来详细说明本申请的实施方式,借此对本申请如何应用技术手段来解决技术问题,并达到相应技术效果的实现过程能充分理解并据以实施。本申请实施例以及实施例中的各个特征,在不相冲突前提下可以相互结合,所形成的技术方案均在本申请的保护范围之内。
由背景技术可知,目前市场上采用的优先级流量控制(Priority-based FlowControl,PFC)在IEEE:802.1Qbb标准文档中定义,对传统流控的暂停机制一种增强。与传统的流控机制相比,当出现拥塞时传统流控会阻止一条链路上的所有流量。而PFC允许在一条以太网链路上创建8个虚拟通道,并为每条虚拟通道指定一个IEEE 802.1P优先等级,允许单独暂停和重启其中任意一条虚拟通道,同时允许其它虚拟通道的流量无中断通过。虽然该方法使网络能够为单个虚拟链路创建无丢包类别的服务,但其控制虚拟通道单独暂停发送报文的同时,会导致被暂停的虚拟通道的处于被占用状态但却又没有有效流量产生,这就造成了内存流量的浪费。
有鉴于此,本申请提供一种内存流量控制方法、装置、存储介质及电子设备,解决了相关技术中控制虚拟通道单独暂停发送报文的同时,会导致被暂停的虚拟通道的处于被占用状态但却又没有有效流量产生,造成了内存流量浪费的技术问题。
实施例一
图1为本申请实施例提供的一种内存流量控制方法的流程示意图,如图1所示,本方法包括:
S101、从当前时刻起,对每个虚拟通道的历史流量数据按照预设时间窗口获取j+1个时间窗口的每个时间窗口的流量值;
在步骤S101中,j为大于或等于0的整数;
S102、根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值;
S103、为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值;
S104、根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值;
S105、根据所述每个虚拟通道在j+1个时间窗口总时间内的总流量值、所述所有虚拟通道在j+1个时间窗口总时间内的总流量值、预先确认的内存总量和预先计算的每个虚拟通道分配的内存量对每个虚拟通道进行条件判定;
S106、将条件判定通过的虚拟通道内的报文丢弃,继续传输下一个报文。
需要说明的是,本申请中丢弃的报文并不是丢包,而是进行主动丢弃,丢弃的报文会被记录,并通过其他机制得到保护,不会丢失数据,例如将丢弃的报文重新加入队列进行数据传输,由于8个虚拟通道中每个通道能够承载的数据流大小不同,当匹配到能够传输该丢弃报文的虚拟通道时,即可完成该报文的正常传输。
进一步的,本申请通过条件式判定是否丢弃虚拟通道内的报文,不仅避免了因流量拥塞造成的丢包,还能够及时空出虚拟通道,继续进行数据传输,避免了流量通道的无效占用,提高了数据传输效率。
在一些实施例中,预先确认的内存总量和每个虚拟通道分配的内存量的获取过程,包括:
确定内存总量Mall
将所述内存的流量通道划分为8个虚拟通道Pi,其中i∈[0..7];
根据所述内存总量Mall、所述内存的流量经验值Tall-exp和所述8个虚拟通道的流量经验值Ti-exp计算每个虚拟通道的内存量mi
其中,所述流量经验值为根据历史经验获得的流量的平均值。
在一些实施例中,所述根据所述内存总量Mall、所述内存的流量经验值Tall-exp和所述8个虚拟通道的流量经验值Ti-exp计算每个虚拟通道的内存量mi,包括:
根据公式
Figure BDA0003231177680000071
计算每个虚拟通道的内存量mi
需要说明的是,内存总量是按照每个虚拟通道的流量经验值在内存的流量经验值中的占比得到的,即比例为
Figure BDA0003231177680000072
经过变换,即可得到公式
Figure BDA0003231177680000073
还需要说明的是,对于x∈[a..b],其中a,b均为整数,具体表示a<=x<=b,且x为整数。
在一些实施例中,所述根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值,包括:
根据公式
Figure BDA0003231177680000074
计算每个时间窗口的实时流量值;
其中Ti为时间窗口的实时流量值,单位为字节/秒,TWi为虚拟通道Pi在一个时间窗口内的总流量值,单位为字节,Wi为预设时间窗口,单位为秒。
需要说明的是,如图2所示,为历史流量中的一个时间窗口示意图。实际操作中,需要事先确定每个通道的内存配置,即Mall和mi为定值,i∈[0..7]。而Tall和Ti值在实时变化,i∈[0..7],其中,Tall为进入内存的总流量值,单位为字节。
因此,我们无法获取准确的实时流量瞬时值,只能通过度量过去一个时间窗口的内的总流量值,进行计算得到,即时间窗口为时间,在时间窗口时间内的流量值可以在历史流量测量记录中得到,将流量值除以时间,即可得到平均流量值。又因为时间窗口的时间间隔值很小,所以该平均流量又可以近似看作该窗口的实时流量。
在一些实施例中,所述为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值,包括:
为同一虚拟通道每个时间窗口赋予流量权重
Figure BDA0003231177680000081
根据公式
Figure BDA0003231177680000082
计算虚拟通道Pi在j+1个时间窗口总时间内的总流量值TijWij
其中,Wij为第i个虚拟通道Pi的第j个时间窗口,单位为秒,Tij为第i个虚拟通道Pi的第j个时间窗口Wij的实时流量,单位为字节/秒。
需要说明的是,如图3所示,为历史流量中的j+1个时间窗口示意图。由于图2中的一个时间窗口,只能反映最近一段时间的流量情况,并没有考虑历史的相关流量也可以从一定程度反映该通道的流量情况。因为我们采用加权计算流量窗口的方法,将更多的历史流量加入实时流量计算,既考虑了历史流量的作用,又通过加权为其赋于不同的权重,能够更准确的计算实时流量。
其中,虚拟通道Pi在j+1个时间窗口总时间内的总流量值即为虚拟通道Pi在过去所有的时间窗口总时间内的总流量值,该流量值可以通过历史流量测量记录中得到。
在一些实施例中,所述根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值,包括:
根据公式
Figure BDA0003231177680000083
计算所有虚拟通道在j+1个时间窗口总时间内的总流量值TWall,单位为字节。
需要说明的是,在得到每个虚拟通道在j+1个时间窗口总时间内的总流量值TijWij后,将8个虚拟通道的总流量值求和,最终得到所有虚拟通道在j+1个时间窗口总时间内的总流量值TWall
在一些实施例中,所述根据所述每个虚拟通道在j+1个时间窗口总时间内的总流量值、所述所有虚拟通道在j+1个时间窗口总时间内的总流量值、预先确认的内存总量和预先计算的每个虚拟通道分配的内存量对每个虚拟通道进行条件判定,包括:
根据条件式
Figure BDA0003231177680000084
对每个虚拟通道进行条件判定;
若虚拟通道Pi将所述条件式中的各项数值代入后,所述条件式成立,则判定所述虚拟通道Pi通过条件判定;
若虚拟通道Pi将所述条件式中的各项数值代入后,所述条件式不成立,则判定所述虚拟通道Pi未通过条件判定。
需要说明的是,之前我们已经得知,内存总量是按照每个虚拟通道的流量经验值在内存的流量经验值中的占比得到的,而流量经验值是根据历史经验获得的内存和虚拟通道的流量值,现在我们已经得到实时的内存和虚拟通道的流量值,即每个虚拟通道在j+1个时间窗口总时间内的总流量值TijWij和所有虚拟通道在j+1个时间窗口总时间内的总流量值TWall,同理,按照正常的数据传输工作状态下,虚拟通道的实时流量值也符合比例公式
Figure BDA0003231177680000091
因此可以得到公式
Figure BDA0003231177680000092
而一旦虚拟通道在j+1个时间窗口总时间内的总流量值TijWij超过了按照比例分配的虚拟通道的最大承载流量值时,即
Figure BDA0003231177680000093
则会发生流量拥塞,造成丢包,为了避免丢包发生,同时避免虚拟通道被无效占用,在判定虚拟通道在j+1个时间窗口总时间内的总流量值TijWij符合条件式
Figure BDA0003231177680000094
时,主动丢弃正在传输的报文,继续传输下一个报文。
综上所述,本申请实施例提供了一种内存流量控制方法,包括:从当前时刻起,对每个虚拟通道的历史流量数据按照预设时间窗口获取j+1个时间窗口的每个时间窗口的流量值,其中,j为大于或等于0的整数;根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值;为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值;根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值;根据所述每个虚拟通道在j+1个时间窗口总时间内的总流量值、所述所有虚拟通道在j+1个时间窗口总时间内的总流量值、预先确认的内存总量和预先计算的每个虚拟通道分配的内存量对每个虚拟通道进行条件判定;将条件判定通过的虚拟通道内的报文丢弃,继续传输下一个报文。通过条件式判定是否丢弃虚拟通道内的报文,不仅避免了因流量拥塞造成的丢包,还能够及时空出虚拟通道,继续进行数据传输,避免了流量通道的无效占用,提高了数据传输效率。
实施例二
基于上述本发明实施例公开的内存流量控制方法,图4具体公开了应用该内存流量控制方法的内存流量控制装置。
如图4所示,本发明实施例公开了一种内存流量控制装置,该装置包括:
获取单元401,用于从当前时刻起,对每个虚拟通道的历史流量数据按照预设时间窗口获取j+1个时间窗口的每个时间窗口的流量值,其中,j为大于或等于0的整数;
确定单元402,用于根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值;
求和单元403,用于为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值;
计算单元404,用于根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值;
判定单元405,用于根据所述每个虚拟通道在j+1个时间窗口总时间内的总流量值、所述所有虚拟通道在j+1个时间窗口总时间内的总流量值、预先确认的内存总量和预先计算的每个虚拟通道分配的内存量对每个虚拟通道进行条件判定;
传输单元406,用于将条件判定通过的虚拟通道内的报文丢弃,继续传输下一个报文。
以上本发明实施例公开的内存流量控制装置中的数据获取单元401、确定单元402、求和单元403、计算单元404、判定单元405和传输单元406的具体工作过程,可参见本发明上述实施例公开的内存流量控制方法中的对应内容,这里不再进行赘述。
综上所述,本申请实施例提供了一种内存流量控制装置,包括:从当前时刻起,对每个虚拟通道的历史流量数据按照预设时间窗口获取j+1个时间窗口的每个时间窗口的流量值,其中,j为大于或等于0的整数;根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值;为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值;根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值;根据所述每个虚拟通道在j+1个时间窗口总时间内的总流量值、所述所有虚拟通道在j+1个时间窗口总时间内的总流量值、预先确认的内存总量和预先计算的每个虚拟通道分配的内存量对每个虚拟通道进行条件判定;将条件判定通过的虚拟通道内的报文丢弃,继续传输下一个报文。通过条件式判定是否丢弃虚拟通道内的报文,不仅避免了因流量拥塞造成的丢包,还能够及时空出虚拟通道,继续进行数据传输,避免了流量通道的无效占用,提高了数据传输效率。
实施例三
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,该计算机程序被处理器执行时可以实现如实施例一的方法步骤,本实施例在此不再重复赘述。
实施例四
图5为本申请实施例提供的一种电子设备500的连接框图,如图5所示,该电子设备500可以包括:处理器501,存储器502,多媒体组件503,输入/输出(I/O)接口504,以及通信组件505。
其中,处理器501用于执行如实施例一中的内存流量控制方法中的全部或部分步骤。存储器502用于存储各种类型的数据,这些数据例如可以包括电子设备中的任何应用程序或方法的指令,以及应用程序相关的数据。
处理器501可以是专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(Digital Signal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable LogicDevice,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例一中的内存流量控制方法。
存储器502可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
多媒体组件503可以包括屏幕和音频组件,该屏幕可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或通过通信组件发送。音频组件还包括至少一个扬声器,用于输出音频信号。
I/O接口504为处理器501和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。
通信组件505用于该电子设备500与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件505可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
综上,本申请提供的一种内存流量控制方法、装置、存储介质及电子设备,该方法包括:从当前时刻起,对每个虚拟通道的历史流量数据按照预设时间窗口获取j+1个时间窗口的每个时间窗口的流量值,其中,j为大于或等于0的整数;根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值;为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值;根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值;根据所述每个虚拟通道在j+1个时间窗口总时间内的总流量值、所述所有虚拟通道在j+1个时间窗口总时间内的总流量值、预先确认的内存总量和预先计算的每个虚拟通道分配的内存量对每个虚拟通道进行条件判定;将条件判定通过的虚拟通道内的报文丢弃,继续传输下一个报文。通过条件式判定是否丢弃虚拟通道内的报文,不仅避免了因流量拥塞造成的丢包,还能够及时空出虚拟通道,继续进行数据传输,避免了流量通道的无效占用,提高了数据传输效率。
在本申请实施例所提供的几个实施例中,应该理解到,所揭露的方法,也可以通过其它的方式实现。以上所描述的方法实施例仅仅是示意性的。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然本申请所揭露的实施方式如上,但上述的内容只是为了便于理解本申请而采用的实施方式,并非用以限定本申请。任何本申请所属技术领域内的技术人员,在不脱离本申请所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本申请的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (9)

1.一种内存流量控制方法,其特征在于,所述方法包括:
从当前时刻起,对每个虚拟通道的历史流量数据按照预设时间窗口获取j+1个时间窗口的每个时间窗口的流量值,其中,j为大于或等于0的整数;
根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值;
为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值;
根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值;
根据所述每个虚拟通道在j+1个时间窗口总时间内的总流量值、所述所有虚拟通道在j+1个时间窗口总时间内的总流量值、预先确认的内存总量和预先计算的每个虚拟通道分配的内存量对每个虚拟通道进行条件判定,若以下三个变量:虚拟通道Pi分配的内存量在所述内存总量中的占比,即
Figure FDA0003776498240000011
所有虚拟通道在j+1个时间窗口总时间内的总流量值,即TWall;所述虚拟通道Pi在j+1个时间窗口总时间内的总流量值,即TijWij;满足条件式:
Figure FDA0003776498240000012
则判定所述虚拟通道Pi通过条件判定;
将条件判定通过的虚拟通道内的报文丢弃,继续传输下一个报文。
2.根据权利要求1所述的方法,其特征在于,预先确认的内存总量和每个虚拟通道分配的内存量的获取过程,包括:
确定内存总量Mall
将所述内存的流量通道划分为8个虚拟通道Pi,其中i∈[0..7];
根据所述内存总量Mall、所述内存的流量经验值Tall-exp和所述8个虚拟通道的流量经验值Ti-exp计算每个虚拟通道的内存量mi
其中,所述流量经验值为根据历史经验获得的流量的平均值。
3.根据权利要求2所述的方法,其特征在于,所述根据所述内存总量Mall、所述内存的流量经验值Tall-exp和所述8个虚拟通道的流量经验值Ti-exp计算每个虚拟通道的内存量mi,包括:
根据公式
Figure FDA0003776498240000021
计算每个虚拟通道的内存量mi
4.根据权利要求1所述的方法,其特征在于,所述根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值,包括:
根据公式
Figure FDA0003776498240000022
计算每个时间窗口的实时流量值;
其中Ti为时间窗口的实时流量值,单位为字节/秒,TWi为虚拟通道Pi在一个时间窗口内的总流量值,单位为字节,Wi为预设时间窗口,单位为秒。
5.根据权利要求2所述的方法,其特征在于,所述为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值,包括:
为同一虚拟通道每个时间窗口赋予流量权重
Figure FDA0003776498240000023
根据公式
Figure FDA0003776498240000024
计算虚拟通道Pi在j+1个时间窗口总时间内的总流量值TijWij
其中,Wij为第i个虚拟通道Pi的第j个时间窗口,单位为秒,Tij为第i个虚拟通道Pi的第j个时间窗口Wij的实时流量,单位为字节/秒。
6.根据权利要求5所述的方法,其特征在于,所述根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值,包括:
根据公式
Figure FDA0003776498240000025
计算所有虚拟通道在j+1个时间窗口总时间内的总流量值TWall,单位为字节。
7.一种内存流量控制装置,其特征在于,所述装置包括:
获取单元,用于从当前时刻起,对每个虚拟通道的历史流量数据按照预设时间窗口获取j+1个时间窗口的每个时间窗口的流量值,其中,j为大于或等于0的整数;
确定单元,用于根据每个时间窗口的流量值和预设时间窗口确定每个时间窗口的实时流量值;
求和单元,用于为每个时间窗口赋予权重,并对所述j+1个时间窗口的总流量值进行加权求和,得到所述每个虚拟通道在j+1个时间窗口总时间内的总流量值;
计算单元,用于根据每个虚拟通道在j+1个时间窗口总时间内的总流量值计算所有虚拟通道在j+1个时间窗口总时间内的总流量值;
判定单元,用于根据所述每个虚拟通道在j+1个时间窗口总时间内的总流量值、所述所有虚拟通道在j+1个时间窗口总时间内的总流量值、预先确认的内存总量和预先计算的每个虚拟通道分配的内存量对每个虚拟通道进行条件判定,若以下三个变量:虚拟通道Pi分配的内存量在所述内存总量中的占比,即
Figure FDA0003776498240000031
所有虚拟通道在j+1个时间窗口总时间内的总流量值,即TWall;所述虚拟通道Pi在j+1个时间窗口总时间内的总流量值,即TijWij;满足条件式:
Figure FDA0003776498240000032
则判定所述虚拟通道Pi通过条件判定;
传输单元,用于将条件判定通过的虚拟通道内的报文丢弃,继续传输下一个报文。
8.一种存储介质,其特征在于,该存储介质存储的计算机程序,可被一个或多个处理器执行,可用来实现如权利要求1~6任意一项所述的内存流量控制方法。
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器上存储有计算机程序,所述存储器和所述处理器之间互相通信连接,该计算机程序被所述处理器执行时,执行如权利要求1~6任意一项所述的内存流量控制方法。
CN202110987291.8A 2021-08-26 2021-08-26 内存流量控制方法、装置、存储介质及电子设备 Active CN113709056B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110987291.8A CN113709056B (zh) 2021-08-26 2021-08-26 内存流量控制方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110987291.8A CN113709056B (zh) 2021-08-26 2021-08-26 内存流量控制方法、装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN113709056A CN113709056A (zh) 2021-11-26
CN113709056B true CN113709056B (zh) 2022-09-09

Family

ID=78655063

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110987291.8A Active CN113709056B (zh) 2021-08-26 2021-08-26 内存流量控制方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN113709056B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109660467A (zh) * 2019-02-26 2019-04-19 北京百度网讯科技有限公司 用于控制流量的方法和装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103763204B (zh) * 2013-12-31 2017-03-08 华为技术有限公司 一种流量控制方法及装置
CN104917694A (zh) * 2015-06-15 2015-09-16 上海斐讯数据通信技术有限公司 一种基于优先级的流量控制方法
CN106294233B (zh) * 2015-06-29 2019-05-03 华为技术有限公司 一种直接内存访问的传输控制方法及装置
US10523598B2 (en) * 2016-04-04 2019-12-31 Futurewei Technologies, Inc. Multi-path virtual switching
US20190149475A1 (en) * 2017-11-14 2019-05-16 Inspeed Networks, Inc. Unified streamlining for data traffic
CN109818879A (zh) * 2017-11-22 2019-05-28 华为技术有限公司 流量控制方法及装置
CN110061923B (zh) * 2018-01-19 2022-10-04 北京金山云网络技术有限公司 流量控制方法、装置、交换机、发送端服务器及介质
CN111669337A (zh) * 2020-04-22 2020-09-15 视联动力信息技术股份有限公司 一种流量控制的方法和装置
CN112181867B (zh) * 2020-09-29 2022-07-26 西安电子科技大学 基于多目标遗传算法的片上网络内存控制器布局方法
CN113050703B (zh) * 2021-02-05 2022-11-18 新华三技术有限公司 一种流量控制方法及设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109660467A (zh) * 2019-02-26 2019-04-19 北京百度网讯科技有限公司 用于控制流量的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《基于SDN的内存优化技术研究》;王亚铭;《中国优秀硕士学位论文全文数据库》;20210430;全文 *

Also Published As

Publication number Publication date
CN113709056A (zh) 2021-11-26

Similar Documents

Publication Publication Date Title
Gibbens et al. Resource pricing and the evolution of congestion control
US9986563B2 (en) Dynamic allocation of network bandwidth
EP3198842B1 (en) Managing classified network streams
EP4080829A1 (en) Service class adjustment method, apparatus, device and storage medium
CN106716368B (zh) 用于应用的网络分类
CN113141321B (zh) 一种基于边缘计算的数据传输方法及电子设备
EP1096737A3 (en) Method and apparatus for queue management
WO2020100581A1 (ja) 評価装置、評価方法および評価プログラム
JP2018110387A (ja) リアルタイムライブ環境でのバッファに基づく帯域幅測定および適応的データ送信のための方法およびシステム
EP4037270B1 (en) Service traffic adjusting method and apparatus
US7206282B1 (en) Method and apparatus to balance flow loads in a multipurpose networking device
CN110098976B (zh) 网络参数的测量方法、装置、计算机设备和存储介质
CN113709056B (zh) 内存流量控制方法、装置、存储介质及电子设备
EP3952256A1 (en) Improved admission policies for queued website visitors
CN110661722B (zh) 一种流量控制的方法及装置
CN109981487B (zh) 一种数据调度方法、装置、电子设备及可读存储介质
KR20170085906A (ko) 우선순위 큐잉을 수행하는 네트워크 스위치
CN113453285B (zh) 一种资源调整方法、装置及存储介质
US11632319B2 (en) Processing device and moving method
WO2020050094A1 (ja) リソース割当装置、リソース割当方法およびリソース割当プログラム
US20170127356A1 (en) Method and apparatus for prolonging lasting time of inactive mode
CN114095201B (zh) 基于边缘计算的流量控制方法及装置,电子设备,存储介质
CN111796994B (zh) 时延保证方法、***及装置、计算设备、存储介质
Lemeshko et al. Development and Research of Active Queue Management Method on Interfaces of Telecommunication Networks Routers
Guo et al. Traffic Shaping in IoT Networks using GNN and MAB with SDN Orchestration

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