Patents by Inventor Colin C. Sharp

Colin C. Sharp 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).

  • Patent number: 8248939
    Abstract: In one embodiment, a system for communicating over a network is disclosed, the system comprising: a processor running a protocol processing stack to control a TCP connection; a first offload engine that receives control of the TCP connection from the stack to perform a first task corresponding to the TCP connection; and a second offload engine that receives control of the TCP connection from the first offload engine to perform a second task corresponding to the TCP connection. For example, the first offload engine can be protocol software such as an intermediate driver that can handle tasks such as teaming and/or reassembly of out-of-order data segments. As another example, the second offload engine can be a network interface card that provides hardware that accelerates data transfer.
    Type: Grant
    Filed: October 11, 2005
    Date of Patent: August 21, 2012
    Assignee: Alacritech, Inc.
    Inventors: Peter K. Craft, Joseph L. Gervais, Colin C. Sharp
  • Patent number: 7496689
    Abstract: A TCP/IP offload network interface device (NID) is integrated with a processing device that executes a stack. The TCP/IP offload NID can either be a full TCP/IP offload device or a partial TCP/IP offload device. Common types of packets are processed by the NID in a fast-path such that the stack is offloaded of TCP and IP protocol processing tasks. A hash is made from the packet header and is pushed onto a queue. The hash is later popped off the queue and is used to identify an associated TCB number from a hash table. A mechanism caches hash buckets in SRAM and stores other hash buckets in DRAM. An “IN SRAM CAM” is used to determine whether the TCB associated with the identified TCB number is cached in SRAM or whether it must be moved from DRAM into the SRAM cache. A lock table and a “lock table CAM” mechanism is disclosed that facilitates multiple processors working on the protocol processing of a single packet.
    Type: Grant
    Filed: April 22, 2003
    Date of Patent: February 24, 2009
    Assignee: Alacritech, Inc.
    Inventors: Colin C. Sharp, Clive M. Philbrick, Daryl D. Starr, Stephen E. J. Blightman
  • Patent number: 7287092
    Abstract: A TCP/IP offload network interface device (NID) receives packets from a plurality of clients and generates, from the socket address of each such packet, a hash value. Each hash value identifies one of a plurality of hash buckets maintained on the NID. In a file server, certain socket address bits of the packets are low entropy bits in that they tend to be the same, regardless of which client sent the packet. Others of the socket address bits are high entropy bits. The hash function employed is such that the hash values resulting from the changing values of the high entropy bits are substantially evenly distributed among the plurality of hash buckets. In a fast-path, the NID uses a first hash function to identify TCBs on the NID. In a slow-path, the NID generates a second hash using a second hash function and a host stack uses the second hash.
    Type: Grant
    Filed: August 11, 2003
    Date of Patent: October 23, 2007
    Inventor: Colin C. Sharp
  • Publication number: 20040062245
    Abstract: A TCP/IP offload network interface device (NID) is integrated with a processing device that executes a stack. The TCP/IP offload NID can either be a full TCP/IP offload device or a partial TCP/IP offload device. Common types of packets are processed by the NID in a fast-path such that the stack is offloaded of TCP and IP protocol processing tasks. A hash is made from the packet header and is pushed onto a queue. The hash is later popped off the queue and is used to identify an associated TCB number from a hash table. A mechanism caches hash buckets in SRAM and stores other hash buckets in DRAM. An “IN SRAM CAM” is used to determine whether the TCB associated with the identified TCB number is cached in SRAM or whether it must be moved from DRAM into the SRAM cache. A lock table and a “lock table CAM” mechansim is disclosed that facilitates multiple processors working on the protocol processing of a single packet.
    Type: Application
    Filed: April 22, 2003
    Publication date: April 1, 2004
    Inventors: Colin C. Sharp, Clive M. Philbrick, Daryl D. Starr, Stephen E.J. Blightman