Patents by Inventor Eyal Oren

Eyal Oren 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: 20060062144
    Abstract: Token buckets are used in a computer or communications system for controlling rates at which corresponding items are processed. The number of tokens in a token bucket identifies the amount of processing that is available for the corresponding item. Instead of storing the value of a token bucket as a single value in a single memory location as traditionally done, the value of a token bucket is stored across multiple storage locations, such as in on-chip storage and in off-chip storage (e.g., in a memory device). An indication (e.g., one or more bits) can also be stored on chip to identify whether or not the off-chip stored value is zero and/or of at least of a certain magnitude such that it may be readily determined whether there are sufficient tokens to process an item without accessing the off-chip storage.
    Type: Application
    Filed: November 11, 2005
    Publication date: March 23, 2006
    Applicant: CISCO TECHNOLOGY, INC., A CALIFORNIA CORPORATION
    Inventors: James Testa, Eyal Oren, Earl Cohen
  • Publication number: 20060039374
    Abstract: A pipelined linecard architecture for receiving, modifying, switching, buffering, queuing and dequeuing packets for transmission in a communications network. The linecard has two paths: the receive path, which carries packets into the switch device from the network, and the transmit path, which carries packets from the switch to the network. In the receive path, received packets are processed and switched in a multi-stage pipeline utilizing programmable data structures for fast table lookup and linked list traversal. The pipelined switch operates on several packets in parallel while determining each packet's routing destination. Once that determination is made, each packet is modified to contain new routing information as well as additional header data to help speed it through the switch. Using bandwidth management techniques, each packet is then buffered and enqueued for transmission over the switching fabric to the linecard attached to the proper destination port.
    Type: Application
    Filed: October 3, 2005
    Publication date: February 23, 2006
    Inventors: David Belz, Garry Epps, Michael Laor, Eyal Oren
  • Patent number: 6980552
    Abstract: A pipelined linecard architecture for receiving, modifying, switching, buffering, queuing and dequeuing packets for transmission in a communications network. The linecard has two paths: the receive path, which carries packets into the switch device from the network, and the transmit path, which carries packets from the switch to the network. In the receive path, received packets are processed and switched in a multi-stage pipeline utilizing programmable data structures for fast table lookup and linked list traversal. The pipelined switch operates on several packets in parallel while determining each packet's routing destination. Once that determination is made, each packet is modified to contain new routing information as well as additional header data to help speed it through the switch. Using bandwidth management techniques, each packet is then buffered and enqueued for transmission over the switching fabric to the linecard attached to the proper destination port.
    Type: Grant
    Filed: August 15, 2002
    Date of Patent: December 27, 2005
    Assignee: Cisco Technology, Inc.
    Inventors: David Belz, Garry P. Epps, Michael Laor, Eyal Oren
  • Patent number: 6961808
    Abstract: Methods and apparatus are disclosed for implementing and using multiple virtual portions of an associative memory. An associative memory is programmed with multiple sets of entries, each of the multiple sets of entries including a different unique decoder field. A piece of information is received including a data item. A decoder field is identified. The decoder field and the data item are typically included in a lookup word used in a lookup operation in the associated memory, with the decoder field identifying which of the multiple sets of entries to search based on the data item. In one implementation, a nested condition associated with the data item is identified, and in response, multiple lookup words are generated with a predefined set of decoder fields for the data item. Multiple levels of decoder fields may be used to identify multiple subsets of entries within one of the multiple sets of entries.
    Type: Grant
    Filed: January 8, 2002
    Date of Patent: November 1, 2005
    Assignee: Cisco Technology, Inc.
    Inventors: Eyal Oren, David E. Belz
  • Patent number: 6871265
    Abstract: Methods and apparatus are disclosed for maintaining netflow statistics using an associative memory to identify and maintain netflows. A lookup operation is performed on a set of associative memory entries to produce an associative memory result directly or after a subsequent memory read operation. In response to the associative memory result corresponding to a not found condition, an entry is added to the set of associative memory entries. Otherwise, a statistics entry in the set of statistics is updated based on the associative memory result. In one implementation, the associative memory is programmed with a set of permanent netflow entries and a set of dynamic or nonpermanent netflow entries, which are maintained in the form of a queue or ring buffer. In one embodiment, when the number of dynamic entries exceeds a threshold value, one or more of the dynamic entries and their corresponding statistics values are flushed.
    Type: Grant
    Filed: February 20, 2002
    Date of Patent: March 22, 2005
    Assignee: Cisco Technology, Inc.
    Inventors: Eyal Oren, David E. Belz, Alon Ratinsky
  • Patent number: 6871262
    Abstract: Methods and apparatus are disclosed for matching a string with multiple lookups using a single associative memory, such as, but not limited to binary and ternary content-addressable memories (CAMs). In one implementation, an information string is partitioned into multiple segments. A first lookup operation is performed on the associative memory using the first segment to produce a first associative memory result, which is used as input to a memory lookup operation to produce a first result. The first result can be programmed to have any desired value or length. This first result along with a second segment of the information string is then used as input to the same associative memory to produce a second associative memory result, which is typically used as input to a memory lookup operation to produce a second result. This process can be repeated for an arbitrary or predetermined number of times.
    Type: Grant
    Filed: February 14, 2002
    Date of Patent: March 22, 2005
    Assignee: Cisco Technology, Inc.
    Inventors: Eyal Oren, David E. Belz