Patents by Inventor Hagen W. Peters

Hagen W. Peters 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: 10193797
    Abstract: A network processor is described. This network processor determines a context for a message based on information in one or more fields in a payload of the message. For example, the context may be based on a message type and an identifier of the network connection on which the message was received. Then, the network processor calculates one or more trigger values based on one or more trigger expressions that perform checks on the information in the one or more fields. Moreover, the network processor determines one or more actions to be taken for the message based on the context and the one or more trigger values. In particular, the network processor determines whether the message is forwarded and one or more forwarding destinations.
    Type: Grant
    Filed: May 8, 2015
    Date of Patent: January 29, 2019
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Hans Eberle, Hagen W. Peters
  • Patent number: 10007485
    Abstract: A compression first in, first out (cFIFO) that includes at least two FIFOs is described. A first FIFO is used to store instances of higher words in data entries, and a second FIFO is used to store corresponding instances of lower words in the data entries. If an instance of the higher word for a data entry has a different value than an immediately preceding stored instance of the higher word associated with at least an immediately preceding data entry which is stored in the second FIFO, memory pointers are incremented so that a subsequent instance of the higher word will be stored in the second FIFO without overwriting the instance of the higher word. Otherwise, the memory pointers are unchanged, which associates the instance of the lower word with the immediately preceding stored instance of the higher word.
    Type: Grant
    Filed: January 12, 2016
    Date of Patent: June 26, 2018
    Assignee: Oracle International Corporation
    Inventors: Hagen W. Peters, Hans Eberle
  • Patent number: 9781062
    Abstract: The disclosed embodiments relate techniques for using annotations to extract parameters from messages. During operation, a computing device receives a message from a network interface. After determining a message type for the message, a format decoder in the computing device uses the message type to determine an annotation that is associated with the message type. The message and the annotation are then output to one or more functional units of the computing device, with the annotation output aligned with the message on a per-message-byte basis.
    Type: Grant
    Filed: January 8, 2014
    Date of Patent: October 3, 2017
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Hagen W. Peters, Hans Eberle
  • Patent number: 9742679
    Abstract: A hardware-implemented rate limiter is described. This implementation guarantees that messages containing a value v are not forwarded at a higher rate than a predefined threshold value r. More specifically, given a number of times x in a time interval y, which specifies a rate r defined by x/y, the rate limiter reports a violation by selectively setting an error value when v occurs more than x times during the time interval y. Moreover, the rate limiter may be able to keep track of multiple predefined threshold values for different rates. Furthermore, the rate limiter may keep track of 2b different values v, where b is the number of digits of the binary representation of v.
    Type: Grant
    Filed: May 12, 2015
    Date of Patent: August 22, 2017
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Hans Eberle, Hagen W. Peters, Nils Gura
  • Publication number: 20170199722
    Abstract: A compression first in, first out (cFIFO) that includes at least two FIFOs is described. A first FIFO is used to store instances of higher words in data entries, and a second FIFO is used to store corresponding instances of lower words in the data entries. If an instance of the higher word for a data entry has a different value than an immediately preceding stored instance of the higher word associated with at least an immediately preceding data entry which is stored in the second FIFO, memory pointers are incremented so that a subsequent instance of the higher word will be stored in the second FIFO without overwriting the instance of the higher word. Otherwise, the memory pointers are unchanged, which associates the instance of the lower word with the immediately preceding stored instance of the higher word.
    Type: Application
    Filed: January 12, 2016
    Publication date: July 13, 2017
    Applicant: Oracle International Corporation
    Inventors: Hagen W. Peters, Hans Eberle
  • Publication number: 20160337252
    Abstract: A hardware-implemented rate limiter is described. This implementation guarantees that messages containing a value v are not forwarded at a higher rate than a predefined threshold value r. More specifically, given a number of times x in a time interval y, which specifies a rate r defined by x/y, the rate limiter reports a violation by selectively setting an error value when v occurs more than x times during the time interval y. Moreover, the rate limiter may be able to keep track of multiple predefined threshold values for different rates. Furthermore, the rate limiter may keep track of 2b different values v, where b is the number of digits of the binary representation of v.
    Type: Application
    Filed: May 12, 2015
    Publication date: November 17, 2016
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Hans Eberle, Hagen W. Peters, Nils Gura
  • Publication number: 20160330109
    Abstract: A network processor is described. This network processor determines a context for a message based on information in one or more fields in a payload of the message. For example, the context may be based on a message type and an identifier of the network connection on which the message was received. Then, the network processor calculates one or more trigger values based on one or more trigger expressions that perform checks on the information in the one or more fields. Moreover, the network processor determines one or more actions to be taken for the message based on the context and the one or more trigger values. In particular, the network processor determines whether the message is forwarded and one or more forwarding destinations.
    Type: Application
    Filed: May 8, 2015
    Publication date: November 10, 2016
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Hans Eberle, Hagen W. Peters
  • Patent number: 9471316
    Abstract: The disclosed embodiments describe single-instruction processors that operates upon messages received from a network interface. A single-instruction processor comprises a register file, a functional unit, a bus connecting the register file and the functional unit, and a format decoder that receives messages from a network interface. This single-instruction processor supports a single instruction type (e.g., a “move instruction”) that specifies operands to be transferred via the bus. During operation, the format decoder is configured to write a parameter from a received message to the register file. A move instruction moves this parameter from the register file to the functional unit via the bus. The functional unit then uses the parameter to perform an operation.
    Type: Grant
    Filed: January 8, 2014
    Date of Patent: October 18, 2016
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Hans Eberle, Hagen W. Peters
  • Publication number: 20150193414
    Abstract: The disclosed embodiments relate techniques for using annotations to extract parameters from messages. During operation, a computing device receives a message from a network interface. After determining a message type for the message, a format decoder in the computing device uses the message type to determine an annotation that is associated with the message type. The message and the annotation are then output to one or more functional units of the computing device, with the annotation output aligned with the message on a per-message-byte basis.
    Type: Application
    Filed: January 8, 2014
    Publication date: July 9, 2015
    Applicant: Oracle International Corporation
    Inventors: Hagen W. Peters, Hans Eberle
  • Publication number: 20150193233
    Abstract: The disclosed embodiments describe single-instruction processors that operates upon messages received from a network interface. A single-instruction processor comprises a register file, a functional unit, a bus connecting the register file and the functional unit, and a format decoder that receives messages from a network interface. This single-instruction processor supports a single instruction type (e.g., a “move instruction”) that specifies operands to be transferred via the bus. During operation, the format decoder is configured to write a parameter from a received message to the register file. A move instruction moves this parameter from the register file to the functional unit via the bus. The functional unit then uses the parameter to perform an operation.
    Type: Application
    Filed: January 8, 2014
    Publication date: July 9, 2015
    Applicant: Oracle International Corporation
    Inventors: Hans Eberle, Hagen W. Peters