CN111638854A - Nas构建的性能优化方法、装置及san堆栈块设备 - Google Patents

Nas构建的性能优化方法、装置及san堆栈块设备 Download PDF

Info

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
Application number
CN202010452535.8A
Other languages
English (en)
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.)
Beijing Toyou Feiji Electronics Co ltd
Original Assignee
Beijing Toyou Feiji Electronics 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 Beijing Toyou Feiji Electronics Co ltd filed Critical Beijing Toyou Feiji Electronics Co ltd
Priority to CN202010452535.8A priority Critical patent/CN111638854A/zh
Publication of CN111638854A publication Critical patent/CN111638854A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed 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堆栈块设备
技术领域
本发明涉及存储系统技术领域,特别是涉及一种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构建的性能优化装置。
CN202010452535.8A 2020-05-26 2020-05-26 Nas构建的性能优化方法、装置及san堆栈块设备 Pending CN111638854A (zh)

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)

* Cited by examiner, † Cited by third party
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 北京浪潮数据技术有限公司 分布式存储系统的数据写入方法、装置、设备及存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
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