CN102831077A - 一种节约缓存资源的流量管理装置和方法 - Google Patents
一种节约缓存资源的流量管理装置和方法 Download PDFInfo
- Publication number
- CN102831077A CN102831077A CN2012102369401A CN201210236940A CN102831077A CN 102831077 A CN102831077 A CN 102831077A CN 2012102369401 A CN2012102369401 A CN 2012102369401A CN 201210236940 A CN201210236940 A CN 201210236940A CN 102831077 A CN102831077 A CN 102831077A
- Authority
- CN
- China
- Prior art keywords
- read command
- module
- data
- read
- cache
- 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.)
- Granted
Links
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明提供了一种节约缓存资源的流量管理装置和方法,其中,所述方法包括:设置读命令缓存;发送读命令至所述缓存;按照先进先出的顺序读取所述读命令,根据所述读命令读取数据至存储向出向线侧模块发送数据的队列;判断所述缓存存储的读命令指令数是否达到预设的阈值,若达到预设的阈值,则停止发送所述读命令,继续按照先进先出的顺序读取缓存中的读命令。本发明减少了流量管理系统中的缓存使用量。
Description
技术领域
本发明涉及流量管理领域,由于涉及一种节约缓存资源的流量管理装置和方法。
背景技术
在数据通信领域,对数据产品的服务质量需求越来越高,因此对流量管理功能的需求也越来越高。
现有的流量管理系统组成结构如图1所示,其包括入向线侧模块、出向线侧模块、队列管理模块、缓存管理模块以及数据存储模块。来自入向线模块的数据被写入数据存储模块,队列管理模块读取所述数据存储模块中的数据向出向线侧模块发送。由于出向线侧模块的缓存资源有限,因此需要对队列管理模块的输出数据进行流控,实现模块间的协同工作,完成流量管理功能。
由于现有的出向线侧模块仍使用了较多的缓存资源保证流量管理的性能,而在具体设计实现中,无论是通过FPGA实现流量管理功能,还是通过ASIC实现流量管理功能,缓存资源的使用量都是一个衡量可实现性的重要标准。那么如何减少出向线侧的缓存空间又能保证流量管理的性能?
发明内容
本发明提供了一种节约缓存资源的流量控制装置和方法,以解决如何减少流量管理系统中缓存使用量的技术问题。
为解决上述技术问题,本发明提供了一种节约缓存资源的流量管理装置,所述装置包括用于发送读命令以及向出向线侧模块发送数据的队列管理模块,用于接收读命令后从数据存储模块读取数据并将该数据发送至所述队列管理模块的缓存管理模块以及用于存储数据的数据存储模块,所述装置还包括读命令处理模块、读命令缓存模块,其中,
所述队列管理模块,用于判断是否接收到来自所述读命令处理模块的流控指令,仅在判断出没有接收到来自所述读命令处理模块的流控指令时,向读命令处理模块发送读命令;
所述读命令处理模块,用于将所述读命令发送至所述读命令缓存模块以及按照先进先出的顺序将所述读命令缓存模块存储的读命令读出并发送至所述缓存管理模块;接收来自所述读命令缓存模块的暂停信号,向所述队列管理模块发送流控指令;
所述读命令缓存模块,用于统计存储的读命令数是否超过预设的阈值,如果超过预设的阈值,向所述读命令处理模块发送暂停信号。
进一步地,所述读命令处理模块,用于按照先进先出的顺序从所述读命令缓存模块中将所述读命令读出并发送至所述缓存管理模块包括:
所述读命令处理模块,用于判断所述缓存管理模块是否准备就绪接收数据,若判断出所述缓存管理模块准备就绪接收数据,按照先进先出的顺序从所述读命令缓存模块中将所述读命令读出并发送至所述缓存管理模块。
进一步地,
所述读命令缓存模块,还用于判断出存储的读命令数降低至预设的阈值以下时,向所述读命令处理模块发送恢复信号;
所述读命令处理模块,还用于接收来自所述读命令缓存模块的恢复信号,停止向所述队列管理模块发送流控指令。
进一步地,
所述读命令缓存模块由先进先出的数据缓存器组成。
为解决上述技术问题,本发明还提供了一种节约缓存资源的流量管理方法,所述方法包括:
设置读命令缓存;
发送读命令至所述缓存;
按照先进先出的顺序读取所述读命令,根据所述读命令读取数据至存储向出向线侧模块发送数据的队列;
判断所述缓存存储的读命令指令数是否达到预设的阈值,若达到预设的阈值,则停止发送所述读命令,继续按照先进先出的顺序读取缓存中的读命令。
进一步地,所述按照先进先出的顺序读取所述读命令,根据所述读命令读取数据至存储向出向线侧模块发送数据的队列包括:
判断存储的数据是否准备就绪;如果存储的数据准备就绪,则按照先进先出的顺序读取所述读命令,根据读取的读命令将存储的数据读取到数据发送队列。
进一步地,所述方法还包括:
继续按照先进先出的顺序读取缓存中的读命令后,若所述缓存存储的读命令数降低至预设的阈值以下,则继续发送读命令至所述缓存。
上述技术方案对待向出向线侧模块发送的数据数进行控制,使得出向线侧模块减少缓存成为可能。虽然上述实施例的增加了用于存储指令的缓存,但指令占用的缓存数少,因而整体上仍减少了流量管理系统中缓存使用量。
附图说明
图1为现有技术流量管理系统组成模块图;
图2为本实施例的节约缓存资源的流量管理装置组成模块图;
图3为本实施例的节约缓存资源的流量管理方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图2为本实施例的节约缓存资源的流量管理装置组成模块图。
该装置包括队列管理模块、读命令处理模块、读命令缓存模块、缓存管理模块以及数据存储模块,其中:
队列管理模块,用于判断是否接收到来自所述读命令处理模块的流控指令,仅在判断出没有接收到来自所述读命令处理模块的流控指令时,向读命令处理模块发送读命令;以及向出向线侧模块发送数据;
所述读命令处理模块,用于将所述读命令发送至所述读命令缓存模块以及按照先进先出的顺序将所述读命令缓存模块存储的读命令读出并发送至所述缓存管理模块;接收来自所述读命令缓存模块的暂停信号,向所述队列管理模块发送流控指令;
该读命令处理模块,在从按照先进先出的顺序从所述读命令缓存模块中读取读命令之前,可先判断缓存管理模块是否准备就绪接收数据,若判断出所述缓存管理模块准备就绪接收数据,再从所述读命令缓存模块中读取读命令发送至所述缓存管理模块;
所述读命令缓存模块,用于统计存储的读命令数是否超过预设的阈值,如果超过预设的阈值,向所述读命令处理模块发送暂停信号;
该读命令缓存模块,还用于判断存储的读命令数降低至预设的阈值以下时,向所述读命令处理模块发送恢复信号;此时读命令处理模块,在接收来自所述读命令缓存模块的恢复信号后,停止向所述队列管理模块发送流控指令。
该读命令缓存模块可由先进先出(FIFO)的数据缓存器组成;
缓存管理模块,用于接收读命令后从数据存储模块读取数据并将该数据发送至所述队列管理模块;
数据存储模块,用于存储数据。
上述实施例,为读命令数设置合适的阈值,当队列管理模块发送的读命令数达到该阈值时,不再发送读命令,进而控制了队列管理模块存储的通过该读命令读取的数据数。由于本实施例的流量管理装置可以控制队列管理模块存储的数据数,因此将本实施例的流量管理装置用于流量管理系统,可减少流量管理系统中出向线侧模块设置的缓存数。虽然上述实施例的装置中读命令缓存模块也设置了缓存,但其缓存的是指令,由于指令占据的数据空间远小于数据,因此读命令缓存模块实际增加的缓存少,对于整个流量管理系统而言,其减少的缓存数量大于增加的缓存数量。
图3为本实施例的节约缓存资源的流量管理方法流程图。
S301设置读命令缓存;
读命令缓存由先进先出(FIFO)的数据缓存器组成;
S302发送读命令指令至所述缓存;
S303按照先进先出的顺序读取所述读命令,根据所述读命令读取数据至存储向出向线侧模块发送数据的队列;
在执行步骤S303时,可先判断存储的数据是否准备就绪;如果存储的数据准备就绪,则按照先进先出的顺序读取所述读命令,根据所述读命令读取数据至存储向出向线侧模块发送数据的队列;
S304判断所述缓存存储的读命令指令数是否达到预设的阈值,若达到预设的阈值,执行步骤S305;否则,继续执行步骤S302;
S305停止发送所述读命令指令,执行S303。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
需要说明的是,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (7)
1.一种节约缓存资源的流量管理装置,所述装置包括用于发送读命令以及向出向线侧模块发送数据的队列管理模块,用于接收读命令后从数据存储模块读取数据并将该数据发送至所述队列管理模块的缓存管理模块以及用于存储数据的数据存储模块,其特征在于,所述装置还包括读命令处理模块、读命令缓存模块,其中,
所述队列管理模块,用于判断是否接收到来自所述读命令处理模块的流控指令,仅在判断出没有接收到来自所述读命令处理模块的流控指令时,向读命令处理模块发送读命令;
所述读命令处理模块,用于将所述读命令发送至所述读命令缓存模块以及按照先进先出的顺序将所述读命令缓存模块存储的读命令读出并发送至所述缓存管理模块;接收来自所述读命令缓存模块的暂停信号,向所述队列管理模块发送流控指令;
所述读命令缓存模块,用于统计存储的读命令数是否超过预设的阈值,如果超过预设的阈值,向所述读命令处理模块发送暂停信号。
2.如权利要求1所述的装置,其特征在于,所述读命令处理模块,用于按照先进先出的顺序从所述读命令缓存模块中将所述读命令读出并发送至所述缓存管理模块进一步包括:
所述读命令处理模块,用于判断所述缓存管理模块是否准备就绪接收数据,若判断出所述缓存管理模块准备就绪接收数据,按照先进先出的顺序从所述读命令缓存模块中将所述读命令读出并发送至所述缓存管理模块。
3.如权利要求1或2所述的装置,其特征在于,
所述读命令缓存模块,还用于判断出存储的读命令数降低至预设的阈值以下时,向所述读命令处理模块发送恢复信号;
所述读命令处理模块,还用于接收来自所述读命令缓存模块的恢复信号,停止向所述队列管理模块发送流控指令。
4.如权利要求3所述的装置,其特征在于,
所述读命令缓存模块由先进先出的数据缓存器组成。
5.一种节约缓存资源的流量管理方法,其特征在于,所述方法包括:
设置读命令缓存;
发送读命令至所述缓存;
按照先进先出的顺序读取所述读命令,根据所述读命令读取数据至存储向出向线侧模块发送数据的队列;
判断所述缓存存储的读命令指令数是否达到预设的阈值,若达到预设的阈值,则停止发送所述读命令,继续按照先进先出的顺序读取缓存中的读命令。
6.如权利要求5所述的方法,其特征在于,所述按照先进先出的顺序读取所述读命令,根据所述读命令读取数据至存储向出向线侧模块发送数据的队列进一步包括:
判断存储的数据是否准备就绪;如果存储的数据准备就绪,则按照先进先出的顺序读取所述读命令,根据所述读命令读取数据至存储向出向线侧模块发送数据的队列。
7.如权利要求5或6所述的方法,其特征在于,所述方法还包括:
继续按照先进先出的顺序读取缓存中的读命令后,若所述缓存存储的读命令数降低至预设的阈值以下,则继续发送读命令至所述缓存。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210236940.1A CN102831077B (zh) | 2012-07-10 | 2012-07-10 | 一种节约缓存资源的流量管理装置和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210236940.1A CN102831077B (zh) | 2012-07-10 | 2012-07-10 | 一种节约缓存资源的流量管理装置和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102831077A true CN102831077A (zh) | 2012-12-19 |
CN102831077B CN102831077B (zh) | 2017-07-18 |
Family
ID=47334223
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210236940.1A Active CN102831077B (zh) | 2012-07-10 | 2012-07-10 | 一种节约缓存资源的流量管理装置和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102831077B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111008157A (zh) * | 2019-11-29 | 2020-04-14 | 北京浪潮数据技术有限公司 | 存储系统写缓存数据下发方法及相关组件 |
CN115586974A (zh) * | 2022-12-12 | 2023-01-10 | 北京象帝先计算技术有限公司 | 内存控制器、系统、装置及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101694610A (zh) * | 2009-10-16 | 2010-04-14 | 成都市华为赛门铁克科技有限公司 | 命令处理方法、装置和存储设备 |
CN101866322A (zh) * | 2010-06-13 | 2010-10-20 | 北京北大众志微系统科技有限责任公司 | 一种高速缓存管理策略的调整方法及系统 |
US20110179200A1 (en) * | 2010-01-18 | 2011-07-21 | Xelerated Ab | Access buffer |
-
2012
- 2012-07-10 CN CN201210236940.1A patent/CN102831077B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101694610A (zh) * | 2009-10-16 | 2010-04-14 | 成都市华为赛门铁克科技有限公司 | 命令处理方法、装置和存储设备 |
US20110179200A1 (en) * | 2010-01-18 | 2011-07-21 | Xelerated Ab | Access buffer |
CN101866322A (zh) * | 2010-06-13 | 2010-10-20 | 北京北大众志微系统科技有限责任公司 | 一种高速缓存管理策略的调整方法及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111008157A (zh) * | 2019-11-29 | 2020-04-14 | 北京浪潮数据技术有限公司 | 存储系统写缓存数据下发方法及相关组件 |
CN111008157B (zh) * | 2019-11-29 | 2022-02-18 | 北京浪潮数据技术有限公司 | 存储系统写缓存数据下发方法及相关组件 |
CN115586974A (zh) * | 2022-12-12 | 2023-01-10 | 北京象帝先计算技术有限公司 | 内存控制器、系统、装置及电子设备 |
CN115586974B (zh) * | 2022-12-12 | 2023-10-20 | 北京象帝先计算技术有限公司 | 内存控制器、系统、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102831077B (zh) | 2017-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4521398B2 (ja) | 前途のリソースの読み取りパスを用いた、読み取り/書き込みコマンドバッファプールリソースの管理 | |
US11231864B2 (en) | Memory access technology and computer system | |
EP3544247B1 (en) | Transfer control device, transfer control method and computer-readable medium | |
CN103473142B (zh) | 一种云计算操作系统下的虚拟机迁移方法及装置 | |
CN107526534B (zh) | 管理存储设备的输入输出(i/o)的方法和设备 | |
NO20045244L (no) | System og fremgangsmate for prioriteringen av omsending av protokolldataenheter for a assistere radiolinkomsending | |
US9026735B1 (en) | Method and apparatus for automated division of a multi-buffer | |
WO2022227895A1 (zh) | 数据传输方法、装置、终端设备及计算机可读存储介质 | |
US11010094B2 (en) | Task management method and host for electronic storage device | |
CN103746938A (zh) | 一种发送数据包的方法及装置 | |
EP2846470A1 (en) | A method of mobile terminal internal communications | |
CN100419723C (zh) | 多中断的缓存装置和方法 | |
CN104052676A (zh) | 一种发送通路及发送通路的数据处理方法 | |
CN102831077A (zh) | 一种节约缓存资源的流量管理装置和方法 | |
WO2019019295A1 (zh) | 用于嵌入式系统基于同步机制下的环形数据缓冲实现方法 | |
US20100074111A1 (en) | Method of data traffic shaping, apparatus and wireless device | |
CN104038441A (zh) | 一种数据传输方法及系统 | |
CN105406989A (zh) | 处理报文的方法、网卡及系统、更新信息的方法及主机 | |
CN203759691U (zh) | 一种大数据量数据备份接口系统 | |
CN111966736B (zh) | 一种高吞吐低延时大容量Flume通道及其传输方法 | |
CN102833162B (zh) | 缓冲区数的调整方法和装置 | |
CN110188056B (zh) | 一种电子设备的物理层日志输出装置及方法 | |
CN100407128C (zh) | 一种音频捕获中的无缝平滑方法 | |
CN115776475A (zh) | 一种消息处理方法、装置、电子设备及计算机存储介质 | |
CN115129632A (zh) | 数据处理方法、相关装置及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |