Patents by Inventor Thomas A. Keaveny

Thomas A. Keaveny 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: 10484304
    Abstract: In some examples, a network switch includes an Application-Specific Integrated Circuit (ASIC), a processing resource, and a memory resource storing machine readable instructions. The instructions are to cause the processing resource to: accumulate an action set for a first packet received by the switch; fetch an action from the action set; determine, with the ASIC, whether the fetched action is to be performed immediately on the first packet; in response to determining that the fetched action is to be performed immediately, generate a second packet from the first packet; and output one of the first and second packets through an output port without further processing of the packet after generation of the second packet.
    Type: Grant
    Filed: May 29, 2015
    Date of Patent: November 19, 2019
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Claudio Enrique Viquez Calderon, Thomas A. Keaveny, Osvaldo Andres Sanchez Melendez
  • Patent number: 10256992
    Abstract: According to an example, a packet is tunnel encapsulated a packet according to a tunnel encapsulation template. The tunnel encapsulation template includes fields for the tunnel encapsulated packet, and the fields include static fields and variable fields. Field values are inserted into variable fields of the tunnel encapsulation template to generate the tunnel encapsulated packet.
    Type: Grant
    Filed: October 30, 2014
    Date of Patent: April 9, 2019
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Alan Ray Albrecht, Thomas A. Keaveny, Joseph Daniel Gleason
  • Publication number: 20190020599
    Abstract: In some examples, a network switch includes an Application-Specific Integrated Circuit (ASIC), a processing resource, and a memory resource storing machine readable instructions. The instructions are to cause the processing resource to: accumulate an action set for a first packet received by the switch; fetch an action from the action set; determine, with the ASIC, whether the fetched action is to be performed immediately on the first packet; in response to determining that the fetched action is to be performed immediately, generate a second packet from the first packet; and output one of the first and second packets through an output port without further processing of the packet after generation of the second packet.
    Type: Application
    Filed: May 29, 2015
    Publication date: January 17, 2019
    Inventors: Osvaldo Andres Sanchez Melendez, Thomas A. Keaveny, Osvaldo Andres Sanchez Melendez
  • Publication number: 20180287932
    Abstract: Examples herein disclose a system including a meter and a networking component. The meter measures a flow rate associated with networking traffic. The networking component identifies a software defined networking (SDN) action path among multiple SDN action paths to perform on the networking traffic based on the measured flow rate.
    Type: Application
    Filed: September 30, 2015
    Publication date: October 4, 2018
    Inventors: Claudio Enrique Viquez Calderon, Thomas A. Keaveny
  • Publication number: 20180167337
    Abstract: In some examples, a network switch includes an Application-Specific Integrated Circuit (ASIC) including a Network Packet Counter (NPC), a processing resource, and a memory resource storing machine readable instructions. The instructions can, for example, cause the processing resource to assign, in accordance with instructions received by a Software-Defined Network (SDN) controller, a packet flow rule for certain packets received by the network switch to the NPC; modify, with the NPC, a value for a counter associated with the given packet flow rule for received packets that match the pattern of the given packet flow rule; and apply an action to the received packet in accordance with the flow rule only when the value for the counter is less than a threshold value.
    Type: Application
    Filed: May 29, 2015
    Publication date: June 14, 2018
    Inventors: Thomas A Keaveny, Claudio Enrique Viquez Calderon
  • Publication number: 20180101384
    Abstract: In some examples, a method includes sending compiled instructions generated from application code to a remote executing unit, the compiled instructions including a particular compiled instruction that maps to a control parameter for the application code. The method may also include receiving a configuration update specifying an updated value for the control parameter, modifying the particular compiled instruction according to the configuration update to obtain a morphed instruction, and sending the morphed instruction to the remote executing unit to replace the particular compiled instruction.
    Type: Application
    Filed: April 17, 2015
    Publication date: April 12, 2018
    Inventors: Thomas A Keaveny, Diego Valverde Garro
  • Publication number: 20170279638
    Abstract: According to an example, a packet is tunnel encapsulated a packet according to a tunnel encapsulation template. The tunnel encapsulation template includes fields for the tunnel encapsulated packet, and the fields include static fields and variable fields. Field values are inserted into variable fields of the tunnel encapsulation template to generate the tunnel encapsulated packet.
    Type: Application
    Filed: October 30, 2014
    Publication date: September 28, 2017
    Inventors: Alan Ray ALBRECHT, Thomas A. KEAVENY, Joseph Daniel GLEASON
  • Publication number: 20170212763
    Abstract: A predicate register is assigned as an exception handling predicate register. An exception may be detected when executing the machine readable instructions. An exception state for the exception is stored in the exception handling predicate register.
    Type: Application
    Filed: July 25, 2014
    Publication date: July 27, 2017
    Inventors: King Wayne LUK, Thomas A. KEAVENY
  • Patent number: 9521079
    Abstract: A network device having a plurality of packet forwarding elements, each including a hardware component for receiving and forwarding data packets from and to other network devices via a plurality of input ports connected to a network. Each hardware component is configured to determine whether a received data packet is one of a predetermined class of data packets based on data in the received data packet and, if so, generate expedited processing instructions corresponding to the received data packet based on data in the received data packet. The hardware component forwards the received data packet, together with the corresponding expedited processing instructions, directly to the hardware component of all packet forwarding elements of the plurality of packet forwarding elements for processing based on the expedited processing instructions.
    Type: Grant
    Filed: September 24, 2012
    Date of Patent: December 13, 2016
    Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
    Inventors: Mark Gooch, Thomas A. Keaveny, Nandakumar Natarajan, Bruce E. LaVigne
  • Publication number: 20160098278
    Abstract: Embodiments herein relate to forwarding an instruction based on predication criteria. A predicate state associated with a packet of data is to be compared to an instruction associated with the predication criteria. The instruction is to be forwarded to an execution unit if the predication criteria includes or matches the predicate state of the packet.
    Type: Application
    Filed: December 8, 2015
    Publication date: April 7, 2016
    Inventors: David A. Warren, Thomas A. Keaveny
  • Patent number: 9207938
    Abstract: Embodiments herein relate to forwarding an instruction based on predication criteria. A predicate state associated with a packet of data is to be compared to an instruction associated with the predication criteria. The instruction is to be forwarded to an execution unit if the predication criteria includes or matches the predicate state of the packet.
    Type: Grant
    Filed: August 29, 2012
    Date of Patent: December 8, 2015
    Assignee: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
    Inventors: David A Warren, Thomas A Keaveny
  • Publication number: 20140086255
    Abstract: A network device having a plurality of packet forwarding elements, each including a hardware component for receiving and forwarding data packets from and to other network devices via a plurality of input ports connected to a network. Each hardware component is configured to determine whether a received data packet is one of a predetermined class of data packets based on data in the received data packet and, if so, generate expedited processing instructions corresponding to the received data packet based on data in the received data packet. The hardware component forwards the received data packet, together with the corresponding expedited processing instructions, directly to the hardware component of all packet forwarding elements of the plurality of packet forwarding elements for processing based on the expedited processing instructions.
    Type: Application
    Filed: September 24, 2012
    Publication date: March 27, 2014
    Applicant: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
    Inventors: Mark Gooch, Thomas A. Keaveny, Nandakumar Natarajan, Bruce E. LaVigne
  • Publication number: 20140068228
    Abstract: Embodiments herein relate to forwarding an instruction based on predication criteria. A predicate state associated with a packet of data is to be compared to an instruction associated with the predication criteria. The instruction is to be forwarded to an execution unit if the predication criteria includes or matches the predicate state of the packet.
    Type: Application
    Filed: August 29, 2012
    Publication date: March 6, 2014
    Inventors: David A. Warren, Thomas A. Keaveny
  • Patent number: 6308147
    Abstract: The inventive mechanism synthesizes complex software data structures in hardware by using memory transaction translation techniques. The mechanism includes a finite state machine and a bus controller. The state machine has a specific algorithm that defines the dynamic behavior of the synthesized structure. The bus controller manipulates memory control strobes and communicates to the memory bus and bridge. When a transaction references the data structure, the inventive mechanism processes the address of the request into a new address based upon the state of the structure. The finite state machine tracks the current state of the structure and calculates the new state or address. The mechanism the sends out the new address, which is processed by the memory device. The inventive mechanism can also manipulate the read and write aspects to transactions, in addition to the address aspects of the original transaction.
    Type: Grant
    Filed: May 21, 1998
    Date of Patent: October 23, 2001
    Assignee: Hewlett-Packard Company
    Inventor: Thomas A. Keaveny
  • Patent number: 6292873
    Abstract: A high-performance dual-ported shared memory that interconnects two 32-bit PCI buses with a RAM memory that provides an address space of 64-bit words. The high-performance dual-ported shared memory provides two independent channels for reading from, and writing to, the RAM memory. By interleaving 64-bit read and write operations directed to the RAM memory with 32-bit PCI bus data transfer operations, and by internally buffering data, the high-performance dual-ported shared memory can independently provide data access at PCI data transfer rates to both PCI buses without introducing wait states.
    Type: Grant
    Filed: May 22, 1998
    Date of Patent: September 18, 2001
    Assignee: Hewlett-Packard Company
    Inventors: Thomas A. Keaveny, Donald M. Cross
  • Patent number: 6282700
    Abstract: The inventive state mechanism assigns N+1 tags to N versions of an object stored in N memory areas. Thus, one tag is unused. An additional tag is used as a null or uninitialized tag. The other tags are assigned in a particular precedence order to revisions as they are stored. Thus, each assigned tag, except the null tag, has both a unique predecessor as well as a unique successor tag. The last tag of the sequence is lower in precedence to the first tag of the sequence, and this forms the cyclic relationship. The unused tag is used to determine the tag that is to be assigned to the next revision. The unused tag is also used to determine which revision is the most current revision. The inventive state mechanism is used by a memory management controller in maintaining the revisions.
    Type: Grant
    Filed: May 21, 1998
    Date of Patent: August 28, 2001
    Assignee: Hewlett Packard Company
    Inventors: Rajiv K. Grover, Thomas A. Keaveny
  • Patent number: 6065087
    Abstract: A high-performance network/bus multiplexer that exchanges data transfer commands and data between different communications mediums, such as the Fibre Channel and one or more SCSI buses. High-performance is achieved by avoiding transmitting read bus operations through bus bridges, and by limiting contention for buses by connecting Fibre Channel host adapters to a first internal bus and SCSI adapters to a second internal bus.
    Type: Grant
    Filed: May 21, 1998
    Date of Patent: May 16, 2000
    Assignee: Hewlett-Packard Company
    Inventors: Thomas A. Keaveny, Eric G. Tausheck
  • Patent number: 4908823
    Abstract: There is disclosed a data communications link adapter providing flow of data control and status information between an input/output (I/O) Backplane and a fiber optic Frontplane. The adapter represents a melding of I/O channel extender technology and data communications technology: a dedicated processor handles link layer protocol, leaving to software only higher protocol layers; a flow-through architecture is provided by the adapter; a combination of windowing and handshaking are used; and a relatively short frame of sixteen bytes is employed. The adapter includes a backplane adapter portion which serves to interconnect host equipment, a processor portion dedicated to layer 3 (circuit operations), a protocol controller dedicated to layer 2 (physical layer) operations, a fiber optic interface portion dedicated to layer 1 (physical link) operations, and an arbiter portion which couples the processor to a data path connecting the backplane adapter and the protocol controller.
    Type: Grant
    Filed: January 29, 1988
    Date of Patent: March 13, 1990
    Assignee: Hewlett-Packard Company
    Inventors: Randolph B. Haagens, Thomas A. Keaveny