Patents by Inventor Ravindran Suresh
Ravindran Suresh 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: 11502974Abstract: Systems and methods of network packet switching use a table representation of a trie data structure to identify a timestamp (TS) range (or time range) for a received packet based on the packet timestamp (TS). The trie data structure is programmed with a plurality of predetermined time ranges. Each node in the trie data structure corresponds to a TS prefix and is associated with a corresponding predetermined time range. A search engine in the network switch can use the packet TS as a key to traverse the trie data structure and thereby matching the packet TS to a predetermined time range according to a Longest Prefix Match (LPM) process. Provided with the TS ranges of the incoming packets, various applications and logic engines in the network switch can accordingly process the packets, such as determining a new destination IP address and performing channel switch accordingly.Type: GrantFiled: October 29, 2020Date of Patent: November 15, 2022Assignee: Marvell Asia Pte, Ltd.Inventors: Zubin Hemantkumar Shah, Shih-Jeff Chen, Ravindran Suresh, Leonid Livak
-
Publication number: 20210051114Abstract: Systems and methods of network packet switching use a table representation of a trie data structure to identify a timestamp (TS) range (or time range) for a received packet based on the packet timestamp (TS). The trie data structure is programmed with a plurality of predetermined time ranges. Each node in the trie data structure corresponds to a TS prefix and is associated with a corresponding predetermined time range. A search engine in the network switch can use the packet TS as a key to traverse the trie data structure and thereby matching the packet TS to a predetermined time range according to a Longest Prefix Match (LPM) process. Provided with the TS ranges of the incoming packets, various applications and logic engines in the network switch can accordingly process the packets, such as determining a new destination IP address and performing channel switch accordingly.Type: ApplicationFiled: October 29, 2020Publication date: February 18, 2021Inventors: Zubin Hemantkumar SHAH, Shih-Jeff CHEN, Ravindran SURESH, Leonid LIVAK
-
Patent number: 10855621Abstract: System and method of network packet switching using a table representation of a trie data structure to identify a timestamp (TS) range (or time range) for a received packet based on the packet timestamp (TS). The trie data structure is programmed with a plurality of predetermined time ranges. Each node in the trie data structure corresponds to a TS prefix and is associated with a corresponding predetermined time range. A search engine in the network switch can use the packet TS as a key to traverse the trie data structure and thereby matching the packet TS to a predetermined time range according to a Longest Prefix Match (LPM) process. Provided with the TS ranges of the incoming packets, various applications and logic engines in the network switch can accordingly process the packets, such as determining a new destination IP address and performing channel switch accordingly.Type: GrantFiled: February 12, 2018Date of Patent: December 1, 2020Assignee: Marvell Asia Pte, Ltd.Inventors: Zubin Hemantkumar Shah, Shih-Jeff Chen, Ravindran Suresh, Leonid Livak
-
Compiler architecture for programmable application specific integrated circuit based network devices
Patent number: 10466976Abstract: A processing network including a plurality of lookup and decision engines (LDEs) each having one or more configuration registers and a plurality of on-chip routers forming a matrix for routing the data between the LDEs, wherein each of the on-chip routers is communicatively coupled with one or more of the LDEs. The processing network further including an LDE compiler stored on a memory and communicatively coupled with each of the LDEs, wherein the LDE compiler is configured to generate values based on input source code that when programmed into the configuration registers of the LDEs cause the LDEs to implement the functionality defined by the input source code.Type: GrantFiled: November 6, 2017Date of Patent: November 5, 2019Assignee: Cavium, LLCInventors: Ajeer Salil Pudiyapura, Kishore Badari Atreya, Ravindran Suresh -
Patent number: 10277464Abstract: One embodiment of the present invention provides a switch capable of auto-configuration of client devices for a link aggregation. The switch includes a packet processor, an auto-configuration module, and a link-aggregation management module. During operation, the packet processor extracts an identifier of a client device from a notification message received via a local port. The auto-configuration module, which is coupled to the packet processor, associates the local port with the identifier of the client device. If the packet processor recognizes the identifier of the client device in a message received from a remote switch, the link-aggregation management module forms a multi-switch link aggregation for the client device in conjunction with the remote switch.Type: GrantFiled: March 5, 2013Date of Patent: April 30, 2019Assignee: ARRIS Enterprises LLCInventors: Mei Yang, Ravindran Suresh, Arijit Bhattacharyya, Maocheng Hu
-
Publication number: 20180359195Abstract: System and method of network packet switching using a table representation of a trie data structure to identify a timestamp (TS) range (or time range) for a received packet based on the packet timestamp (TS). The trie data structure is programmed with a plurality of predetermined time ranges. Each node in the trie data structure corresponds to a TS prefix and is associated with a corresponding predetermined time range. A search engine in the network switch can use the packet TS as a key to traverse the trie data structure and thereby matching the packet TS to a predetermined time range according to a Longest Prefix Match (LPM) process. Provided with the TS ranges of the incoming packets, various applications and logic engines in the network switch can accordingly process the packets, such as determining a new destination IP address and performing channel switch accordingly.Type: ApplicationFiled: February 12, 2018Publication date: December 13, 2018Inventors: Zubin Hemantkumar SHAH, Shih-Jeff CHEN, Ravindran SURESH, Leonid LIVAK
-
Patent number: 9948482Abstract: A network switch to support flexible lookup key generation comprises a control CPU configured to run a network switch control stack. The network switch control stacks is configured to manage and control operations of a switching logic circuitry, provide a flexible key having a plurality of possible fields that constitute part of a lookup key to a table, and enable a user to dynamically select at deployment or runtime a subset of the fields in the flexible key to form the lookup key and thus define a lookup key format for the table. The switching logic circuitry provisioned and controlled by the network switch control stack is configured to maintain said table to be searched via the lookup key in a memory cluster and process a received data packet based on search result of the table using the lookup key generated from the dynamically selected fields in the flexible key.Type: GrantFiled: April 27, 2016Date of Patent: April 17, 2018Assignee: CAVIUM, INC.Inventors: Leonid Livak, Ravindran Suresh, Zubin Shah, Sunita Bhaskaran, Ashwini Reddy
-
COMPILER ARCHITECTURE FOR PROGRAMMABLE APPLICATION SPECIFIC INTEGRATED CIRCUIT BASED NETWORK DEVICES
Publication number: 20180067728Abstract: A processing network including a plurality of lookup and decision engines (LDEs) each having one or more configuration registers and a plurality of on-chip routers forming a matrix for routing the data between the LDEs, wherein each of the on-chip routers is communicatively coupled with one or more of the LDEs. The processing network further including an LDE compiler stored on a memory and communicatively coupled with each of the LDEs, wherein the LDE compiler is configured to generate values based on input source code that when programmed into the configuration registers of the LDEs cause the LDEs to implement the functionality defined by the input source code.Type: ApplicationFiled: November 6, 2017Publication date: March 8, 2018Inventors: Ajeer Salil Pudiyapura, Kishore Badari Atreya, Ravindran Suresh -
Patent number: 9870204Abstract: A processing network including a plurality of lookup and decision engines (LDEs) each having one or more configuration registers and a plurality of on-chip routers forming a matrix for routing the data between the LDEs, wherein each of the on-chip routers is communicatively coupled with one or more of the LDEs. The processing network further including an LDE compiler stored on a memory and communicatively coupled with each of the LDEs, wherein the LDE compiler is configured to generate values based on input source code that when programmed into the configuration registers of the LDEs cause the LDEs to implement the functionality defined by the input source code.Type: GrantFiled: March 31, 2015Date of Patent: January 16, 2018Assignee: Cavium, Inc.Inventors: Ajeer Salil Pudiyapura, Kishore Badari Atreya, Ravindran Suresh
-
Patent number: 9864583Abstract: A processing network including a plurality of lookup and decision engines (LDEs) each having one or more configuration registers and a plurality of on-chip routers forming a matrix for routing the data between the LDEs, wherein each of the on-chip routers is communicatively coupled with one or more of the LDEs. The processing network further including an LDE compiler stored on a memory and communicatively coupled with each of the LDEs, wherein the LDE compiler is configured to generate values based on input source code that when programmed into the configuration registers of the LDEs cause the LDEs to implement the functionality defined by the input source code.Type: GrantFiled: March 31, 2015Date of Patent: January 9, 2018Assignee: Cavium, Inc.Inventors: Ajeer Salil Pudiyapura, Kishore Badari Atreya, Ravindran Suresh
-
Patent number: 9864582Abstract: A processing network including a plurality of lookup and decision engines (LDEs) each having one or more configuration registers and a plurality of on-chip routers forming a matrix for routing the data between the LDEs, wherein each of the on-chip routers is communicatively coupled with one or more of the LDEs. The processing network further including an LDE compiler stored on a memory and communicatively coupled with each of the LDEs, wherein the LDE compiler is configured to generate values based on input source code that when programmed into the configuration registers of the LDEs cause the LDEs to implement the functionality defined by the input source code.Type: GrantFiled: March 31, 2015Date of Patent: January 9, 2018Assignee: Cavium, Inc.Inventors: Kishore Badari Atreya, Ajeer Salil Pudiyapura, Ravindran Suresh
-
Patent number: 9864584Abstract: A processing network including a plurality of lookup and decision engines (LDEs) each having one or more configuration registers and a plurality of on-chip routers forming a matrix for routing the data between the LDEs, wherein each of the on-chip routers is communicatively coupled with one or more of the LDEs. The processing network further including an LDE compiler stored on a memory and communicatively coupled with each of the LDEs, wherein the LDE compiler is configured to generate values based on input source code that when programmed into the configuration registers of the LDEs cause the LDEs to implement the functionality defined by the input source code.Type: GrantFiled: March 31, 2015Date of Patent: January 9, 2018Assignee: Cavium, Inc.Inventors: Ajeer Salil Pudiyapura, Kishore Badari Atreya, Ravindran Suresh
-
Compiler architecture for programmable application specific integrated circuit based network devices
Patent number: 9836283Abstract: A processing network including a plurality of lookup and decision engines (LDEs) each having one or more configuration registers and a plurality of on-chip routers forming a matrix for routing the data between the LDEs, wherein each of the on-chip routers is communicatively coupled with one or more of the LDEs. The processing network further including an LDE compiler stored on a memory and communicatively coupled with each of the LDEs, wherein the LDE compiler is configured to generate values based on input source code that when programmed into the configuration registers of the LDEs cause the LDEs to implement the functionality defined by the input source code.Type: GrantFiled: March 31, 2015Date of Patent: December 5, 2017Assignee: Cavium, Inc.Inventors: Ajeer Salil Pudiyapura, Kishore Badari Atreya, Ravindran Suresh -
Publication number: 20170317922Abstract: A network switch to support flexible lookup key generation comprises a control CPU configured to run a network switch control stack. The network switch control stacks is configured to manage and control operations of a switching logic circuitry, provide a flexible key having a plurality of possible fields that constitute part of a lookup key to a table, and enable a user to dynamically select at deployment or runtime a subset of the fields in the flexible key to form the lookup key and thus define a lookup key format for the table. The switching logic circuitry provisioned and controlled by the network switch control stack is configured to maintain said table to be searched via the lookup key in a memory cluster and process a received data packet based on search result of the table using the lookup key generated from the dynamically selected fields in the flexible key.Type: ApplicationFiled: April 27, 2016Publication date: November 2, 2017Inventors: Leonid Livak, Ravindran Suresh, Zubin Shah, Sunita Bhaskaran, Ashwini Reddy
-
Publication number: 20170237691Abstract: A network switch to support multiple virtual switch instances comprises a control CPU configured to run a plurality of network switch control stacks, wherein each of the network switch control stacks is configured to manage and control operations of one or more virtual switch instances of a switching logic circuitry of the network switch. The network switch further includes said switching logic circuitry partitioned into a plurality of said virtual switch instances, wherein each of the virtual switch instances is provisioned and controlled by one of the network switch control stacks and is dedicated to serve and route data packets for a specific client of the network switch.Type: ApplicationFiled: February 12, 2016Publication date: August 17, 2017Inventor: Ravindran Suresh
-
Patent number: 9606781Abstract: A parser engine programming tool configured to receive an input file representing a directly connected cyclical graph or tree of decision points for parsing a range of incoming packet headers, automatically generate all possible paths within the graph and thereby the associated possible headers, and convert the determined paths/headers into a proper format for programming memory of a parser engine to parse the determined headers (represented by the paths).Type: GrantFiled: March 31, 2015Date of Patent: March 28, 2017Assignee: Cavium, Inc.Inventors: Kishore Badari Atreya, Ajeer Salil Pudiyapura, Ravindran Suresh
-
Patent number: 9582251Abstract: A processing network including a plurality of lookup and decision engines (LDEs) each having one or more configuration registers and a plurality of on-chip routers forming a matrix for routing the data between the LDEs, wherein each of the on-chip routers is communicatively coupled with one or more of the LDEs. The processing network further including an LDE compiler stored on a memory and communicatively coupled with each of the LDEs, wherein the LDE compiler is configured to generate values based on input source code that when programmed into the configuration registers of the LDEs cause the LDEs to implement the functionality defined by the input source code.Type: GrantFiled: March 31, 2015Date of Patent: February 28, 2017Assignee: Cavium, Inc.Inventors: Ajeer Salil Pudiyapura, Kishore Badari Atreya, Ravindran Suresh
-
Publication number: 20160139887Abstract: A processing network including a plurality of lookup and decision engines (LDEs) each having one or more configuration registers and a plurality of on-chip routers forming a matrix for routing the data between the LDEs, wherein each of the on-chip routers is communicatively coupled with one or more of the LDEs. The processing network further including an LDE compiler stored on a memory and communicatively coupled with each of the LDEs, wherein the LDE compiler is configured to generate values based on input source code that when programmed into the configuration registers of the LDEs cause the LDEs to implement the functionality defined by the input source code.Type: ApplicationFiled: March 31, 2015Publication date: May 19, 2016Inventors: Ajeer Salil Pudiyapura, Kishore Badari Atreya, Ravindran Suresh
-
Publication number: 20160139892Abstract: A parser engine programming tool configured to receive an input file representing a directly connected cyclical graph or tree of decision points for parsing a range of incoming packet headers, automatically generate all possible paths within the graph and thereby the associated possible headers, and convert the determined paths/headers into a proper format for programming memory of a parser engine to parse the determined headers (represented by the paths).Type: ApplicationFiled: March 31, 2015Publication date: May 19, 2016Inventors: Kishore Badari Atreya, Ajeer Salil Pudiyapura, Ravindran Suresh
-
Publication number: 20160139893Abstract: A processing network including a plurality of lookup and decision engines (LDEs) each having one or more configuration registers and a plurality of on-chip routers forming a matrix for routing the data between the LDEs, wherein each of the on-chip routers is communicatively coupled with one or more of the LDEs. The processing network further including an LDE compiler stored on a memory and communicatively coupled with each of the LDEs, wherein the LDE compiler is configured to generate values based on input source code that when programmed into the configuration registers of the LDEs cause the LDEs to implement the functionality defined by the input source code.Type: ApplicationFiled: March 31, 2015Publication date: May 19, 2016Inventors: Kishore Badari Atreya, Ajeer Salil Pudiyapura, Ravindran Suresh