Split socket send queue apparatus and method with efficient queue flow control, retransmission and sack support mechanisms

    公开(公告)号:US20060212563A1

    公开(公告)日:2006-09-21

    申请号:US11418606

    申请日:2006-05-05

    IPC分类号: G06F15/173

    摘要: A mechanism for offloading the management of send queues in a split socket stack environment, including efficient split socket queue flow control and TCP/IP retransmission support. As consumers initiate send operations, send work queue entries (SWQEs) are created by an Upper Layer Protocol (ULP) and written to the send work queue (SWQ). The Internet Protocol Suite Offload Engine (IPSOE) is notified of a new entry to the SWQ and it subsequently reads this entry that contains pointers to the data that is to be transmitted. After the data is transmitted and acknowledgments are received, the IPSOE creates a completion queue entry (CQE) that is written into the completion queue (CQ). After the CQE is written, the ULP subsequently processes the entry and removes it from the CQE, freeing up a space in both the SWQ and CQ. The number of entries available in the SWQ are monitored by the ULP so that it does not overwrite any valid entries. Likewise, the IPSOE monitors the number of entries available in the CQ, so as not overwrite the CQ. The flow control between the ULP and the IPSOE is credit based. The passing of CQ credits is the only explicit mechanism required to manage flow control of both the SWQ and the CQ between the ULP and the IPSOE.

    Receive queue device with efficient queue flow control, segment placement and virtualization mechanisms
    2.
    发明申请
    Receive queue device with efficient queue flow control, segment placement and virtualization mechanisms 有权
    接收具有高效队列流控制,段放置和虚拟化机制的队列设备

    公开(公告)号:US20060259644A1

    公开(公告)日:2006-11-16

    申请号:US11487265

    申请日:2006-07-14

    IPC分类号: G06F15/16

    摘要: A mechanism for offloading the management of receive queues in a split (e.g. split socket, split iSCSI, split DAFS) stack environment, including efficient queue flow control and TCP/IP retransmission support. An Upper Layer Protocol (ULP) creates receive work queues and completion queues that are utilized by an Internet Protocol Suite Offload Engine (IPSOE) and the ULP to transfer information and carry out send operations. As consumers initiate receive operations, receive work queue entries (RWQEs) are created by the ULP and written to the receive work queue (RWQ). The ISPOE is notified of a new entry to the RWQ and it subsequently reads this entry that contains pointers to the data that is to be received. After the data is received, the IPSOE creates a completion queue entry (CQE) that is written into the completion queue (CQ). After the CQE is written, the ULP subsequently processes the entry and removes it from the CQE, freeing up a space in both the RWQ and CQ. The number of entries available in the RWQ are monitored by the ULP so that it does not overwrite any valid entries. Likewise, the IPSOE monitors the number of entries available in the CQ, so as not overwrite the CQ.

    摘要翻译: 一种用于卸载分裂(例如,分裂式插座,拆分式iSCSI,拆分式DAFS)堆栈环境中接收队列管理的机制,包括有效的队列流控制和TCP / IP重传支持。 上层协议(ULP)创建互联网协议套件卸载引擎(IPSOE)和ULP利用的接收工作队列和完成队列,以传输信息并执行发送操作。 当消费者开始接收操作时,接收工作队列条目(RWQE)由ULP创建并写入接收工作队列(RWQ)。 通知ISPOE对RWQ的新条目,并随后读取包含要接收的数据的指针的该条目。 接收到数据后,IPSOE创建写入完成队列(CQ)的完成队列条目(CQE)。 在编写CQE之后,ULP随后处理该条目并将其从CQE中移除,释放了RWQ和CQ两者中的空间。 RWQ中可用的条目数由ULP监视,以便它不会覆盖任何有效的条目。 同样,IPSOE监视CQ中可用条目的数量,以免覆盖CQ。

    System and method for file based I/O directly between an application instance and an I/O adapter
    3.
    发明申请
    System and method for file based I/O directly between an application instance and an I/O adapter 审中-公开
    应用程序实例和I / O适配器之间的基于文件的I / O的系统和方法

    公开(公告)号:US20070168567A1

    公开(公告)日:2007-07-19

    申请号:US11216736

    申请日:2005-08-31

    IPC分类号: G06F3/00

    摘要: A system, method, and computer program product that enables user space middleware or applications to pass file name based storage requests directly to a physical I/O adapter without run-time involvement from the local Operating System (OS) are provided. A mechanism is provided for using a file protection table (FPT) data structure, which may include a file name protection table (FNPT) and file extension protection table (FEPT), to control user space and out of user space Input/Output (I/O) operations. In addition, a doorbell message and processing queue mechanism are provided for notifying the I/O adapter of work requests to be processed by the I/O adapter.

    摘要翻译: 提供了一种系统,方法和计算机程序产品,可使用户空间中间件或应用程序将基于文件名的存储请求直接传递到物理I / O适配器,而无需本地操作系统(OS)的运行时间参与。 提供了一种用于使用文件保护表(FPT)数据结构的机制,其可以包括文件名保护表(FNPT)和文件扩展保护表(FEPT),以控制用户空间和用户空间输入/输出(I / O)操作。 另外,提供了门铃消息和处理队列机制,用于通知I / O适配器要由I / O适配器处理的工作请求。

    Creation and management of routing table for PCI bus address based routing with integrated DID
    4.
    发明申请
    Creation and management of routing table for PCI bus address based routing with integrated DID 审中-公开
    基于PCI总线地址的路由表的创建和管理,集成了DID

    公开(公告)号:US20070165596A1

    公开(公告)日:2007-07-19

    申请号:US11334678

    申请日:2006-01-18

    IPC分类号: H04L12/28 H04L12/56

    摘要: A method is provided for creating and managing tables for routing packets through an environment that includes multiple hosts and shared PCI switches and adapters. A Destination Identification (DID) field in the PBA is appended to a transaction packet dispatched through the PCI switches, wherein a particular DID is associated with a particular host or system image, and thus identifies the physical or virtual end point of its packet. In one embodiment, packets are routed through PCI switches in a distributed computer system comprising multiple root nodes, wherein each root node includes one or more hosts. The embodiment includes the step of creating a table or like data structure in a specified one of the switches. When a particular host of one of the root nodes becomes connected to the specified switch, a PCI Configuration Master (PCM), residing in one of the root nodes, is operated to enter a destination identifier or DID into the table. The DID is then appended as an address component, to packets directed through the specified switch from the particular host to one of the adapters. The destination identifier is also used to determine that a PCI packet, routed through the specified switch from one of the adapters, is intended for the particular root node.

    摘要翻译: 提供了一种创建和管理表以通过包括多个主机和共享PCI交换机和适配器的环境路由数据包的方法。 PBA中的目的地标识(DID)字段附加到通过PCI交换机分派的事务分组,其中特定的DID与特定主机或系统映像相关联,并且因此标识其分组的物理或虚拟终点。 在一个实施例中,分组通过包括多个根节点的分布式计算机系统中的PCI交换机路由,其中​​每个根节点包括一个或多个主机。 该实施例包括在指定的一个开关中创建表或类似数据结构的步骤。 当一个根节点的特定主机连接到指定的交换机时,驻留在其中一个根节点的PCI配置主机(PCM)被操作以在表中输入目的地标识符或DID。 然后,将DID作为地址组件附加到通过指定的交换机从特定主机引导到其中一个适配器的数据包。 目的地标识符还用于确定通过指定交换机从其中一个适配器路由的PCI数据包是针对特定根节点的。

    System and method for processing user space operations directly between an application instance and an I/O adapter
    5.
    发明申请
    System and method for processing user space operations directly between an application instance and an I/O adapter 失效
    用于在应用程序实例和I / O适配器之间直接处理用户空间操作的系统和方法

    公开(公告)号:US20070078892A1

    公开(公告)日:2007-04-05

    申请号:US11216712

    申请日:2005-08-31

    IPC分类号: G06F17/00

    CPC分类号: G06F21/85 G06F21/78

    摘要: A system, method, and computer program product that enables user space middleware or applications to pass file name based storage requests directly to a physical I/O Adapter without run-time involvement from the local Operating System (OS) are provided. A mechanism is provided for using a file protection table (FPT) data structure, which may include a file name protection table (FNPT) and file extension protection table (FEPT), to control user space and out of user space Input/Output (I/O) operations. In addition, a mechanism is provided for managing the FPT based on user space operations to create, query, modify and delete entries in the FPT.

    摘要翻译: 提供了一种使用户空间中间件或应用程序可以将基于文件名的存储请求直接传递到物理I / O适配器的系统,方法和计算机程序产品,而无需本地操作系统(OS)的运行时参与。 提供了一种用于使用文件保护表(FPT)数据结构的机制,其可以包括文件名保护表(FNPT)和文件扩展保护表(FEPT),以控制用户空间和用户空间输入/输出(I / O)操作。 另外,提供了一种基于用户空间操作来管理FPT以在FPT中创建,查询,修改和删除条目的机制。

    System and method for out of user space I/O with server authentication
    6.
    发明申请
    System and method for out of user space I/O with server authentication 失效
    用户空间的系统和方法I / O与服务器认证

    公开(公告)号:US20070050591A1

    公开(公告)日:2007-03-01

    申请号:US11216879

    申请日:2005-08-31

    IPC分类号: G06F12/00

    摘要: A system, method, and computer program product that enables user space middleware or applications to pass I/O storage requests directly to a network attached storage device via a storage server that performs authentication are provided. A mechanism is provided for using a translation protection table (TPT) data structure, which may include a file name protection table (FNPT) and file extension protection table (FEPT), or logical volume protection table (LVPT), to control user space and out of user space Input/Output (I/O) operations. The storage server performs authentication of an application instance's request to open an operating system logical volume and, upon being authenticated, permits the application instance to submit I/O storage requests via the TPT to the opened OS logical volume. I/O storage requests are translated into storage commands using the TPT and the storage commands are encapsulated for transmission via one or more networks to the storage server.

    摘要翻译: 提供了一种使用户空间中间件或应用程序通过执行认证的存储服务器将I / O存储请求直接传递到网络连接的存储设备的系统,方法和计算机程序产品。 提供了一种用于使用翻译保护表(TPT)数据结构的机制,其可以包括文件名保护表(FNPT)和文件扩展保护表(FEPT)或逻辑卷保护表(LVPT),以控制用户空间和 用户空间输入/输出(I / O)操作。 存储服务器执行应用程序实例的打开操作系统逻辑卷的请求的认证,并且在被认证后允许应用实例经由TPT将I / O存储请求提交到打开的OS逻辑卷。 使用TPT将I / O存储请求转换为存储命令,并且存储命令被封装以经由一个或多个网络传输到存储服务器。

    System and method for processing block mode I/O operations using a linear block address translation protection table
    7.
    发明申请
    System and method for processing block mode I/O operations using a linear block address translation protection table 审中-公开
    使用线性块地址转换保护表处理块模式I / O操作的系统和方法

    公开(公告)号:US20070005815A1

    公开(公告)日:2007-01-04

    申请号:US11135257

    申请日:2005-05-23

    IPC分类号: G06F3/00

    摘要: The present invention provides a system, method, and computer program product that enables application instances to pass block mode storage requests directly to a physical I/O adapter without run-time involvement from the local operating system or hypervisor. Specifically, a mechanism for providing and using a linear block address (LBA) translation protection table (TPT) to control out of user space I/O operations is provided. In one aspect of the present invention, the LBATPT includes an adapter protection table that has entries for each portion of a storage device and a corresponding LBA table having entries for identifying the linear block addresses associated with an adapter protection table entry. Table entries are correlated with one another using an LBA table pointer. Adapter protection table entries are associated with application instances using a key instance.

    摘要翻译: 本发明提供一种系统,方法和计算机程序产品,其使得应用程序实例能够将块模式存储请求直接传递到物理I / O适配器,而无需本地操作系统或管理程序的运行时间。 具体地,提供了用于提供和使用线性块地址(LBA)转换保护表(TPT)以控制用户空间I / O操作的机制。 在本发明的一个方面,LBATPT包括适配器保护表,其具有用于存储设备的每个部分的条目以及具有用于标识与适配器保护表条目相关联的线性块地址的条目的相应LBA表。 表条目使用LBA表指针彼此相关。 适配器保护表条目与使用密钥实例的应用程序实例相关联。

    Method, apparatus, and computer usable program code for migrating virtual adapters from source physical adapters to destination physical adapters
    8.
    发明申请
    Method, apparatus, and computer usable program code for migrating virtual adapters from source physical adapters to destination physical adapters 有权
    将虚拟适配器从源物理适配器迁移到目标物理适配器的方法,设备和计算机可用程序代码

    公开(公告)号:US20070186025A1

    公开(公告)日:2007-08-09

    申请号:US11351020

    申请日:2006-02-09

    IPC分类号: G06F13/14

    CPC分类号: G06F9/5077

    摘要: A computer-implemented method, apparatus, and computer usable program code are disclosed for migrating a virtual adapter from a source physical adapter to a destination physical adapter in a data processing system where multiple host computer systems share multiple adapters and communicate with those adapters through a PCI switched-fabric bus. The virtual adapter is first caused to stop processing transactions. All in-flight transactions that are associated with the virtual adapter are then captured. The configuration information that defines the virtual adapter is moved from the source physical adapter to the destination physical adapter. The in-flight transactions are then restored to their original locations on the destination virtual adapter. The virtual adapter is then restarted on the destination physical adapter such that the virtual adapter begins processing transactions.

    摘要翻译: 公开了一种计算机实现的方法,装置和计算机可用程序代码,用于在数据处理系统中将虚拟适配器从源物理适配器迁移到目标物理适配器,其中多个主机计算机系统共享多个适配器并通过以下方式与这些适配器通信 PCI交换矩阵总线。 首先导致虚拟适配器停止处理事务。 然后捕获与虚拟适配器关联的所有飞行中事务。 定义虚拟适配器的配置信息从源物理适配器移动到目标物理适配器。 飞行中的事务然后恢复到目标虚拟适配器上的原始位置。 虚拟适配器然后在目标物理适配器上重新启动,以便虚拟适配器开始处理事务。

    Routing of shared I/O fabric error messages in a multi-host environment to a master control root node
    9.
    发明申请
    Routing of shared I/O fabric error messages in a multi-host environment to a master control root node 有权
    将多主机环境中的共享I / O架构错误消息路由到主控制根节点

    公开(公告)号:US20070174733A1

    公开(公告)日:2007-07-26

    申请号:US11340447

    申请日:2006-01-26

    IPC分类号: G06F11/00

    摘要: A computer-implemented method, apparatus, and computer program product are disclosed for routing error messages in a multiple host computer system environment to only those host computer systems that are affected by the error. The environment includes multiple host computer systems that share multiple devices utilizing a switched fabric. An error is detected in one of the devices. Routing tables that are stored in fabric devices in the fabric are used to identify ones of the host computer systems that are affected by the error. An error message that identifies the error is routed to only the identified ones of the host computer systems.

    摘要翻译: 公开了一种计算机实现的方法,装置和计算机程序产品,用于将多个主机计算机系统环境中的错误消息路由到只有那些受错误影响的主机计算机系统。 环境包括使用交换结构共享多个设备的多个主机系统。 在其中一个设备中检测到错误。 存储在结构中的结构设备中的路由表用于标识受错误影响的主机系统。 标识错误的错误消息仅路由到主机计算机系统中的已识别错误消息。

    Creation and management of destination ID routing structures in multi-host PCI topologies
    10.
    发明申请
    Creation and management of destination ID routing structures in multi-host PCI topologies 有权
    多主机PCI拓扑中目标ID路由结构的创建和管理

    公开(公告)号:US20070097948A1

    公开(公告)日:2007-05-03

    申请号:US11260610

    申请日:2005-10-27

    IPC分类号: G06F13/00 H04L12/28

    CPC分类号: G06F13/4004 G06F2213/0026

    摘要: System and method for managing routing of data in a distributed computing system, such as a distributed computing system that uses PCI Express protocol to communicate over an I/O fabric. A physical tree that is indicative of a physical configuration of the distributed computing system is determined, and a virtual tree is created from the physical tree. The virtual tree is then modified to change an association between at least one source device and at least one target device in the virtual tree. A validation mechanism validates the changed association between the at least one source device and the at least one target device to enable routing of data from the at least one source device to the at least one target device.

    摘要翻译: 用于管理分布式计算系统中的数据路由的系统和方法,例如使用PCI Express协议通过I / O结构进行通信的分布式计算系统。 确定指示分布式计算系统的物理配置的物理树,并且从物理树创建虚拟树。 然后修改虚拟树以改变至少一个源设备和虚拟树中的至少一个目标设备之间的关联。 验证机制验证所述至少一个源设备和所述至少一个目标设备之间改变的关联,以使数据能够从所述至少一个源设备路由到所述至少一个目标设备。