Patents by Inventor Sreeram Veeragandham
Sreeram Veeragandham 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: 7903659Abstract: A network device switches variable length data units from a source to a destination in a network. An input port receives the variable length data unit and a divider divides the variable length data unit into uniform length data units for temporary storage in the network device. A distributed memory includes a plurality of physically separated memory banks addressable using a single virtual address space and an input switch streams the uniform length data units across the memory banks based on the virtual address space. The network device further includes an output switch for extracting the uniform length data units from the distributed memory by using addresses of the uniform length data units within the virtual address space. The output switch reassembles the uniform length data units to reconstruct the variable length data unit. An output port receives the variable length data unit and transfers the variable length data unit to the destination.Type: GrantFiled: May 4, 2009Date of Patent: March 8, 2011Assignee: Juniper Networks, Inc.Inventors: Pradeep S. Sindhu, Dennis C. Ferguson, Bjorn O. Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Rasoul Mirzazadeh Oskouy, Sreeram Veeragandham
-
Publication number: 20100309916Abstract: A method and apparatus for in-line processing a data packet while routing the packet through a router in a system transmitting data packets between a source and a destination over a network including the router. The method includes receiving the data packet and pre-processing layer header data for the data packet as the data packet is received and prior to transferring any portion of the data packet to packet memory. The data packet is thereafter stored in the packet memory. A routing through the router is determined including a next hop index describing the next connection in the network. The data packet is retrieved from the packet memory and a new layer header for the data packet is constructed from the next hop index while the data packet is being retrieved from memory. The new layer header is coupled to the data packet prior to transfer from the router.Type: ApplicationFiled: August 13, 2010Publication date: December 9, 2010Applicant: JUNIPER NETWORKS, INC.Inventors: Rasoul Mirzazadeh OSKOUY, Dennis C. Ferguson, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Pradeep S. Sindhu, Sreeram Veeragandham, Jeff Zimmer, Michael M.Y. Hui
-
Patent number: 7804833Abstract: A method and apparatus for in-line processing a data packet while routing the packet through a router in a system transmitting data packets between a source and a destination over a network including the router. The method includes receiving the data packet and pre-processing layer header data for the data packet as the data packet is received and prior to transferring any portion of the data packet to packet memory. The data packet is thereafter stored in the packet memory. A routing through the router is determined including a next hop index describing the next connection in the network. The data packet is retrieved from the packet memory and a new layer header for the data packet is constructed from the next hop index while the data packet is being retrieved from memory. The new layer header is coupled to the data packet prior to transfer from the router.Type: GrantFiled: March 5, 2007Date of Patent: September 28, 2010Assignee: Juniper Networks, Inc.Inventors: Rasoul Mirzazadeh Oskouy, Dennis C. Ferguson, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Pradeep S. Sindhu, Sreeram Veeragandham, Jeff Zimmer, Michael M. Y. Hui
-
Patent number: 7801140Abstract: A method and device for in-line processing a data packet is provided. The data packet is received at a first buffer. The data packet is divided into a number of cells that are stored in a first queue. For each cell, a cell state code is stored that indicates an address of the corresponding cell in the first queue and an indication of a sequence order of the cell within the data packet.Type: GrantFiled: August 20, 2007Date of Patent: September 21, 2010Assignee: Juniper Networks, Inc.Inventors: Rasoul Mirzazadeh Oskouy, Dennis C. Ferguson, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Pradeep S. Sindhu, Sreeram Veeragandham, Jeff Zimmer, Michael M. Y. Hui
-
Publication number: 20100172363Abstract: A system selectively drops data from a queue. The system includes queues that temporarily store data, a dequeue engine that dequeues data from the queues, and a drop engine that operates independently from the dequeue engine. The drop engine selects one of the queues to examine, determines whether to drop data from a head of the examined queue, and marks the data based on a result of the determination.Type: ApplicationFiled: December 10, 2009Publication date: July 8, 2010Applicant: Juniper Networks, Inc.Inventors: Pradeep Sindhu, Dabashis Basu, Sreeram Veeragandham, Jayabharat Boddu, Thomas Michael Skibo
-
Patent number: 7684422Abstract: A system selectively drops data from a queue. The system includes queues that temporarily store data, a dequeue engine that dequeues data from the queues, and a drop engine that operates independently from the dequeue engine. The drop engine selects one of the queues to examine, determines whether to drop data from a head of the examined queue, and marks the data based on a result of the determination.Type: GrantFiled: July 30, 2002Date of Patent: March 23, 2010Assignee: Juniper Networks, Inc.Inventors: Pradeep Sindhu, Debashis Basu, Sreeram Veeragandham, Jayabharat Boddu, Thomas Michael Skibo
-
Publication number: 20090268740Abstract: A network device switches variable length data units from a source to a destination in a network. An input port receives the variable length data unit and a divider divides the variable length data unit into uniform length data units for temporary storage in the network device. A distributed memory includes a plurality of physically separated memory banks addressable using a single virtual address space and an input switch streams the uniform length data units across the memory banks based on the virtual address space. The network device further includes an output switch for extracting the uniform length data units from the distributed memory by using addresses of the uniform length data units within the virtual address space. The output switch reassembles the uniform length data units to reconstruct the variable length data unit. An output port receives the variable length data unit and transfers the variable length data unit to the destination.Type: ApplicationFiled: May 4, 2009Publication date: October 29, 2009Applicant: JUNIPER NETWORKS, INC.Inventors: Pradeep S. SINDHU, Dennis C. FERGUSON, Bjorn O. LIENCRES, Nalini AGARWAL, Hann-Hwan JU, Raymond Marcelino Manese LIM, Rasoul Mirzazadeh OSKOUY, Sreeram VEERAGANDHAM
-
Publication number: 20090245246Abstract: A packet scheduler is configured to perform quality of service (QoS) scheduling on a per-data unit basis. A downstream processing engine is operatively connected to the packet scheduler for receiving forwarded packets. A feedback path is operatively connected between the downstream processing engine and the packet scheduler for transmitting a net data unit change value reflecting a change in packet size between an output of the packet scheduler and an output of the downstream processing engine.Type: ApplicationFiled: May 22, 2009Publication date: October 1, 2009Applicant: JUNIPER NETWORKS, INC.Inventors: Sreeram Veeragandham, Rami Rahim, Song Zhang, Anurag P. Gupta, Jorge Cruz-Rios, Jayabharat Boddu, Jeffrey R. Zimmer, Jia-Chang Wang, Srihari Shoroff, Chi-Chung K. Chen
-
Patent number: 7554919Abstract: A packet scheduler is configured to perform quality of service (QoS) scheduling on a per-data unit basis. A downstream processing engine is operatively connected to the packet scheduler for receiving forwarded packets. A feedback path is operatively connected between the downstream processing engine and the packet scheduler for transmitting a net data unit change value reflecting a change in packet size between an output of the packet scheduler and an output of the downstream processing engine.Type: GrantFiled: June 9, 2004Date of Patent: June 30, 2009Assignee: Juniper Networks, Inc.Inventors: Sreeram Veeragandham, Rami Rahim, Song Zhang, Anurag P. Gupta, Jorge Cruz-Rios, Jayabharat Boddu, Jeffrey R. Zimmer, Jia-Chang Wang, Srihari Shoroff, Chi-Chung K. Chen
-
Patent number: 7545808Abstract: A network device switches variable length data units from a source to a destination in a network. An input port receives the variable length data unit and a divider divides the variable length data unit into uniform length data units for temporary storage in the network device. A distributed memory includes a plurality of physically separated memory banks addressable using a single virtual address space and an input switch streams the uniform length data units across the memory banks based on the virtual address space. The network device further includes an output switch for extracting the uniform length data units from the distributed memory by using addresses of the uniform length data units within the virtual address space. The output switch reassembles the uniform length data units to reconstruct the variable length data unit. An output port receives the variable length data unit and transfers the variable length data unit to the destination.Type: GrantFiled: September 15, 2005Date of Patent: June 9, 2009Assignee: Juniper Networks, Inc.Inventors: Pradeep S. Sindhu, Dennis C. Ferguson, Bjorn O. Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Rasoul Mirzazadeh Oskouy, Sreeram Veeragandham
-
Publication number: 20090109975Abstract: A method and apparatus for switching a data packet between a source and destination in a network. The data packet includes a header portion and a data portion. The header portion includes routing information for the data packet. The method includes defining a data path in the router comprising a path through the router along which the data portion of the data packet travels and defining a control path comprising a path through the router along which routing information from the header portion travels. The method includes separating the data path and control path in the router such that the routing information can be separated from the data portion allowing for the separate processing of each in the router. The data portion can be stored in a global memory while routing decisions are made on the routing information in the control path.Type: ApplicationFiled: December 31, 2008Publication date: April 30, 2009Applicant: JUNIPER NETWORKS, INC.Inventors: Pradeep S. SINDHU, Kireeti KOMPELLA, Dennis C. FERGUSON, Bjorn O. LIENCRES, Nalini AGARWAL, Hann-Hwan JU, Raymond Marcelino Manese LIM, Rasoul Mirzazadeh OSKOUY, Sreeram VEERAGANDHAM
-
Patent number: 7489699Abstract: A method and apparatus for switching a data packet between a source and destination in a network. The data packet includes a header portion and a data portion. The header portion includes routing information for the data packet. The method includes defining a data path in the router comprising a path through the router along which the data portion of the data packet travels and defining a control path comprising a path through the router along which routing information from the header portion travels. The method includes separating the data path and control path in the router such that the routing information can be separated from the data portion allowing for the separate processing of each in the router. The data portion can be stored in a global memory while routing decisions are made on the routing information in the control path.Type: GrantFiled: May 6, 2005Date of Patent: February 10, 2009Assignee: Juniper Networks, Inc.Inventors: Pradeep S. Sindhu, Kireeti Kompella, Dennis C. Ferguson, Bjorn O. Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Rasoul Mirzazadeh Oskouy, Sreeram Veeragandham
-
Patent number: 7421564Abstract: A centralized memory allocation system utilizes write pointer drift correction. The memory stores data units. The memory controller receives a write request associated with a data unit and stores the data unit in the memory. The memory controller also transmits a reply that includes an address where the data unit is stored. The control logic receives the reply and determines whether the address in the reply differs from an address included in replies associated with other memory controllers by a given address range. When this occurs, the control logic performs a corrective action to bring an address associated with the memory controller back within a defined range.Type: GrantFiled: February 17, 2006Date of Patent: September 2, 2008Assignee: Juniper Networks, Inc.Inventors: Rami Rahim, Pradeep Sindhu, Raymond Marcelino Manese Lim, Sreeram Veeragandham, David Skinner
-
Publication number: 20080031252Abstract: A method and device for in-line processing a data packet is provided. The data packet is received at a first buffer. The data packet is divided into a number of cells that are stored in a first queue. For each cell, a cell state code is stored that indicates an address of the corresponding cell in the first queue and an indication of a sequence order of the cell within the data packet.Type: ApplicationFiled: August 20, 2007Publication date: February 7, 2008Inventors: Rasoul Oskouy, Dennis Ferguson, Hann-Hwan Ju, Raymond Marcelino Lim, Pradeep Sindhu, Sreeram Veeragandham, Jeff Zimmer, Michael Hui
-
Publication number: 20070147257Abstract: A method and apparatus for in-line processing a data packet while routing the packet through a router in a system transmitting data packets between a source and a destination over a network including the router. The method includes receiving the data packet and pre-processing layer header data for the data packet as the data packet is received and prior to transferring any portion of the data packet to packet memory. The data packet is thereafter stored in the packet memory. A routing through the router is determined including a next hop index describing the next connection in the network. The data packet is retrieved from the packet memory and a new layer header for the data packet is constructed from the next hop index while the data packet is being retrieved from memory. The new layer header is coupled to the data packet prior to transfer from the router.Type: ApplicationFiled: March 5, 2007Publication date: June 28, 2007Applicant: Juniper Networks, Inc.Inventors: Rasoul Oskouy, Dennis Ferguson, Hann-Hwan Ju, Raymond Lim, Pradeep Sindhu, Sreeram Veeragandham, Jeff Zimmer, Michael Hui
-
Patent number: 7209448Abstract: A method and apparatus for in-line processing a data packet while routing the packet through a router in a system transmitting data packets between a source and a destination over a network including the router. The method includes receiving the data packet and pre-processing layer header data for the data packet as the data packet is received and prior to transferring any portion of the data packet to packet memory. The data packet is thereafter stored in the packet memory. A routing through the router is determined including a next hop index describing the next connection in the network. The data packet is retrieved from the packet memory and a new layer header for the data packet is constructed from the next hop index while the data packet is being retrieved from memory. The new layer header is coupled to the data packet prior to transfer from the router.Type: GrantFiled: February 20, 2002Date of Patent: April 24, 2007Assignee: Juniper Networks, Inc.Inventors: Rasoul Mirzazadeh Oskouy, Dennis C. Ferguson, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Pradeep S. Sindhu, Sreeram Veeragandham, Jeff Zimmer, Michael Hui
-
Patent number: 7116660Abstract: A router for switching data packets from a source to a destination in a network in which the router includes a distributed memory. The distributed memory includes two or more memory banks. Each memory bank is used for storing uniform portions of a data packet received from a source and linking information for each data packet to allow for the extraction of the uniform portions of a data packet from distributed locations in memory in proper order after a routing determination has been made by the router.Type: GrantFiled: December 4, 2002Date of Patent: October 3, 2006Assignee: Juniper Networks, Inc.Inventors: Pradeep S. Sindhu, Dennis C. Ferguson, Bjorn O. Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Rasoul Mirzazadeh Oskouy, Sreeram Veeragandham
-
Patent number: 7032082Abstract: A system for writing data includes a memory, at least one memory controller and control logic. The memory stores data units. The memory controller receives a write request associated with a data unit and stores the data unit in the memory. The memory controller also transmits a reply that includes an address where the data unit is stored. The control logic receives the reply and determines whether the address in the reply differs from an address included in replies associated with other memory controllers by a threshold amount. When this occurs, the control logic performs a corrective action to bring an address associated with the memory controller back within a defined range.Type: GrantFiled: August 31, 2001Date of Patent: April 18, 2006Assignee: Juniper Networks, Inc.Inventors: Rami Rahim, Pradeep Sindhu, Raymond Marcelino Manese Lim, Sreeram Veeragandham, David Skinner
-
Publication number: 20060023719Abstract: A network device switches variable length data units from a source to a destination in a network. An input port receives the variable length data unit and a divider divides the variable length data unit into uniform length data units for temporary storage in the network device. A distributed memory includes a plurality of physically separated memory banks addressable using a single virtual address space and an input switch streams the uniform length data units across the memory banks based on the virtual address space. The network device further includes an output switch for extracting the uniform length data units from the distributed memory by using addresses of the uniform length data units within the virtual address space. The output switch reassembles the uniform length data units to reconstruct the variable length data unit. An output port receives the variable length data unit and transfers the variable length data unit to the destination.Type: ApplicationFiled: September 15, 2005Publication date: February 2, 2006Inventors: Pradeep Sindhu, Dennis Ferguson, Bjorn Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Manese Lim, Rasoul Oskouy, Sreeram Veeragandham
-
Publication number: 20050201396Abstract: A method and apparatus for switching a data packet between a source and destination in a network. The data packet includes a header portion and a data portion. The header portion includes routing information for the data packet. The method includes defining a data path in the router comprising a path through the router along which the data portion of the data packet travels and defining a control path comprising a path through the router along which routing information from the header portion travels. The method includes separating the data path and control path in the router such that the routing information can be separated from the data portion allowing for the separate processing of each in the router. The data portion can be stored in a global memory while routing decisions are made on the routing information in the control path.Type: ApplicationFiled: May 6, 2005Publication date: September 15, 2005Inventors: Pradeep Sindhu, Kireeti Kompella, Dennis Ferguson, Bjorn Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Lim, Rasoul Oskouy, Sreeram Veeragandham