# US 12,182,606 B2 · Intelligent data plane acceleration by offloading to distributed smart network interfaces

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,182,606 B2
- Document ID: US12182606B2
- Status: Granted
- Kind: B2
- Application number: 18/301,623
- Filed: 2023-04-17
- Published: 2023-08-10
- Granted: 2024-12-31
- Earliest claimed: 2020-12-22
- Assignees: Reliance Jio Infocomm USA, Inc.
- Applicants: Reliance Jio Infocomm USA, Inc.
- Inventors: Arun Rajagopal
- Web page: https://patentgrep.com/patent/US12182606B2

## CPC

- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- H04L 67/12: specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L 67/51: Discovery or management thereof, e.g. service location protocol [SLP] or web services
- H04L 67/61: taking into account QoS or priority requirements
- H04L 67/62: Establishing a time schedule for servicing the requests
- G06F 11/2002: {where interconnections or communication control functionality are redundant (flexible arrangements for bus networks involving redundancy H04L12/40176)}
- G06F 2009/45595: {Network integration; Enabling network access in virtual machine instances}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A system for processing data, comprising a compute node having a first processor that is configured to receive a digital data message containing a request for computing services and to allocate processing resources on a private network as a function of the request. A smart network interface controller (NIC) management system operating on a second processor and configured to cause the second processor to select a smart NIC associated with the private network to allocate the smart NIC to the computing services. The smart NIC includes a processor that is configured to interface with a public network and to send and receive data over the public network associated with the computing services.

## Claims

### Claim 1

A system for processing data, comprising:
a compute node having a first processor that is configured to interact with a cloud computing environment;
the cloud computing environment configured to receive a digital data message containing a request for computing services from the compute node and to allocate processing resources of the cloud computing environment as a function of the request;
a smart network interface controller (NIC) management system operating on a second processor and configured to cause the second processor to select a remote smart NIC that is separate from the smart NIC management system and associated with a network and to allocate the remote smart NIC to the computing services; and
the remote smart NIC includes a processor that is configured to interface with the network and to send and receive data over the network associated with the computing services.

### Claim 2 (depends on 1)

The system of claim 1 wherein the computing services comprises a container having a network address and the remote smart NIC is selected from a plurality of smart NICs and sends and receives data over the network as a function of the network address.

### Claim 3 (depends on 1)

The system of claim 1 further comprising:
the cloud computing environment configured to receive a second digital data message containing a second request for computing services and to allocate processing resources on the network as a function of the second request for computing services; and
the smart NIC management system configured to cause the second processor to select a second smart NIC associated with the network that is remote from the smart NIC and that is also remote from the smart NIC management system to allocate to the second request for computing services.

### Claim 4 (depends on 3)

The system of claim 3 wherein the second smart NIC includes a processor that is configured to interface with the network and to send and receive data over the network associated with the second request for computing services.

### Claim 5 (depends on 1)

The system of claim 1 wherein the smart NIC management system is configured to monitor the remote smart NIC to determine whether a failure has occurred.

### Claim 6 (depends on 1)

The system of claim 1 wherein the smart NIC management system is configured to monitor the remote smart NIC to determine whether a failure has occurred and to re-allocate the computing services to a different smart NIC that is remote from the remote smart NIC where a failure has occurred and that is remote from the smart NIC management system.

### Claim 7 (depends on 1)

The system of claim 1 wherein the smart NIC management system is configured to monitor the remote smart NIC to determine whether a failure has occurred and to re-allocate the computing services to a first different smart NIC and to re-allocate other computing services that were handled by the remote smart NIC to a second different smart NIC.

### Claim 8 (depends on 1)

The system of claim 1 wherein the smart NIC management system is configured to monitor the computing services and to de-allocate the remote smart NIC when the computing services have terminated.

### Claim 9 (depends on 1)

The system of claim 1 further comprising the compute node configured to receive a second digital data message containing a second request for computing services and to allocate processing resources on the network as a function of the second request for computing services.

### Claim 10 (depends on 9)

The system of claim 9 further comprising the smart NIC management system configured to cause the second processor to instantiate a second smart NIC associated with the network to allocate to the second request for computing services.

### Claim 11

A method for processing data, comprising:
configuring a cloud computing environment to receive a digital data message containing a request for computing services from a compute node having a first processor and to allocate processing resources on a network as a function of the request;
configuring a smart network interface controller (NIC) management system operating on a second processor to cause the second processor to select a remote smart NIC associated with the network and to allocate the remote smart NIC to the computing services; and
configuring a third processor of the remote smart NIC to interface with the network and to send and receive data over the network associated with the computing services, wherein the remote smart NIC management system is separate from the remote smart NIC.

### Claim 12 (depends on 11)

The method of claim 11 wherein the computing services comprises a container having a network address and further comprising configuring the remote smart NIC that is separate from the smart NIC management system to send and receive data over the network as a function of the network address.

### Claim 13 (depends on 11)

The method of claim 11 further comprising:
configuring the cloud computing environment to receive a second digital data message containing a second request for computing services and to allocate processing resources on the network as a function of the second request for computing services; and
configuring the smart NIC management system to cause the second processor to select a second smart NIC associated with the network to allocate to the second request for computing services.

### Claim 14 (depends on 13)

The method of claim 13 further comprising configuring a processor of the second smart NIC to interface with the network and to send and receive data over the network associated with the second request for computing services.

### Claim 15 (depends on 11)

The method of claim 11 further comprising configuring the smart NIC management system to monitor the remote smart NIC to determine whether a failure has occurred.

### Claim 16 (depends on 11)

The method of claim 11 further comprising configuring the smart NIC management system to monitor the remote smart NIC to determine whether a failure has occurred and to re-allocate the computing services to a different smart NIC.

### Claim 17 (depends on 11)

The method of claim 11 further comprising configuring the smart NIC management system to monitor the remote smart NIC to determine whether a failure has occurred and to re-allocate the computing services to a first different smart NIC and to reallocate other computing services that were handled by the remote smart NIC to a second different smart NIC.

### Claim 18 (depends on 11)

The method of claim 11 further comprising configuring the smart NIC management system to monitor the computing services and to de-allocate the remote smart NIC when the computing services have terminated.

### Claim 19 (depends on 11)

The method of claim 11 further comprising configuring the compute node to receive a second digital data message containing a second request for computing services and to allocate processing resources on the network as a function of the second request for computing services.

### Claim 20 (depends on 19)

The method of claim 19 further comprising configuring the smart NIC management system to cause the second processor to instantiate a second smart NIC associated with the network to allocate to the second request for computing services.
