[发明专利]高性能无锁可缩放目标的系统和方法有效
申请号: | 201710236677.9 | 申请日: | 2017-04-12 |
公开(公告)号: | CN107391270B | 公开(公告)日: | 2022-11-08 |
发明(设计)人: | V.B.P.戈拉普迪;V.贾库拉 | 申请(专利权)人: | 三星电子株式会社 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 邵亚丽 |
地址: | 韩国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 性能 无锁可 缩放 目标 系统 方法 | ||
用于访问存储于数据存储系统的目标中的数据的方法包含:在第一组CPU上运行多个传输线程,其中多个传输线程中的每个包括命令接收机通路和命令发送机通路;在第二组CPU上运行多个数据通路线程,其中多个数据通路线程中的每个包括命令发出通路和命令完成通路;利用传输线程的命令接收通路将I/O命令登记到I/O命令发出队列,并且利用数据通路线程的命令发出通路处理I/O命令;以及利用数据通路线程的命令完成通路,将I/O完成通知登记到I/O完成队列,并且利用传输线程的命令发送机通路,处理I/O完成通知。
相关专利申请的交叉引用
本申请要求2016年4月13日提交的美国临时专利申请No.62/322,035的优先权的权益,在此通过引用整体并入该专利申请的公开内容。
技术领域
本公开一般地涉及数据存储系统,更具体地说,涉及提供高性能无锁可缩放(scalable)目标的系统和方法。
背景技术
在典型的存储区域网络(SAN)中,通过光纤连接或者交换网络,目标使永久数据存储空间(例如,逻辑单元号(LUN)、命名空间)受一个或者多个启动程序(initiator)的作用。启动程序指启动会话接口(例如,小型计算机系统接口(SCSI)会话)并且发送命令(例如,SCSI命令)的端点。目标指等待启动程序的工作请求并且执行输入/输出(I/O)操作的端点。在通用计算机体系结构的语境下,可以将启动程序称为客户,并且可以将目标称为服务器。单个目标可以服务多个启动程序并且为启动程序提供一个或者多个LUN。
目标可以通过双方同意的SAN协议与一个或者多个启动程序通信。SAN协议的例子包含并不局限于:光纤通道协议(FCP)、并行SCSI(pSCSI)、以太网小型计算机系统接口(iSCSI)、HyperSCSI、光纤通道、高级技术附件(ATA)、串行ATA(SATA)、通过以太网的ATA(AoE)、InfiniBand以及通过光纤的Non-Volatile Memory Express(NVMe)。SAN协议允许启动程序将I/O命令发送至目标。数据中心的数据存储装置可以包含以物理方法和/或逻辑方法分布于存储区域网络上的多个目标。SAN协议将数据存储装置合并为目标阵列,同时将数据存储装置看起来是本地连接的错觉(illusion)提供给主机。
通常,通过多个连接,存储目标可以使后端LUN受多个启动程序的作用。每个启动程序可以打开与目标的一个或者多个连接并且访问目标中的一个或者多个LUN。从输入/输出(I/0)的观点出发,特别是当多个会话(session)并行地访问多个LUN时,数据通路中建立的多个同步点能够影响I/O性能。
可以使前端I/O堆栈中的数据通路分裂为传输协议层和SCSI核心层。传输协议层中的处理是基于每个连接的,而SCSI核心层中的处理是基于每个LUN的。传输协议层中的处理包含通过特定连接发出I/O命令,并且通过该特定连接完成所述I/O命令。核心层中的LUN处理包含对特定LUN发出I/O命令,并且完成对特定LUN发出的I/O命令。如果在传输协议层的线程上下文中执行整个I/O通路,则可以在LUN级和在连接级建立各种同步点,因此,影响整个I/O性能。这是因为,传输协议层处的I/O上下文是特定于连接的,而SCSI核心层中的I/O上下文是特定于LUN的。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于三星电子株式会社,未经三星电子株式会社许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710236677.9/2.html,转载请声明来源钻瓜专利网。