Patents by Inventor Gregory Francis Pfister

Gregory Francis Pfister has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20030035433
    Abstract: An apparatus and method for virtualizing a queue pair space to minimize time-wait impacts. The apparatus and method allocate virtual queue pairs from a virtual queue pair pool of a node to connections between the node and other nodes. The connection is established between a physical queue pair of the node and physical queue pairs of other nodes. However, from the viewpoint of the other nodes, they are communicating with the present node using the virtual queue pair and not the physical queue pair for the present node. By using the virtual queue pairs, the same physical queue pair may accommodate multiple connections with other nodes simultaneously. Moreover, by using a virtual queue pair rather than a physical queue pair, when a connection is torn down, the virtual queue pair is placed in a time-wait state rather than the physical queue pair. As a result, the physical queue pair may continue to function while the virtual queue pair is in the time-wait state.
    Type: Application
    Filed: August 16, 2001
    Publication date: February 20, 2003
    Applicant: International Business Machines Corporation
    Inventors: David F. Craddock, Danny Marvin Neal, Gregory Francis Pfister, Renato John Recio
  • Publication number: 20030031183
    Abstract: A method for determining parameters needed to communicate with a remote node in a computer network is provided. The invention comprises determining the location of the remote node to which an InfiniBand (IB) node might desire to communicate. This resolution comprises determining the location of the remote node based on a desired application or service, and then determining the IB parameters needed to communicate with the remote node. The resolution might also involve determining the specific queue pairs that associated with the service dynamically. The general solution is applied to IP service resolution.
    Type: Application
    Filed: August 9, 2001
    Publication date: February 13, 2003
    Applicant: International Business Machines Corporation
    Inventors: Vivek Kashyap, Danny Marvin Neal, Gregory Francis Pfister, Renato John Recio
  • Publication number: 20030033426
    Abstract: An apparatus and method for implementing mulitcast in system area network channel adapters are provided. With the apparatus and method, a multicast packet is received in a channel adapter of an end node. The channel adapter determines which local queue pairs are party of the multicast group identified by a destination local identifier in the multicast data packet. Based on this determination, the channel adapter replicates the data packet and delivers a copy of the data packet to each local queue pair that is part of the multicast group.
    Type: Application
    Filed: August 9, 2001
    Publication date: February 13, 2003
    Applicant: International Business Machines Corporation
    Inventors: Bruce Leroy Beukema, Gregory Francis Pfister, Renato John Recio, Steven Mark Thurber
  • Publication number: 20030033487
    Abstract: A method, apparatus, and computer implemented instructions for managing a plurality of caches of data, wherein the data processing system includes a plurality of independent computers. In response to initiating a read operation to read data on a data block, an indication is posted on a directory of data blocks identifying the computer that now holds a copy of that block and a location in the memory of that computer where a flag associated with that block is held. Then in response to initiating a write operation on that data block, messages are sent to all the computers holding that block which resets the said flag, thus informing each computer that the data in that block is no longer valid. These messages are sent using means that perform that flag reset without, in the preferred embodiment, any overhead of interruption of processing on the computers where the flags reside.
    Type: Application
    Filed: August 9, 2001
    Publication date: February 13, 2003
    Applicant: International Business Machines Corporation
    Inventors: Gregory Francis Pfister, Renato John Recio, Noshir Cavas Wadia
  • Publication number: 20030023786
    Abstract: An apparatus and method for managing work and completion queues using head and tail circular pointers. With the apparatus and method, queue head and tail pointers are maintained in the channel interface and the host channel adapter. The head and tail pointers in the host channel adapter include a queue pointer table index and a queue page index for identifying a position within the queue. For work queues, the tail pointer in the channel interface is used to identify a next position where a work queue entry may be written. The head pointer in the channel interface is used only to determine whether the work queue is full or not. The head pointer in the host channel adapter is used to identify a next work queue entry for processing by the host channel adapter. The tail pointer in the host channel adapter is used by the host channel adapter to determine if the queue is empty. For completion queues, the head pointer in the channel interface is used to identify a next completion queue entry to be processed.
    Type: Application
    Filed: July 26, 2001
    Publication date: January 30, 2003
    Applicant: International Business Machines Corporation
    Inventors: David F. Craddock, Thomas Anthony Gregg, Ian David Judd, Gregory Francis Pfister, Renato John Recio, Donald William Schmidt
  • Publication number: 20030018787
    Abstract: A system and method for establishing multiple connections using a private data field of a communication management protocol is provided. With the present invention, a Service ID identifies a specific consumer and the private data field contains a list of connection attributes for each connection that is to be established. An active side requests a connection and the passive side replies to the connection request. The active side sends the passive side a connection establishment request. This connection establishment request includes a Service ID which identifies a passive side process associated with a service. This connection establishment request also includes communication attributes of one or more connected services and datagram services associated with the Service ID. The passive passes the connection request to a process associated with the service. If the passive side process does not wish to carry out the service, a negative reply message is returned to the active side.
    Type: Application
    Filed: July 12, 2001
    Publication date: January 23, 2003
    Applicant: International Business Machines Corporation
    Inventors: Danny Marvin Neal, Gregory Francis Pfister, Renato John Recio
  • Publication number: 20030016669
    Abstract: A method and system for a queue identification (QI) system which significantly reduces resources required to identify a process associated with receiving an incoming packet is provided. A QI mechanism is used as a TCP option. During a TCP connection establishment process, QI numbers are exchanged for both a sending port and a receiving port of the connection. After the connection is established, the destination QI's number is inserted in a Transmission Control Protocol (TCP) header on outbound packets.
    Type: Application
    Filed: July 12, 2001
    Publication date: January 23, 2003
    Applicant: International Business Machines Corporation
    Inventors: Gregory Francis Pfister, Renato John Recio
  • Publication number: 20030005039
    Abstract: A method and system for a distributed computing system having components like end nodes, switches, routers and links interconnecting packets over the interconnecting links. The switches and routers interconnect the end nodes and route the packets to the appropriate end node. The end nodes reassemble the packets into a message at a destination. A mechanism is provided to allow a single physical component to appear as multiple components each with unique control levels. These components may be host channel adapters (HCAs), target channel adapters (TCAs) or switches. A method and system for end node partitioning for a physical element is provided. A configuration of the physical element is selected. A port associated with the physical element is probed, wherein the port is probed with a subnet management packet by a subnet manager. In response to detecting a switch associated with the port, a local identifier is assigned to the port resulting in a configuration change of the physical element.
    Type: Application
    Filed: June 29, 2001
    Publication date: January 2, 2003
    Applicant: International Business Machines Corporation
    Inventors: David F. Craddock, David Arlen Elko, Thomas Anthony Gregg, Gregory Francis Pfister, Renato John Recio
  • Publication number: 20020199113
    Abstract: An apparatus and method for distributed intersystem lock optimization are provided. With the apparatus and method of the present invention, the time required to obtain an uncontested lock, meaning a lock that no other program or process in the distributed system is simultaneously attempting to acquire, is minimized. The apparatus and method of the present invention increases the speed with which locks are acquired by splitting the process of obtaining a lock into two separate operations: a test for contention, and then if contention exists, a full lock operation. The test for contention is made fast by associating each lock with a memory location, and using an atomic operation or the like, to atomically set the memory location associated with the lock to a different value. If the lock is found to be contested, meaning that another program or process has already locked it, control is turned over to a slower operation than ensures that the lock-requesting program or process will eventually be granted the lock.
    Type: Application
    Filed: June 21, 2001
    Publication date: December 26, 2002
    Applicant: International Business Machines Corporation
    Inventors: Gregory Francis Pfister, Renato John Recio, Noshir Cavas Wadia
  • Publication number: 20020091841
    Abstract: A method and apparatus for accessing a memory. Access rights for a memory operation are verified using a first data structure in response to receiving a request to perform the operation, wherein the request includes a virtual address for the operation. Responsive to access rights being verified for the memory operation, the virtual address translated into a real address using a second data structure.
    Type: Application
    Filed: January 11, 2001
    Publication date: July 11, 2002
    Applicant: International Business Machines Corporation
    Inventors: Bruce Leroy Beukema, David Craddock, Ronald Edward Fuhs, Thomas Anthony Gregg, Gregory Francis Pfister, Renato John Recio, Steven L. Rogers
  • Publication number: 20020091852
    Abstract: A method, apparatus, and computer implemented instructions for transferring data. A request is sent by a requester to a responder. The request includes an amount of available processing space at the requestor. When the request is received from the responder, data is identified using the request. The data is placed into a plurality of subsequences of data packets for transfer to the requester, wherein each packet within the set of subsequences hold data in amount less than or equal to the amount of available space. These subsequences are then sent to the requestor one subsequence at a time. A new subsequence is sent each time the available processing space at the requester becomes free to process data from another subsequence. The requestor receives a subsequence from the plurality of subsequences in response to the request each time the amount of available processing space is free, wherein data within each of the set of subsequences fits within the amount of available processing space.
    Type: Application
    Filed: January 11, 2001
    Publication date: July 11, 2002
    Applicant: International Business Machines Corporation
    Inventors: Giles Roger Frazier, Gregory Francis Pfister, Renato John Recio
  • Publication number: 20020078265
    Abstract: A method, apparatus, and computer implemented instructions for transferring data. A sender sends a plurality of data packets and a receiver receives a plurality of data packets. The data packet within the set of data packets includes a unit of data and an identifier of a location of the unit of data within the packet relative to units of data in other data packets within the plurality of data packets. Data from the units of data in the plurality of data packets are reassembled using indicators in the plurality of data packets.
    Type: Application
    Filed: December 15, 2000
    Publication date: June 20, 2002
    Inventors: Giles Roger Frazier, Gregory Francis Pfister