数据输入/输出请求处理方法和系统技术方案

技术编号:3501985 阅读:336 留言:0更新日期:2012-04-11 18:40
本发明专利技术解决现有技术的就应用性能而论的缺陷,提供数据处理方法、系统和计算机程序产品,用于在独立的硬件实现的iSCSI路径和软件实现的iSCSI路径之间进行选择,以便在数据通信环境中处理输入/输出请求,包括:传送访问IP存储系统中的至少一个存储装置中的至少一个逻辑块地址的请求流。配置成传送请求流的主机中的第一处理器的利用率随同与存储装置耦接的适配器中的第二处理器的利用率一起可被监视,所述主机提供第一iSCSI实现,所述适配器提供第二iSCSI实现。另外,根据主机中的第一处理器的利用率值和适配器中的第二处理器的利用率值,请求流中的请求可被路由给主机中的第一iSCSI实现和适配器中的第二iSCSI实现。第一iSCSI实现可以是软件iSCSI,第二iSCSI实现可以是硬件iSCSI。

【技术实现步骤摘要】

本专利技术涉及网络数据通信,更具体地说,涉及因特网SCSI(iSCSI)数据传输。
技术介绍
在计算机存储器的语境中,因特网小型计算机系统接口(iSCSI)是基于传输控制协议/因特网协议(TCP/IP)的协议,用于建立和管理基于IP的存储设备、主机和客户机之间的连接。iSCSI使IP网络上的任何机器(称为发起者)都能够联系远程专用服务器(称为目标),并且正如发起者对于本地硬盘进行块输入/输出(I/O)那样,对目标进行块I/O。 iSCSI支持物理层的千兆比特以太网接口,所述千兆比特以太网允许支持iSCSI接口的系统与标准千兆比特以太网交换机和/或IP路由器直接连接。当操作系统(OS)收到请求时,OS产生SCSI命令,随后通过以太网连接发送IP分组。在接收端,分离SCSI命令和请求,SCSI命令和数据被发送给SCSI控制器,随后被发送给SCSI存储装置。iSCSI还将利用相同的协议返回对所述请求的响应。 iSCSI协议的一个重大缺陷是由于TCP/IP栈的开销,对基于以太网的存储区域网来说,等待时间较长-接近75微秒。具体地说,TCP/IP栈的TCP/IP协议向客户机和存储器之间的通信加入相当大的开销。从而,例如在主机上单独使用软件处理会造成几乎没有或没有为将在主机上运行的应用留下任何处理资源。在同时访问成千上万文件的那些情况下,这在高端系统中会是一个至关紧要的问题。 用于减少开销的一种技术是TCP卸载引擎(TOE),它是一种通过把TCP/IP处理从主机转移到独立的专用子系统,例如主机总线适配器(HBA),从而提高整个系统TCP/IP性能的TCP/IP加速技术。另一种减少TCP开销的可能技术包括部分用软件、部分用硬件定义TCP/IP功能,从而形成单一的混合软件/硬件通道。但是,TOE方法,纯软件方法,纯硬件方法,以及软件/硬件通道方法都不能为各种应用工作负载提供更佳的性能增强。
技术实现思路
本专利技术的实施例解决现有技术的就应用性能而论的缺陷,提供一种新颖并且非显而易见的数据处理方法、系统和计算机程序产品,用于在独立的(separate)硬件实现的iSCSI路径和软件实现的iSCSI路径之间进行选择,以便在数据通信环境中处理输入/输出请求。在一个实施例中,在独立的硬件实现的iSCSI路径和软件实现的iSCSI路径之间进行选择,以便处理输入/输出请求的方法包括传送访问IP存储系统中的至少一个存储装置中的至少一个逻辑块地址的请求流。配置成传送请求流的主机中的第一处理器的利用率随同与存储装置耦接的适配器中的第二处理器的利用率一起可被监视,所述主机提供第一iSCSI实现,所述适配器提供第二iSCSI实现。另外,根据主机中的第一处理器的利用率值和适配器中的第二处理器的利用率值,请求流中的请求可被路由给主机中的第一iSCSI实现和适配器中的第二iSCSI实现。第一iSCSI实现可以是软件iSCSI,第二iSCSI实现可以是硬件iSCSI。 数据输入/输出请求处理方法还可包括确定主机中的第一处理器是否被充分利用,如果是,那么确定适配器中的第二处理器是否被充分利用。如果第二处理器未被充分利用,那么请求可被路由给适配器,以便被第二iSCSI实现服务(service)。另一方面,即使主机中的第一处理器未被充分利用,仍然可确定适配器中的第二处理器是否被充分利用,如果第二处理器未被充分利用,那么请求可被路由到适配器,以便被第二iSCSI实现服务。在该实施例中,当主机中的第一处理器未被充分利用,但是适配器中的第二处理器被充分利用时,请求可被路由到主机,从而被第一iSCSI实现服务。最后,主机中的第一处理器的利用率值可基于以太网网络接口卡中的处理器的利用率值。 在另一实施例中,在独立的硬件实现的iSCSI路径和软件实现的iSCSI路径之间进行选择,以便处理输入/输出请求的数据输入/输出请求处理系统包括一个主机;与主机耦接的iSCSI监视控制逻辑,其中所述iSCSI监视控制逻辑包括使得能够在独立的硬件实现的iSCSI路径和软件实现的iSCSI路径之间进行选择,以便处理输入/输出请求的程序代码。所述系统还可包括与主机耦接,从而提供硬件iSCSI路径的适配器。 本专利技术的其它方面部分将在下面的说明中陈述,部分根据所述说明将是明显的,或者可通过实践本专利技术来了解。本专利技术的各个方面将借助在附加的本文档来自技高网
...

