CN111638854A - Nas构建的性能优化方法、装置及san堆栈块设备 - Google Patents
Nas构建的性能优化方法、装置及san堆栈块设备 Download PDFInfo
- Publication number
- CN111638854A CN111638854A CN202010452535.8A CN202010452535A CN111638854A CN 111638854 A CN111638854 A CN 111638854A CN 202010452535 A CN202010452535 A CN 202010452535A CN 111638854 A CN111638854 A CN 111638854A
- Authority
- CN
- China
- Prior art keywords
- request
- san
- nas
- stack
- performance optimization
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000005457 optimization Methods 0.000 title claims abstract description 25
- 238000010276 construction Methods 0.000 title claims abstract description 12
- 230000004044 response Effects 0.000 claims abstract description 6
- 238000012545 processing Methods 0.000 claims description 7
- 238000013461 design Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种NAS构建的性能优化方法、装置及SAN堆栈块设备。该方法包括:直接由文件系统获取IO请求,文件系统将IO请求跳过标准的Block层,直接下到SAN堆栈中,SAN堆栈将与IO请求对应的IO响应直接反馈给文件系统,IO请求的获取及IO响应的反馈均通过SAN堆栈块设备自身的IO接口。本发明提供的NAS构建的性能优化方法、装置及SAN堆栈块设备能够解决IO路径过长,影响业务性能的问题。
Description
技术领域
本发明涉及存储系统技术领域,特别是涉及一种NAS构建的性能优化方法、装置及SAN堆栈块设备。
背景技术
统一存储的架构有两种,一是先实现SAN堆栈,然后在SAN堆栈上实现文件系统加NAS导出,二是先实现文件系统加NAS导出,然后在文件系统上模拟块设备,再将块设备通过SCSI Target导出。
针对现有SAN堆栈,再实现NAS导出的架构,现有技术是将SAN堆栈中的逻辑块设备,通过Block层内核接口,导入到操作系统,转为标准的Block设备,在其上构建文件系统,再通过NAS协议进行导出供Host访问。
发明内容
本发明要解决的技术问题是提供一种NAS构建的性能优化方法、装置及SAN堆栈块设备,能够解决IO路径过长,影响业务性能的问题。
为解决上述技术问题,本发明提供了一种NAS构建的性能优化方法,所述方法包括:直接由文件系统获取IO请求,文件系统将IO请求跳过标准的Block层,直接下到SAN堆栈中,SAN堆栈将与IO请求对应的IO响应直接反馈给文件系统,IO请求的获取及IO响应的反馈均通过SAN堆栈块设备自身的IO接口。
在一些实施方式中,还包括:将核心业务的IO请求绑定至固定群组的CPU内核。
在一些实施方式中,完成绑定之后,由被绑定的CPU内核完成该核心业务的IO请求的处理。
在一些实施方式中,核心业务包括:nfsd、smbd、TCP/IP网络协议栈。
在一些实施方式中,还包括:在被绑定的群组内,动态分配处理当前IO请求的CPU内核。
在一些实施方式中,动态分配后的IO请求仅由CPU内核的单一线程处理,且用来完成IO请求处理的单一线程不具有线程锁。
此外,本发明还提供一种NAS构建的性能优化装置,所述装置包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据前文所述的NAS构建的性能优化方法。
此外,本发明还提供了一种SAN堆栈块设备,所述SAN堆栈块设备包括:根据前文所述的NAS构建的性能优化装置。
采用这样的设计后,本发明至少具有以下优点:
本发明通过SAN堆栈自身的IO接口直接访问文件系统,缩短IO路径,去除文件系统中的Block访问接口,直接调用SAN堆栈提供的IO接口。
附图说明
上述仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,以下结合附图与具体实施方式对本发明作进一步的详细说明。
图1是现有技术提供的NAS堆栈块设备的IO过程的流程示意图;
图2是本发明实施例提供的NAS堆栈块设备的IO过程的流程示意图;
图3是本发明实施例提供的CPU内核分配的系统架构图;
图4是现有技术提供的被动请求式IO过程的流程示意图;
图5是本发明实施例提供的主动轮询式IO过程的流程示意图;
图6是本发明实施例提供的NAS构建的性能优化装置的结构图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
针对IO路径长问题,将SAN堆栈中逻辑块设备IO访问接口导出,修改文件系统中的提交到Block层接口,改为直接调用SAN堆栈中逻辑块设备IO访问接口,缩短IO路径。现有设计如图1,改良后的设计如图2。
针对资源使用不合理问题,对CPU的所有Core,根据CPU本身的NUMA架构,特别是Core共享缓存和Core间无需数据转移的原则进行分组,将业务关联性重的,使用同一组CPUCore进行专门处理,同时根据CPUCore的业务分组,同一业务随着访问请求的增加进行组内动态Core分配,如图3所示。
针对多核共同处理同一个IO请求的锁带来的消耗问题,结合CPU资源专Core专用,并将现有实现重的被动接收请求,改为主动轮询请求,充分发挥CPU单Core的能力,同一IO请求只在一个Core上进行处理,去掉多Core之间的锁开销,无锁化设计,现有设计如图4,改良后的无锁化设计如图5。
根据原型实验,初步得出现有技术方案的性能在同步IO模式的单万兆端口下带宽为200MB/s,经过IO路径缩短后,可提升至稳定500MB/s,峰值可达800MB/s;如果再增加专Core专用和无锁化设计,再无IO抖动后,预期可达到稳定800MB/s,无限接近本身SAN堆栈中块设备和主机接口提供的能力。
图6示出了NAS构建的性能优化装置的结构。参见图6,例如,所述NAS构建的性能优化装置600可以用于充当SAN系统中的SAN块存储设备。如本文所述,NAS构建的性能优化装置600可以用于在SAN系统中实现对文件数据访问功能。NAS构建的性能优化装置600可以在单个节点中实现,或者NAS构建的性能优化装置600的功能可以在网络中的多个节点中实现。本领域的技术人员应意识到,术语NAS构建的性能优化装置包括广泛意义上的设备,图6中示出的NAS构建的性能优化装置600仅是其中一个示例。包括NAS构建的性能优化装置600是为了表述清楚,并不旨在将本发明的应用限制为特定的NAS构建的性能优化装置实施例或某一类NAS构建的性能优化装置实施例。本发明所述的至少部分特征/方法可以在网络装置或组件,例如,NAS构建的性能优化装置600中实现。例如,本发明中的特征/方法可以采用硬件、固件和/或在硬件上安装运行的软件实现。NAS构建的性能优化装置600可以是任何通过网络处理,存储和/或转发数据帧的设备,例如,服务器,客户端,数据源等。如图6所示,NAS构建的性能优化装置600可以包括收发器(Tx/Rx)610,其可以是发射器,接收器,或其组合。Tx/Rx610可以耦合到多个端口650(例如上行接口和/或下行接口),用于从其他节点发送和/或接收帧。处理器630可耦合至Tx/Rx610,以处理帧和/或确定向哪些节点发送帧。处理器630可以包括一个或多个多核处理器和/或存储器设备632,其可以用作数据存储器,缓冲区等。处理器630可以被实现为通用处理器,或者可以是一个或多个专用集成电路(application specific integrated circuit,简称ASIC)和/或数字信号处理器(digitalsignal processor,简称DSP)的一部分。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,本领域技术人员利用上述揭示的技术内容做出些许简单修改、等同变化或修饰,均落在本发明的保护范围内。
Claims (8)
1.一种NAS构建的性能优化方法,由SAN堆栈块设备执行,其特征在于,包括:
直接由文件系统获取IO请求,文件系统将IO请求跳过标准的Block层,直接下到SAN堆栈中,SAN堆栈将与IO请求对应的IO响应直接反馈给文件系统,IO请求的获取及IO响应的反馈均通过SAN堆栈块设备自身的IO接口。
2.根据权利要求1所述的NAS构建的性能优化方法,其特征在于,还包括:
将核心业务的IO请求绑定至指定群组的CPU内核。
3.根据权利要求2所述的NAS构建的性能优化方法,其特征在于,完成绑定之后,由被绑定的CPU内核完成核心业务的IO请求的处理。
4.根据权利要求3所述的NAS构建的性能优化方法,其特征在于,核心业务包括:nfsd、smbd、TCP/IP网络协议栈。
5.根据权利要求2所述的NAS构建的性能优化方法,其特征在于,还包括:
在被绑定的群组内,动态分配处理当前IO请求的CPU内核。
6.根据权利要求5所述的NAS构建的性能优化方法,其特征在于,动态分配后的IO请求仅由CPU内核的单一线程处理,且用来完成IO请求处理的单一线程不具有线程锁。
7.一种NAS构建的性能优化装置,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据权利要求1至6任意一项所述的NAS构建的性能优化方法。
8.一种SAN堆栈块设备,其特征在于,包括:根据权利要求7所述的NAS构建的性能优化装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010452535.8A CN111638854A (zh) | 2020-05-26 | 2020-05-26 | Nas构建的性能优化方法、装置及san堆栈块设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010452535.8A CN111638854A (zh) | 2020-05-26 | 2020-05-26 | Nas构建的性能优化方法、装置及san堆栈块设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111638854A true CN111638854A (zh) | 2020-09-08 |
Family
ID=72329465
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010452535.8A Pending CN111638854A (zh) | 2020-05-26 | 2020-05-26 | Nas构建的性能优化方法、装置及san堆栈块设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111638854A (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1710530A (zh) * | 2005-07-21 | 2005-12-21 | 华中科技大学 | 基于对象的存储控制器及其使用的调度方法 |
CN103389884A (zh) * | 2013-07-29 | 2013-11-13 | 华为技术有限公司 | 处理输入/输出请求的方法、宿主机、服务器和虚拟机 |
US20130346657A1 (en) * | 2012-06-21 | 2013-12-26 | Vigneshwara Bhatta | File system on i/o daughter card |
CN105511964A (zh) * | 2015-11-30 | 2016-04-20 | 华为技术有限公司 | I/o请求的处理方法和装置 |
CN106796493A (zh) * | 2014-10-13 | 2017-05-31 | 微软技术许可有限责任公司 | 用于存储设备区的标记 |
CN107463339A (zh) * | 2017-08-17 | 2017-12-12 | 郑州云海信息技术有限公司 | 一种nas存储系统 |
CN107704194A (zh) * | 2016-08-08 | 2018-02-16 | 北京忆恒创源科技有限公司 | 无锁io处理方法及其装置 |
CN108153596A (zh) * | 2017-12-15 | 2018-06-12 | 珠海金山网络游戏科技有限公司 | 一种基于无锁队列的消息处理方法和装置 |
CN108363625A (zh) * | 2018-02-12 | 2018-08-03 | 聚好看科技股份有限公司 | 一种无锁线程有序控制存储信息的方法、装置和服务器 |
CN110908602A (zh) * | 2019-10-31 | 2020-03-24 | 北京浪潮数据技术有限公司 | 分布式存储系统的数据写入方法、装置、设备及存储介质 |
-
2020
- 2020-05-26 CN CN202010452535.8A patent/CN111638854A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1710530A (zh) * | 2005-07-21 | 2005-12-21 | 华中科技大学 | 基于对象的存储控制器及其使用的调度方法 |
US20130346657A1 (en) * | 2012-06-21 | 2013-12-26 | Vigneshwara Bhatta | File system on i/o daughter card |
CN103389884A (zh) * | 2013-07-29 | 2013-11-13 | 华为技术有限公司 | 处理输入/输出请求的方法、宿主机、服务器和虚拟机 |
CN106796493A (zh) * | 2014-10-13 | 2017-05-31 | 微软技术许可有限责任公司 | 用于存储设备区的标记 |
CN105511964A (zh) * | 2015-11-30 | 2016-04-20 | 华为技术有限公司 | I/o请求的处理方法和装置 |
CN107704194A (zh) * | 2016-08-08 | 2018-02-16 | 北京忆恒创源科技有限公司 | 无锁io处理方法及其装置 |
CN107463339A (zh) * | 2017-08-17 | 2017-12-12 | 郑州云海信息技术有限公司 | 一种nas存储系统 |
CN108153596A (zh) * | 2017-12-15 | 2018-06-12 | 珠海金山网络游戏科技有限公司 | 一种基于无锁队列的消息处理方法和装置 |
CN108363625A (zh) * | 2018-02-12 | 2018-08-03 | 聚好看科技股份有限公司 | 一种无锁线程有序控制存储信息的方法、装置和服务器 |
CN110908602A (zh) * | 2019-10-31 | 2020-03-24 | 北京浪潮数据技术有限公司 | 分布式存储系统的数据写入方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110402568B (zh) | 一种通信的方法及装置 | |
US20200241927A1 (en) | Storage transactions with predictable latency | |
CN108268208B (zh) | 一种基于rdma的分布式内存文件系统 | |
EP1581875B1 (en) | Using direct memory access for performing database operations between two or more machines | |
CN113485823A (zh) | 数据传输方法、装置、网络设备、存储介质 | |
EP1883240B1 (en) | Distributed multi-media server system, multi-media information distribution method, program thereof, and recording medium | |
CN112783667B (zh) | 基于虚拟环境的内存共享系统及方法 | |
CN111966446B (zh) | 一种容器环境下rdma虚拟化方法 | |
US9390036B2 (en) | Processing data packets from a receive queue in a remote direct memory access device | |
CN111431757A (zh) | 虚拟网络的流量采集方法及装置 | |
US10609125B2 (en) | Method and system for transmitting communication data | |
US20200364080A1 (en) | Interrupt processing method and apparatus and server | |
CN109857545B (zh) | 一种数据传输方法及装置 | |
US20240152290A1 (en) | Data writing method, data reading method, apparatus, device, system, and medium | |
WO2023046141A1 (zh) | 一种数据库网络负载性能的加速框架、加速方法及设备 | |
CN115686875A (zh) | 用于在多个进程之间传输数据的方法、设备和程序产品 | |
US10523741B2 (en) | System and method for avoiding proxy connection latency | |
Tang et al. | Towards high-performance packet processing on commodity multi-cores: current issues and future directions | |
CN112511460B (zh) | 单收发通道多核网络通讯设备的无锁共享报文转发方法 | |
CN111638854A (zh) | Nas构建的性能优化方法、装置及san堆栈块设备 | |
CN113778937A (zh) | 用于执行片上网络(NoC)中的事务聚合的系统和方法 | |
US20040240388A1 (en) | System and method for dynamic assignment of timers in a network transport engine | |
CN115766044A (zh) | 一种基于用户态协议栈的通信方法及相应装置 | |
US8819302B2 (en) | System to manage input/output performance and/or deadlock in network attached storage gateway connected to a storage area network environment | |
CN107615259A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200908 |