Patents by Inventor Avanindra Godbole
Avanindra Godbole 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: 8705533Abstract: A network device assigns unique encoded values, represented by mnemonics, to protocol headers supported by the network device, and defines a plurality of templates, where each template includes a set of the mnemonics. The network device also stores the plurality of templates in a template table, where the template table enables the network device to create one or more protocol headers for packets transmitted by the network device.Type: GrantFiled: December 10, 2010Date of Patent: April 22, 2014Assignee: Juniper Networks, Inc.Inventors: Chandrasekaran Venkatraman, Avanindra Godbole
-
Patent number: 8706896Abstract: Output logic generates read requests using a programmable schedule that controls read bandwidth for multiple data streams and stores the read requests in a queuing device. The output logic also dequeues the read requests based on a similar programmable schedule, forwards the read requests to the memory, and reads data units from the memory based on the read requests.Type: GrantFiled: August 16, 2012Date of Patent: April 22, 2014Assignee: Juniper Networks, Inc.Inventors: Song Zhang, Phil Lacroute, Anurag P. Gupta, Raymond M. Lim, Avanindra Godbole, Debashis Basu
-
Patent number: 8681795Abstract: A network device may receive a packet including control tags in a header portion of the packet and may extract candidate tags from the control tags in the header portion of the packet. The network device may compress, using a first lookup table, the candidate tags to obtain keys corresponding to the candidate tags, where each of the keys is represented in a compressed format relative to the corresponding candidate tags. The network device may further determine a final key based on the first keys and determine a priority class for the packet based on a lookup operation of the final key into a second lookup table. The network device may further write the packet, or a reference to the packet, to a selected priority queue, of a number of priority queues, where the priority queue is selected based on the determined priority class.Type: GrantFiled: December 28, 2011Date of Patent: March 25, 2014Assignee: Juniper Networks, Inc.Inventors: Eric M. Verwillow, Jean Marc Frailong, Avanindra Godbole
-
Patent number: 8681681Abstract: A system that processes single stream multicast data includes multiple queues, a dequeue engine, and/or a queue control engine. The queues temporarily store data. At least one of the queues stores single stream multicast data. A multicast count is associated with the single stream multicast data and corresponds to a number of destinations to which the single stream multicast data is to be sent. The dequeue engine dequeues data from the queues. If the data corresponds to the single stream multicast data, the dequeue engine examines the multicast count associated with the single stream multicast data and dequeues the single stream multicast data based on the multicast count. The queue control engine examines one of the queues to determine whether to drop data from the queue and marks the data based on a result of the determination.Type: GrantFiled: November 16, 2011Date of Patent: March 25, 2014Assignee: Juniper Networks, Inc.Inventors: Jayabharat Boddu, Debashis Basu, Avanindra Godbole
-
Patent number: 8654645Abstract: A system selectively drops data from queues. The system includes a drop table that stores drop probabilities. The system selects one of the queues to examine and generates an index into the drop table to identify one of the drop probabilities for the examined queue. The system then determines whether to drop data from the examined queue based on the identified drop probability.Type: GrantFiled: December 17, 2012Date of Patent: February 18, 2014Assignee: Juniper Networks, Inc.Inventors: Pradeep Sindhu, Debashis Basu, Jayabharat Boddu, Avanindra Godbole
-
Patent number: 8599868Abstract: A system determines bandwidth use by queues in a network device. To do this, the system determines an instantaneous amount of bandwidth used by each of the queues and an average amount of bandwidth used by each of the queues. The system then identifies bandwidth use by each of the queues based on the instantaneous bandwidth used and the average bandwidth used by each of the queues.Type: GrantFiled: December 29, 2010Date of Patent: December 3, 2013Assignee: Juniper Networks, Inc.Inventors: Pradeep Sindhu, Debashis Basu, Jayabharat Boddu, Avanindra Godbole
-
Patent number: 8593970Abstract: In one embodiment, a processor-readable medium can store code representing instructions that when executed by a processor cause the processor to receive a value representing a congestion level of a receive queue and a value representing a state of a transmit queue. At least a portion of the transmit queue can be defined by a plurality of packets addressed to the receive queue. A rate value for the transmit queue can be defined based on the value representing the congestion level of the receive queue and the value representing the state of the transmit queue. The processor-readable medium can store code representing instructions that when executed by the processor cause the processor to define a suspension time value for the transmit queue based on the value representing the congestion level of the receive queue and the value representing the state of the transmit queue.Type: GrantFiled: July 3, 2012Date of Patent: November 26, 2013Assignee: Juniper Networks, Inc.Inventors: Avanindra Godbole, Arghajit Basu, Jean-Marc Frailong, Abhijeet Sampatrao Jadav, Naveen Jain, Pradeep Sindhu
-
Publication number: 20130258853Abstract: A system provides congestion control and includes multiple queues that temporarily store data and a drop engine. The system associates a value with each of the queues, where each of the values relates to an amount of memory associated with the queue. The drop engine compares the value associated with a particular one of the queues to one or more programmable thresholds and selectively performs explicit congestion notification or packet dropping on data in the particular queue based on a result of the comparison.Type: ApplicationFiled: May 24, 2013Publication date: October 3, 2013Applicant: JUNIPER NETWORKS, INC.Inventors: Pradeep Sindhu, Debashis Basu, Jayabharat Boddu, Avanindra Godbole
-
Patent number: 8520675Abstract: Methods and systems consistent with the present invention provide efficient packet replication in a router in order to multicast a stream of data. Packets are replicated and processed in a multithreaded environment. Embodiments consistent with the present invention implement a two-stage process for packet replication. The first stage thread will recirculate the packet to multiple second-stage threads. These second-stage threads will then create one or more outgoing copies of the packet. In this way, the copies are handled by multiple threads running in parallel.Type: GrantFiled: December 23, 2008Date of Patent: August 27, 2013Assignee: Juniper Networks, Inc.Inventors: Jean-Marc Frailong, Jeffrey G. Libby, Anurag P. Gupta, John Keen, Rajesh Nair, Avanindra Godbole, Sharada Yeluri
-
Patent number: 8451852Abstract: A system provides congestion control and includes multiple queues that temporarily store data and a drop engine. The system associates a value with each of the queues, where each of the values relates to an amount of memory associated with the queue. The drop engine compares the value associated with a particular one of the queues to one or more programmable thresholds and selectively performs explicit congestion notification or packet dropping on data in the particular queue based on a result of the comparison.Type: GrantFiled: September 1, 2010Date of Patent: May 28, 2013Assignee: Juniper Networks, Inc.Inventors: Pradeep Sindhu, Debashis Basu, Jayabharat Boddu, Avanindra Godbole
-
Patent number: 8335158Abstract: A system selectively drops data from queues. The system includes a drop table that stores drop probabilities. The system selects one of the queues to examine and generates an index into the drop table to identify one of the drop probabilities for the examined queue. The system then determines whether to drop data from the examined queue based on the identified drop probability.Type: GrantFiled: May 14, 2010Date of Patent: December 18, 2012Assignee: Juniper Networks, Inc.Inventors: Pradeep Sindhu, Debashis Basu, Jayabharat Boddu, Avanindra Godbole
-
Patent number: 8332622Abstract: Methods and systems consistent with the present invention provide a programmable table which allows software to define a plurality of branching functions, each of which maps a vector of condition codes to a branch offset. This technique allows for a flexible multi-way branching functionality, using a conditional branch outcome table that can be specified by a programmer. Any instruction can specify the evaluation of arbitrary conditional expressions to compute the values for the condition codes, and can choose a particular branching function. When the processor executes the instruction, the processor's arithmetic/logical functional units evaluate the conditional expressions and then the processor performs the branch operation, according to the specified branching function.Type: GrantFiled: December 12, 2011Date of Patent: December 11, 2012Assignee: Juniper Networks, Inc.Inventors: Anurag P Gupta, John Keen, Jeffrey G Libby, Jean-Marc Frailong, Avanindra Godbole, Sharada Yeluri
-
Publication number: 20120275307Abstract: In one embodiment, a method includes sending a first flow control signal to a first stage of transmit queues when a receive queue is in a congestion state. The method also includes sending a second flow control signal to a second stage of transmit queues different from the first stage of transmit queues when the receive queue is in the congestion state.Type: ApplicationFiled: July 9, 2012Publication date: November 1, 2012Applicant: Juniper Networks, Inc.Inventors: Avanindra Godbole, Pradeep Sindhu, Jean-Marc Frailong
-
Patent number: 8271672Abstract: Output logic generates read requests using a programmable schedule that controls read bandwidth for multiple data streams and stores the read requests in a queuing device. The output logic also dequeues the read requests based on a similar programmable schedule, forwards the read requests to the memory, and reads data units from the memory based on the read requests.Type: GrantFiled: August 31, 2001Date of Patent: September 18, 2012Assignee: Juniper Networks, Inc.Inventors: Song Zhang, Phil Lacroute, Anurag P. Gupta, Raymond M. Lim, Avanindra Godbole, Debashis Basu
-
Patent number: 8233496Abstract: A network device constructs a notification corresponding to a received multicast data unit, where the notification includes administrative data associated with the multicast data unit that does not include a payload of the multicast data unit. The network device replicates the notification at least three different processing elements at different locations in a processing path of the network device to produce multiple replicated data items and produces a copy of the multicast data unit for each of replicated notifications. The network device forwards each copy of the multicast data unit towards a multicast destination.Type: GrantFiled: March 12, 2010Date of Patent: July 31, 2012Assignee: Juniper Networks, Inc.Inventors: Pradeep Sindhu, Debashis Basu, Pankaj Patel, Raymond Lim, Avanindra Godbole, Tatao Chuang, Chi-Chung K. Chen, Jeffrey G. Libby, Dennis Ferguson, Philippe Lacroute, Gerald Cheung
-
Patent number: 8218442Abstract: In one embodiment, a method includes sending a first flow control signal to a first stage of transmit queues when a receive queue is in a congestion state. The method also includes sending a second flow control signal to a second stage of transmit queues different from the first stage of transmit queues when the receive queue is in the congestion state.Type: GrantFiled: September 30, 2008Date of Patent: July 10, 2012Assignee: Juniper Networks, Inc.Inventors: Avanindra Godbole, Pradeep Sindhu, Jean-Marc Frailong
-
Patent number: 8213308Abstract: In one embodiment, a processor-readable medium can store code representing instructions that when executed by a processor cause the processor to receive a value representing a congestion level of a receive queue and a value representing a state of a transmit queue. At least a portion of the transmit queue can be defined by a plurality of packets addressed to the receive queue. A rate value for the transmit queue can be defined based on the value representing the congestion level of the receive queue and the value representing the state of the transmit queue. The processor-readable medium can store code representing instructions that when executed by the processor cause the processor to define a suspension time value for the transmit queue based on the value representing the congestion level of the receive queue and the value representing the state of the transmit queue.Type: GrantFiled: September 11, 2009Date of Patent: July 3, 2012Assignee: Juniper Networks, Inc.Inventors: Avanindra Godbole, Arghajit Basu, Jean-Marc Frailong, Abhijeet Sampatrao Jadav, Naveen Jain, Pradeep Sindhu
-
Patent number: 8154996Abstract: In one embodiment, a method, comprising receiving at a receive side of a physical link a request to suspend transmission of data from a queue within a transmit side of a first stage of queues and to suspend transmission via a path including the physical link, a portion of the first stage of queues, and a portion of a second stage of queues. The method includes sending, in response to the request, a flow control signal to a flow control module configured to schedule transmission of the data from the queue within the transmit side of the first stage of queues. The flow control signal is associated with a first control loop including the path and differing from a second control loop that excludes the first stage of queues.Type: GrantFiled: September 30, 2008Date of Patent: April 10, 2012Assignee: Juniper Networks, Inc.Inventors: Avanindra Godbole, Pradeep Sindhu, Jean-Marc Frailong
-
Publication number: 20120084534Abstract: Methods and systems consistent with the present invention provide a programmable table which allows software to define a plurality of branching functions, each of which maps a vector of condition codes to a branch offset. This technique allows for a flexible multi-way branching functionality, using a conditional branch outcome table that can be specified by a programmer. Any instruction can specify the evaluation of arbitrary conditional expressions to compute the values for the condition codes, and can choose a particular branching function. When the processor executes the instruction, the processor's arithmetic/logical functional units evaluate the conditional expressions and then the processor performs the branch operation, according to the specified branching function.Type: ApplicationFiled: December 12, 2011Publication date: April 5, 2012Applicant: JUNIPER NETWORKS, INC.Inventors: Anurag P. GUPTA, John Keen, Jeffrey G. Libby, Jean-Marc Frailong, Avanindra Godbole, Sharida Yeluri
-
Publication number: 20120063318Abstract: A system that processes single stream multicast data includes multiple queues, a dequeue engine, and/or a queue control engine. The queues temporarily store data. At least one of the queues stores single stream multicast data. A multicast count is associated with the single stream multicast data and corresponds to a number of destinations to which the single stream multicast data is to be sent. The dequeue engine dequeues data from the queues. If the data corresponds to the single stream multicast data, the dequeue engine examines the multicast count associated with the single stream multicast data and dequeues the single stream multicast data based on the multicast count. The queue control engine examines one of the queues to determine whether to drop data from the queue and marks the data based on a result of the determination.Type: ApplicationFiled: November 16, 2011Publication date: March 15, 2012Applicant: JUNIPER NETWORKS, INC.Inventors: Jayabharat BODDU, Debashis Basu, Avanindra Godbole