Patents by Inventor Denton E. Gentry

Denton E. Gentry 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: 20240031326
    Abstract: Described herein are systems, methods, and software to manage communications for a network with overlapping IPv4 addressing subnets. In one example, a method of operating a gateway includes receiving a first packet that encapsulates a second packet, the second packet comprising an IPv6 destination address. The method further includes decapsulating the first packet to obtain the second packet, translating the IPv6 destination address to an IPv4 destination address, and communicating the second packet with the IPv4 destination address in place of the IPv6 destination address to a destination computing element.
    Type: Application
    Filed: January 20, 2023
    Publication date: January 25, 2024
    Inventors: Denton E. Gentry, JR., Bradley J. Fitzpatrick, Maya Kaczorowski, David Crawshaw
  • Patent number: 9323308
    Abstract: A system includes a power-consuming, at least one energy storage device, and a power management system. The facility is configured to receive electrical power from an electric utility grid. The energy storage device is located at the power consuming facility and is configured to store electrical energy from the electrical power received from the electric utility grid. The power management system is configured to receive, from the electric utility grid, a request that indicates an amount of power and, in response to the request, to cause at least a portion of the power-consuming facility to be powered by the at least one energy storage device rather than the power received from the electric utility grid such that an amount of the received power consumed by the power-consuming facility is reduced by at least the indicated amount.
    Type: Grant
    Filed: November 18, 2013
    Date of Patent: April 26, 2016
    Assignee: Google Inc.
    Inventors: Taliver Brooks Heath, Denton E. Gentry
  • Patent number: 8588989
    Abstract: A system includes a power-consuming, at least one energy storage device, and a power management system. The facility is configured to receive electrical power from an electric utility grid. The energy storage device is located at the power consuming facility and is configured to store electrical energy from the electrical power received from the electric utility grid. The power management system is configured to receive, from the electric utility grid, a request that indicates an amount of power and, in response to the request, to cause at least a portion of the power-consuming facility to be powered by the at least one energy storage device rather than the power received from the electric utility to grid such that an amount of the received power consumed by the power-consuming facility is reduced by at least the indicated amount.
    Type: Grant
    Filed: April 29, 2010
    Date of Patent: November 19, 2013
    Assignee: Google Inc.
    Inventors: Taliver Brooks Heath, Denton E. Gentry
  • Patent number: 7328294
    Abstract: The present invention relates to handling interrupts in a multiprocessor system. An interrupt controller can receive input from a variety of interrupt sources, such as peripheral components and peripheral interfaces. Interrupts and their associated characteristics are identified. In one example, interrupt characteristics can be compared with characteristics of other interrupts handled by processors in the multiprocessor system. Interrupt characteristics are used to select a processor to run a routine for handling the associated interrupt. Intelligent selection provides efficient and effective distribution of interrupts.
    Type: Grant
    Filed: December 3, 2001
    Date of Patent: February 5, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Ted Kim, Denton E. Gentry, Jr.
  • Patent number: 6650640
    Abstract: A system and method are provided for managing information concerning a network flow comprising packets sent from a source entity to a destination entity served by a network interface. A network flow is established for each datagram sent from the source entity to the destination entity. A flow key, identifying the source and destination entities, is stored in a data structure along with information concerning validity of the flow, sequence of data in the flow datagram and how recently the flow was active. Once a flow is established, it is updated each time a packet containing data from the flow's datagram is received. When such a packet is received, an operation code is generated for identifying whether the packet is suitable for a particular network interface function. An operation code may, for example, indicate that a packet contains data to be re-assembled with other data from the same flow. Another operation code may indicate that a packet is not suitable for data re-assembly.
    Type: Grant
    Filed: March 1, 1999
    Date of Patent: November 18, 2003
    Assignee: Sun Microsystems, Inc.
    Inventors: Shimon Muller, Denton E. Gentry, Jr.
  • Patent number: 6606301
    Abstract: A high performance network interface receives network traffic in the form of packets. Prior to being transferred to a host computer, a packet is stored in a packet queue. A system and method are provided for randomly discarding a packet if the rate of packet transfers cannot keep pace with the rate of packet arrivals at the queue. When a packet must be dropped a selected packet may be discarded as it arrives at the queue, or a packet already in the queue may be dropped. A packet queue is apportioned into multiple regions, any of which may overlap or share a common boundary. A probability indicator is associated with a region to specify the probability of a packet being discarded when the level of traffic stored in the queue is within the region. A counter may be employed in conjunction with a probability indicator to identify individual packets. Probability indicators may differ from region to region so that the probability of discarding a packet fluctuates as the level of traffic stored in the queue changes.
    Type: Grant
    Filed: March 1, 1999
    Date of Patent: August 12, 2003
    Assignee: Sun Microsystems, Inc.
    Inventors: Shimon Muller, Linda T. Cheng, Denton E. Gentry, Jr.
  • Publication number: 20030105798
    Abstract: The present invention relates to handling interrupts in a multiprocessor system. An interrupt controller can receive input from a variety of interrupt sources, such as peripheral components and peripheral interfaces. Interrupts and their associated characteristics are identified. In one example, interrupt characteristics can be compared with characteristics of other interrupts handled by processors in the multiprocessor system. Interrupt characteristics are used to select a processor to run a routine for handling the associated interrupt. Intelligent selection provides efficient and effective distribution of interrupts.
    Type: Application
    Filed: December 3, 2001
    Publication date: June 5, 2003
    Inventors: Ted Kim, Denton E. Gentry
  • Patent number: 6483804
    Abstract: A system and method are provided for identifying related packets in a communication flow for the purpose of collectively processing them through a protocol stack comprising one or more protocols under which the packets were transmitted. A packet received at a network interface is parsed to retrieve information from one or more protocol headers. A flow key is generated to identify a communication flow that includes the packet, and is stored in a database of flow keys. When the packet is placed in a queue to be transferred to a host computer, the flow key and/or its flow number (e.g., its index into the database) is stored in a separate queue. Near to the time at which the packet is transferred to the host computer, a dynamic packet batching module searches for a packet that is related to the packet being transferred (i.e., is in the same flow) but which will be transferred later in time.
    Type: Grant
    Filed: March 1, 1999
    Date of Patent: November 19, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Shimon Muller, Denton E. Gentry, Jr.
  • Patent number: 6480489
    Abstract: A system and method are provided for transferring a packet received from a network to a host computer according to an operation code associated with the packet. A packet received at a network interface is parsed to retrieve information from a header portion of the packet. A flow key is generated for a received packet that was formatted with one of a set of predetermined protocols. A packet's flow key identifies a communication flow that comprises the packet. Based on some of the retrieved information, a code is associated with the packet to inform a transfer engine how the packet should be transferred to host memory. Based on a packet's code, the transfer engine stores the packet in one or more host memory buffers. If the packet was formatted with one of the set of predetermined protocols, its data is re-assembled in a re-assembly buffer with data from other packets in the same communication flow. Re-assembled data may be provided to a destination application or user through page flipping.
    Type: Grant
    Filed: March 1, 1999
    Date of Patent: November 12, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Shimon Muller, Denton E. Gentry, Jr., Linda T. Cheng, John E. Watkins
  • Patent number: 6467008
    Abstract: A network interface is polled by a process operating on a host computer system. Each time the network interface is polled the process determines whether any packets have been transferred to the host. If so, they are processed. Interrupts that would normally be issued from the network interface in response to the transfer of packets are suppressed or postponed during the polling mode of operation. If, however, a predetermined period of time has elapsed or a predetermined number of packets have been transferred since a previous poll or a previous interrupt, then an interrupt may be generated.
    Type: Grant
    Filed: March 1, 1999
    Date of Patent: October 15, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Denton E. Gentry, Jr., Linda T. Cheng
  • Patent number: 6453360
    Abstract: A high performance network interface is provided for receiving a packet from a network and transferring it to a host computer system. A header portion of a received packet is parsed by a parser module to determine the packet's compatibility with, or conformance to, one or more pre-selected protocols. If compatible, a number of processing functions may be performed to increase the efficiency with which the packet is handled. In one function, a re-assembly engine re-assembles, in a re-assembly buffer, data portions of multiple packets in a single communication flow or connection. Header portions of such packets are stored in a header buffer. An incompatible packet may be stored in another buffer. In another function, a packet batching module determines when multiple packets in one flow are transferred to the host computer system, so that their header portions are processed collectively rather than being interspersed with headers of other flows' packets.
    Type: Grant
    Filed: March 1, 1999
    Date of Patent: September 17, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Shimon Muller, Denton E. Gentry, Jr., John E. Watkins, Linda T. Cheng
  • Patent number: 6434651
    Abstract: A network interface is polled by a process operating on a host computer system. Each time the network interface is polled, the process determines whether any packets have been received. If so, they are processed. Interrupts that would normally be issued by the network interface in response to the transfer of packets to the host system are suppressed or postponed during the polling mode of operation. If, however, a predetermined period of time has elapsed or a predetermined number of packets have been received since a previous poll or a previous interrupt, then an interrupt may be generated. The rate at which interrupts may be issued is modulated to decrease the interrupt-processing burden placed on the processor. A time counter may be used to track the passage of time and a packet counter may be used to track the number of packets transferred by the network interface.
    Type: Grant
    Filed: March 1, 1999
    Date of Patent: August 13, 2002
    Assignee: Sun Microsystems, Inc.
    Inventor: Denton E. Gentry, Jr.
  • Patent number: 6389468
    Abstract: A system and method are provided for distributing or sharing the processing of network traffic (e.g., through a protocol stack on a host computer system) received at a multiprocessor computer system. A packet formatted according to one or more communication protocols is received from a network entity at a network interface circuit of a multiprocessor computer. A header portion of the packet is parsed to retrieve information stored in one or more protocol headers, such as source and destination identifiers or a virtual communication connection identifier. In one embodiment, a source identifier and a destination identifier are combined to form a flow key that is subjected to a hash function. The modulus of the result of the hash function over the number of processors in the multiprocessor computer is then calculated. In another embodiment a modulus operation is performed on the packet's virtual communication connection identifier.
    Type: Grant
    Filed: March 1, 1999
    Date of Patent: May 14, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Shimon Muller, Denton E. Gentry, Jr.
  • Patent number: 6356951
    Abstract: A high performance network interface receives network traffic in the form of packets. The network interface parses one or more headers of a received packet in order to determine whether the packet has been formatted with a pre-selected protocol. If so, one or more efficient enhancements in the processing of a packet may be enabled for the packet. During parsing, header data that may be useful in the processing enhancements may be saved. A packet conforming to one or more of a set of pre-selected protocols may be more completely parsed than a packet not conforming to any of the pre-selected protocols. Instructions for parsing a packet to determine a protocol and to extract useful data are stored in a writeable random-access memory. The instructions may be replaced, modified or supplemented depending upon the composition of network traffic and the protocols selected for enhanced processing.
    Type: Grant
    Filed: March 1, 1999
    Date of Patent: March 12, 2002
    Assignee: Sun Microsystems, Inc.
    Inventor: Denton E. Gentry, Jr.
  • Patent number: 6021446
    Abstract: A network device such as an Asynchronous Transfer Method (ATM) device with a high level interrupt which begins processing a packet and transfers process control to a lower level software interrupt which completes the packet processing. Prior to the transfer of process control, the hardware interrupt generates a put information for the packet which is then retrieved and utilized by the software interrupt to process the packet. A unique generation number is assigned to each data stream generated for the packet. The generation number associated with a given packet's put information is compared to the generation number of a data stream to which the packet is destined to. If the generation numbers are equal, it is assumed that the data stream to which the packet is destined to has not been changed and the packet is forwarded to the data stream for further processing.
    Type: Grant
    Filed: July 11, 1997
    Date of Patent: February 1, 2000
    Assignee: Sun Microsystems, Inc.
    Inventor: Denton E. Gentry, Jr.
  • Patent number: 5953240
    Abstract: A CPU adapted to calculate a checksum simultaneously on multiple values packed into a single register. An adder is provided which adds a number of values packed into a first register to a number of packed values from a second register. The adder is constructed, or partitioned, so that the values do not propagate their carry bit to the next value. A special carry bit adder is provided which will add a carry bit out of each partitioned portion back into the sum value to generate the sum required by the checksum protocol.
    Type: Grant
    Filed: June 23, 1997
    Date of Patent: September 14, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: J. Arjun Prabhu, Denton E. Gentry
  • Patent number: 5875352
    Abstract: An on-chip cache memory is used to provide a high speed access mechanism to frequently used channel state information for operation of a DMA device that supports multiple virtual channels in a high speed network interface. When an access to a particular channel state is performed, e.g., by a host processor or the DMA device, the cache is first accessed and if the state information is not located currently in the cache, external memory is read and the state information is written to the cache. As the cache does not store all the states stored in external memory, replacement algorithms are utilize to determine which channel state information to remove from the cache in order to provide room to store a recently accessed channel. A doubly linked list is used to track the most recently used channel. As cached channel information is accessed, the corresponding entry is moved to the top of the list. The doubly linked list provides a rapid apparatus and method for updating pointers to the cache.
    Type: Grant
    Filed: November 3, 1995
    Date of Patent: February 23, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Denton E. Gentry, Rasoul M. Oskouy
  • Patent number: 5848293
    Abstract: A method and apparatus that provides for the atomic transfer of data associated with a command to be transferred to a device consisting of a cache memory which supports a plurality of virtual devices. The atomic transfer enables the device to initiate and complete execution of the command immediately with respect to a particular virtual device without having to wait for data to come during subsequent bus transfers. This insures that the state of the device will be consistent during execution of the command.
    Type: Grant
    Filed: November 3, 1995
    Date of Patent: December 8, 1998
    Assignee: Sun Microsystems, Inc.
    Inventor: Denton E. Gentry
  • Patent number: 5778180
    Abstract: A method and an apparatus for reducing data copying overhead associated with protected memory operating systems. In an ATM (Asynchronous Transfer Method) network, the present invention's NIC (network interface circuit) demultiplexes the information in the header of the incoming packet and routes the packet directly to its final destination using the present invention's concept of targeted buffer rings. Thus, instead of having the packet be DMA'd to a buffer in a descriptor ring in the kernel, it may be routed directly to the buffer ring of the destination process.
    Type: Grant
    Filed: November 6, 1995
    Date of Patent: July 7, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Denton E. Gentry, Rasoul M. Oskouy
  • Patent number: 5740448
    Abstract: A method and an apparatus for hardware and software interaction in data transfers of shared data structures in memory. The method and apparatus decreases the number of mutex lockings required to prevent conflict between different software attempting to access the same data and keeps the index value for each buffer in use in order to prevent conflicts between buffer replacement and packet arrival. In an exemplary implementation of the method and apparatus of the present invention, a receive hardware of a computer system keeps an index value for each buffer in use. This index value is placed in a completion ring protected by a mutex, and placed in a software queue protected by mutex. The mutexes assure that only one thread will possess a given index at a given time. No mutex locking is required for a buffer table containing software address and related information.
    Type: Grant
    Filed: July 7, 1995
    Date of Patent: April 14, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Denton E. Gentry, Prakash Kashyap