Patents by Inventor Ramesh Panwar

Ramesh Panwar 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: 9083628
    Abstract: A network content service apparatus includes a set of compute elements adapted to perform a set of network services; and a switching fabric coupling compute elements in said set of compute elements. The set of network services includes firewall protection, Network Address Translation, Internet Protocol forwarding, bandwidth management, Secure Sockets Layer operations, Web caching, Web switching, and virtual private networking. Code operable on the compute elements enables the network services, and the compute elements are provided on blades which further include at least one input/output port.
    Type: Grant
    Filed: February 4, 2013
    Date of Patent: July 14, 2015
    Assignee: Juniper Networks, Inc.
    Inventors: Mark Bryers, Elango Ganesan, Frederick Gruner, David Hass, Robert Hathaway, Ramesh Panwar, Ricardo Ramirez, Abbas Rashid, Mark Vilas, Nazar Zaidi, Yen Lee, Chau Anh Ngoc Nguyen, John Phillips, Yuhong Zhou, Gregory G. Spurrier, Sankar Ramanoorthi, Michael Freed
  • Patent number: 9021582
    Abstract: This disclosure describes techniques of determining whether a symbol stream includes a pattern defined by a regular expression. As described herein, the regular expression may be represented using a non-deterministic finite automaton (NFA). A plurality of states in the NFA may be evaluated in parallel. These states may be associated with a plurality of symbol positions in a symbol stream. Evaluating a plurality of states and symbols in parallel may allow for faster determinations of whether the symbol stream includes the pattern defined by the regular expression.
    Type: Grant
    Filed: April 24, 2007
    Date of Patent: April 28, 2015
    Assignee: Juniper Networks, Inc.
    Inventors: Gary Goldman, Philip A. Thomas, Ramesh Panwar
  • Patent number: 8804950
    Abstract: In one embodiment, a method includes receiving a bit value from a key vector. The bit value has a position within the key vector correlating to a counter value. The method includes receiving a sequence of bit values from a plurality of predefined bit values based on the counter value and in response to a condition associated with the bit value from the key vector being satisfied.
    Type: Grant
    Filed: September 30, 2008
    Date of Patent: August 12, 2014
    Assignee: Juniper Networks, Inc.
    Inventor: Ramesh Panwar
  • Patent number: 8798057
    Abstract: In one embodiment, a method includes receiving a value associated with a data packet and identifying a data set based on the value. The data set is associated with a range of values and represents routing actions. The data set is a first data set from a plurality of data sets if the value is included in the range of values associated with the first data set. The data set is a default data set if the value is not included in a range of values associated with a data set from the plurality of data sets. The method includes combining the first data set with the default data set if the first data set is identified. The method includes combining the default data set with an except data set if the default data set is identified.
    Type: Grant
    Filed: September 30, 2008
    Date of Patent: August 5, 2014
    Assignee: Juniper Networks, Inc.
    Inventors: Deepak Goel, Ramesh Panwar, Srinivasan Jagannadhan
  • Patent number: 8675648
    Abstract: In one embodiment, a method includes receiving a policy vectors associated with a switch fabric, determining a compression scheme, and producing a compressed vector based on the policy vector and the compression scheme. The policy vector is represented by a bit sequence and has a plurality of policy bit values. A policy bit value from the plurality of policy bit vales is configured to trigger an action associated with a data packet in the switch fabric. The compression scheme is determined based on a portion of the policy vector.
    Type: Grant
    Filed: September 30, 2008
    Date of Patent: March 18, 2014
    Assignee: Juniper Networks, Inc.
    Inventors: Deepak Goel, Ramesh Panwar, Srinivasan Jagannadhan
  • Patent number: 8571023
    Abstract: In one embodiment, an apparatus comprises a range selection module, a first stage of bloom filters, a second stage of bloom filters and a hashing module. The range selection module is configured to define a set of hash key vectors based on a set of range values associated with at least a portion of an address value from a data packet received at a multi-stage switch. The first stage of bloom filters and the second stage of bloom filters are collectively configured to determine that at least a portion of a hash key vector from the set of hash key vectors has a probability of being included in a hash table. The hashing module is configured to produce a hash value based on the hash key vector such that a first policy vector is selected based on the hash value and the first policy vector is decompressed to produce a second policy vector associated with the data packet.
    Type: Grant
    Filed: June 4, 2010
    Date of Patent: October 29, 2013
    Assignee: Juniper Networks, Inc.
    Inventors: Ramesh Panwar, Deepak Goel, Srinivasan Jagannadhan
  • Patent number: 8571034
    Abstract: In one embodiment, an apparatus can include a policy vector module configured to retrieve a compressed policy vector based on a portion of a data packet received at a multi-stage switch. The apparatus can also include a decompression module configured to receive the compressed policy vector and configured to define a decompressed policy vector based on the compressed policy vector. The decompressed policy vector can define a combination of bit values associated with a policy.
    Type: Grant
    Filed: April 29, 2011
    Date of Patent: October 29, 2013
    Assignee: Juniper Networks, Inc.
    Inventors: Ramesh Panwar, Deepak Goel, Srinivasan Jagannadhan, Jean-Marc Frailong
  • Patent number: 8488588
    Abstract: In one embodiment, an apparatus includes a loopback module configured to receive a first copy of a target vector during a clock cycle. The target vector can include a quantity of set bit values and can be defined based on a portion of data. The loopback module can be configured to define a loopback vector that has a quantity of set bit values that is less than a quantity of set bit values included in the first copy of the target vector. The apparatus also can include an index module configured to receive a second copy of the target vector during the clock cycle. The index module can be configured to define, during the clock cycle, an index vector based on the second copy of the target vector. The index vector can be configured to trigger an element associated with a switch fabric to process the data.
    Type: Grant
    Filed: December 31, 2008
    Date of Patent: July 16, 2013
    Assignee: Juniper Networks, Inc.
    Inventors: Ramesh Panwar, Jianhui Huang
  • Patent number: 8468271
    Abstract: In general, techniques are described for utilizing anonymous cookies within computer networks to protect customer identities. In particular, a network device is configured to communicate with an edge router of a service provider network that provides access to a public network having network destinations. The network device includes a control unit and an interface. The control unit executes a content delivery layer and a privacy services layer. The content delivery layer receives a network communication sent from one of the customer devices to the public network. The privacy services layer replaces a destination-specified cookie within the network communication with an anonymous cookie, each of which conform to an application layer protocol. The anonymous cookie also specifies a pseudonym for the one of the customer devices that originated the network communication. The at least one interface then forwards the network communication including the anonymous cookie to the network destination.
    Type: Grant
    Filed: February 2, 2010
    Date of Patent: June 18, 2013
    Assignee: Juniper Networks, Inc.
    Inventors: Ramesh Panwar, David Weinberg
  • Patent number: 8370528
    Abstract: A network content service apparatus includes a set of compute elements adapted to perform a set of network services; and a switching fabric coupling compute elements in said set of compute elements. The set of network services includes firewall protection, Network Address Translation, Internet Protocol forwarding, bandwidth management, Secure Sockets Layer operations, Web caching, Web switching, and virtual private networking. Code operable on the compute elements enables the network services, and the compute elements are provided on blades which further include at least one input/output port.
    Type: Grant
    Filed: July 26, 2010
    Date of Patent: February 5, 2013
    Assignee: Juniper Networks, Inc.
    Inventors: Mark Bryers, Elango Ganesan, Frederick Gruner, David Hass, Robert Hathaway, Ramesh Panwar, Ricardo Ramirez, Abbas Rashid, Mark Vilas, Yen Lee, John Phillips, Yuhong Andy Zhou, Gregory G. Spurrier, Sankar Ramanoorthi, Michael Freed
  • Patent number: 8139591
    Abstract: In one embodiment, a method includes receiving a key associated with a portion of a data packet, comparing the key to a first range extreme, selecting a second range extreme, and comparing the key with the second range. The first range extreme is associated with a first range and the second range is associated with a second range. The second range is selected based on the comparing the key to the first range extreme. The method includes producing a policy vector associated with the first or second range.
    Type: Grant
    Filed: September 2, 2010
    Date of Patent: March 20, 2012
    Assignee: Juniper Networks, Inc.
    Inventors: Deepak Goel, Ramesh Panwar
  • Patent number: 8111697
    Abstract: In one embodiment, a method includes classifying a data packet received at a switch fabric, selecting an action descriptor in response to the classifying, and processing an action defined in the action descriptor. The classifying is based on a primary classification condition and first portion of the data packet. The action descriptor is associated with the primary classification condition. The processing includes determining whether a secondary classification condition is satisfied by a second portion of the data packet.
    Type: Grant
    Filed: December 31, 2008
    Date of Patent: February 7, 2012
    Assignee: Juniper Networks, Inc.
    Inventors: Ramesh Panwar, Deepak Goel, Jianhui Huang, Srinivasan Jagannadhan
  • Publication number: 20110200038
    Abstract: In one embodiment, an apparatus can include a policy vector module configured to retrieve a compressed policy vector based on a portion of a data packet received at a multi-stage switch. The apparatus can also include a decompression module configured to receive the compressed policy vector and configured to define a decompressed policy vector based on the compressed policy vector. The decompressed policy vector can define a combination of bit values associated with a policy.
    Type: Application
    Filed: April 29, 2011
    Publication date: August 18, 2011
    Applicant: Juniper Networks, Inc.
    Inventors: Ramesh Panwar, Deepak Goel, Srinivasan Jagannadhan, Jean-Marc Frailong
  • Patent number: 7966442
    Abstract: In general, this disclosure describes techniques of storing data in and retrieving data from a cache of a computing device. More specifically, techniques are described for utilizing a “perfect hash” function to implement an associative cache within a computing device. That is, the associative cache implements a fully associative map between a predetermined set of addresses and data values, employing only a single tag fetch comparison.
    Type: Grant
    Filed: May 17, 2010
    Date of Patent: June 21, 2011
    Assignee: Juniper Networks, Inc.
    Inventors: Ramesh Panwar, Philip A. Thomas
  • Patent number: 7961734
    Abstract: In one embodiment, an apparatus can include a policy vector module configured to retrieve a compressed policy vector based on a portion of a data packet received at a multi-stage switch. The apparatus can also include a decompression module configured to receive the compressed policy vector and configured to define a decompressed policy vector based on the compressed policy vector. The decompressed policy vector can define a combination of bit values associated with a policy.
    Type: Grant
    Filed: September 30, 2008
    Date of Patent: June 14, 2011
    Assignee: Juniper Networks, Inc.
    Inventors: Ramesh Panwar, Deepak Goel, Srinivasan Jagannadhan, Jean-Marc Frailong
  • Publication number: 20110134916
    Abstract: In one embodiment, an apparatus comprises a range selection module, a first stage of bloom filters, a second stage of bloom filters and a hashing module. The range selection module is configured to define a set of hash key vectors based on a set of range values associated with at least a portion of an address value from a data packet received at a multi-stage switch. The first stage of bloom filters and the second stage of bloom filters are collectively configured to determine that at least a portion of a hash key vector from the set of hash key vectors has a probability of being included in a hash table. The hashing module is configured to produce a hash value based on the hash key vector such that a first policy vector is selected based on the hash value and the first policy vector is decompressed to produce a second policy vector associated with the data packet.
    Type: Application
    Filed: June 4, 2010
    Publication date: June 9, 2011
    Inventors: Ramesh Panwar, Deepak Goel, Srinivasan Jagannadhan
  • Patent number: 7889741
    Abstract: In one embodiment, a method includes accessing a condition test vector, selecting a key from a plurality of keys, and determining whether the key selected and a condition value satisfy a condition relation. The accessing being based on an index value. The condition test vector including a first plurality of bit values defining the condition relation, a second plurality of bit values defining a key selector, and a third plurality of bit values defining the condition value. The selecting being based on the second plurality of bit values. Each key from the plurality of keys including a combination of bit values representing a portion of a data packet. A result is defined based on the determining.
    Type: Grant
    Filed: December 31, 2008
    Date of Patent: February 15, 2011
    Assignee: Juniper Networks, Inc.
    Inventors: Ramesh Panwar, Deepak Goel, Jianhui Huang, Srinivasan Jagannadhan
  • Publication number: 20110019550
    Abstract: A network content service apparatus includes a set of compute elements adapted to perform a set of network services; and a switching fabric coupling compute elements in said set of compute elements. The set of network services includes firewall protection, Network Address Translation, Internet Protocol forwarding, bandwidth management, Secure Sockets Layer operations, Web caching, Web switching, and virtual private networking. Code operable on the compute elements enables the network services, and the compute elements are provided on blades which further include at least one input/output port.
    Type: Application
    Filed: July 26, 2010
    Publication date: January 27, 2011
    Applicant: Juniper Networks, Inc.
    Inventors: Mark Bryers, Elango Ganesan, Frederick Gruner, David Hass, Robert Hathaway, Ramesh Panwar, Ricardo Ramirez, Abbas Rashid, Mark Vilas, Nazar Zaidi, Yen Lee, Chau Anh Ngoc Nguyen, John Phillips, Yuhong Andy Zhou, Gregory S. Spurrier, Sankar Ramanoorthi, Michael Freed
  • Patent number: 7877549
    Abstract: In general, this disclosure describes techniques of ensuring cache coherency in a multi-processor computing system. More specifically, a relaxed coherency mechanism is described that provides the appearance of strong coherency and consistency to correctly written software executing on the multi-processor system. The techniques, as described herein, combine software synchronization instructions with certain hardware-implemented instructions to ensure cache coherency.
    Type: Grant
    Filed: June 12, 2007
    Date of Patent: January 25, 2011
    Assignee: Juniper Networks, Inc.
    Inventors: Ramesh Panwar, Philip A. Thomas
  • Patent number: 7835357
    Abstract: In one embodiment, a method, comprising producing a first policy vector based on a first portion of a data packet received at a multi-stage switch. The method also includes producing a second policy vector based on a second portion of the data packet different than the first portion of the data packet. A third policy vector is produced based on a combination of at least the first policy vector and at least the second policy vector. The third policy vector including a combination of bit values configured to trigger an element at the multi-stage switch to process the data packet.
    Type: Grant
    Filed: September 30, 2008
    Date of Patent: November 16, 2010
    Assignee: Juniper Networks, Inc.
    Inventors: Ramesh Panwar, Deepak Goel, Srinivasan Jagannadhan, Jean-Marc Frailong