【技术保护点】
一种数据输入/输出请求处理方法,包括:在独立的硬件实现的和软件实现的因特网小型计算机系统接口(iSCSI)路径之间进行选择,以便处理输入/输出请求。

【技术特征摘要】
US 2005-12-28 11/319,852中特别指出的要素和组合来实现和获得。要明白上面的概述和下面的详细说明都只是例证性和解释性的,并不是对要求保护的本发明的限制。附图说明包含在本说明书中并构成说明书的一部分的附图图解说明本发明的实施例,并且和下面的说明一起用于解释本发明的原理。这里图解说明的实施例是目前优选的实施例,但是本发明显然并不局限于所示的具体安排和手段,其中图1是在独立的硬件实现的iSCSI路径和软件实现的iSCSI路径之间进行选择,以便处理输入/输出请求的数据处理网络的示意图;图2是包括应用层和iSCSI监视层的iSCSI协议层的方框图;图3是图解说明图1的在独立的硬件实现的iSCSI路径和软件实现的iSCSI路径之间进行选择,以便处理输入/输出请求的过程的流程图。具体实施方式本发明的实施例提供一种在独立的硬件实现的iSCSI路径和软件实现的iSCSI路径之间进行选择,以便在数据通信环境中处理输入/输出请求的方法、系统和计算机程序产品。根据本发明的一个实施例,配置成传送请求流的主机中的第一处理器可被监视;与存储装置耦接的适配器中的第二处理器可被监视。通过所述监视,能够确定每个处理器的利用率(utilization)。从而,根据这两个处理器利用率的值,可通过软件iSCSI路径或者通过硬件iSCSI路径路由请求流中的请求。 作为进一步的例证,图1是在独立的硬件实现的iSCSI路径和软件实现的iSCSI路径之间进行选择,以便处理输入/输出请求的数据处理网络的示意图。数据处理网络可包括通过在网络150中利用iSCSI协议,与一个或多个数据存储装置170通信耦接的一个或多个主机100,比如客户机工作站。各种应用105可在主机计算机100上运行,但是这些应用可以是CPU约束的(CPU-bound)(CPU限制的(CPU-limited))或者是I/O约束的(吞吐量限制的)。例如,文件服务器的性能(工作负载)一般由I/O带宽驱动,而web服务器的工作负载一般由CPU带宽驱动。对于应用受I/O约束的那些情况,软件(SW)iSCSI实现(120、125、130和135)证明更有益。相反,对于应用受CPU约束的那些情况,硬件(HW)iSCSI实现(140和145)证明更有益。在本实施例中,软件iSCSI指的是几乎完全在主机处理器101中执行的iSCSI的软件实现,除了一般包括在网络接口控制器(NIC)135中的那些功能之外(比如循环冗余校验(CRC)的计算和中断聚结(interruptcoalescence))之外。硬件(HW)iSCSI或者(iSCSI/TOE)指的是在主机总线适配器(HBA)145中的iSCSI/TOE中执行的固件的iSCSI实现。HBA 145的处理功能可由各种电子装置,包括专用集成芯片(ASIC),现场可编程门阵列(FPGA)和分组处理器芯片提供。 iSCSI监视控制逻辑115可以是监视主机处理器101和HBAiSCSI处理器145的某些性能参数,并把I/O请求路由到“优选的”路径(例如HW iSCSI或者SW iSCSI),从而增强整个系统性能的自适应算法。iSCSI监视控制逻辑115可被置于如图1中所示的主机软件内或者与之关联,或者与HBA适配器145或者Gb以太网网络接口卡(NIC)135关联。对于通过同时使用HW iSCSI路径和SW iSCSI路径来增强性能的那些情况,引入“镜像”会话的概念。在镜像会话期间,在iSCSI层次保持单一的会话,但是在会话建立阶段创建独立的TCP连接,一个TCP连接通过SW iSCSI路径,另一TCP连接通过HWiSCSI路径。 为了简化iSCSI监视控制逻辑115选择功能的应用,操作系统,或者Gb以太网NIC卡135和HBA iSCSI/TOE 145的处理逻辑可与iSCSI监视控制逻辑115耦接。这些操作系统一般能够提供转达主机CPU 101和HBA处理器145的利用率的计数器。 现在参见图2的方框图,图2图解说明包括应用层和iSCSI监视控制逻辑层的iSCSI协议层。操作上,应用105能够向SCSI栈层110发出文件系统或磁盘命令,SCSI栈层110随后把命令封装到命令描述符块(CDB)中。iSCSI监视控制逻辑115能够监视各种系统参数(例如各个处理器的计数器),并确定是把封装的CDB路由到SW iSCSI路径(它可包括SW iSCSI始发者120,TCP/IP 125,NIC驱动器140和Gb以太网NIC卡135)还是路由到HW iSCSI路径(它可包括HBA驱动器130和HBA iSCSI/TOE 145),如图1中所示。 在任意一种情况下,封装的CDB可由层205的iSCSI命令串行化,这会导致一个协议数据单元(PDU)。TCP协议在层210提供,这会导致一个TCP片段,所述TCP片段可在IP层215被转换成数据报。最后,应用以太网(链路)层135,从而产生通过网络150传输的帧。当选择SW iSCSI路径时,主机CPU 101能够处理1-6层,而Gb以太网NIC 135能够处理7层。但是在选择HW iSCSI路径的情况下,主机CPU 101能够处理1-3层,而HBA适配器145能够处理4-7层。因此,HW iSCSI路径的选择能够释放主机CPU 101上的有价值的处理带宽。 作为进一步的例证,图3是图解说明图1的在独立的硬件实现的iSCSI路径和软件实现的iSCSI路径之间进行选择,以便处理输入/输出请求的过程的流程图。始于判定框305,确定主机CPU 101的百分比(%)利用率(例如用于处理指令的处理器周期的百分率),以了解Rh是否为100%(即,完全利用)。如果是,那么在方框310,确定适配器处理...

【专利技术属性】
技术研发人员:甘内施巴拉克利什宁乔治R罗德里格斯
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1