# US 11,451,439 B2 · Systems and methods for configuring a device via a software-defined networking controller

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

- Number: US 11,451,439 B2
- Document ID: US11451439B2
- Status: Granted
- Kind: B2
- Application number: 17/135,391
- Filed: 2020-12-28
- Published: 2021-04-22
- Granted: 2022-09-20
- Earliest claimed: 2015-05-05
- Assignees: Citrix Systems, Inc.
- Applicants: Citrix Systems, Inc.
- Inventors: Satyendra Tiwari; Swetha Garipally
- Web page: https://patentgrep.com/patent/US11451439B2

## CPC

- H04L 41/0806: for initial configuration or provisioning, e.g. plug-and-play
- H04L 41/0895: Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
- H04L 41/0843: {based on generic templates}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The disclosure is directed towards systems and methods for configuring a device via an SDN controller. A connection can be established between an SDN controller and a device intermediary to a plurality of clients and a plurality of servers, in order to provision resources of the device for use by one or more applications of the SDN controller. A request can be received by the device from the SDN controller to define one or more configuration policies for an application communicating with the SDN controller. The configuration policies can configure the device to provide one or more functions of the device to the application communicating with the SDN controller. The request can be generated by the SDN controller and can include function definitions based on a device model installed on the SDN controller. The device model can corresponding to the device and can include device properties of the device and configuration parameters for each of the functions provided by the device. In response to receiving the request to define the one or more configuration policies, the device can perform function-level configuration of the device, including configuring one or more functions of the device to process packets corresponding to the application communicating with the SDN controller that are received by the device using the one or more functions of the device.

## Claims

### Claim 1

A method comprising:
establishing, by a device, a connection with a software-defined-network (SDN) controller responsive to a first request to be configured via the SDN controller for an application, wherein the SDN controller has access to a device model that (i) corresponds to the device and (ii) identifies a parameter for configuring at least a function provided by the device;
receiving, by the device from the SDN controller via the connection, a second request to configure the parameter for at least the function provided by the device; and
configuring, by the device based at least on the device model, the parameter for at least the function of the device to process network traffic of the application communicated via the device.

### Claim 2 (depends on 1)

The method of claim 1, further comprising receiving, by the device, the first request to establish the connection from the SDN controller.

### Claim 3 (depends on 1)

The method of claim 1, wherein the second request is to configure a policy for the application, the policy used to configure the parameter for at least the function provided by the device for the application.

### Claim 4 (depends on 3)

The method of claim 3, wherein configuring the parameter further comprises configuring using the device model and the policy, the parameter of the device for at least the function to process the network traffic of the application communicated via the device.

### Claim 5 (depends on 1)

The method of claim 1, wherein the second request is generated to be interpreted by the device based on the device model.

### Claim 6 (depends on 1)

The method of claim 1, further comprising identifying, by the device, the device model to the SDN controller.

### Claim 7 (depends on 1)

The method of claim 1, wherein the device is intermediary to one or more clients and one or more servers and the network traffic of the application is communicated between the one or more clients and the one or more servers.

### Claim 8

A method comprising:
establishing, between an software-defined-network (SDN) controller and a device intermediary to a plurality of clients and a plurality of servers, a connection to provision resources of the device for use by one or more applications associated with the SDN controller;
generating, by the SDN controller, a request to configure one or more parameters of one or more functions of the device for an application of the one or more applications, the one or more parameters of the one or more functions based at least on a device model of the device that is (i) accessed by the SDN controller and (ii) identifies the one or more parameters; and
communicating, by the SDN controller via the connection, the request to the device to cause the device to configure, based at least on the device model, a parameter of the one or more parameters for at least a function of the one or more functions of the device to process network traffic of the application communicated via the device.

### Claim 9 (depends on 8)

The method of claim 8, wherein the device model is installed on the SDN controller.

### Claim 10 (depends on 8)

The method of claim 8, wherein the request is generated to be interpreted by the device based on the device model.

### Claim 11 (depends on 8)

The method of claim 8, wherein the request is generated to include definitions of the one or more functions based on the device model.

### Claim 12 (depends on 8)

The method of claim 8, further comprising maintaining, by the SDN controller, an application profile, the application profile including one or more application policies for handling traffic between the plurality of clients and the plurality of servers for the one or more applications.

### Claim 13 (depends on 12)

The method of claim 12, further comprising communicating, by the SDN controller, the request identifying the one or more application policies to configure the one or more parameters of the one or more functions of the device for the application.

### Claim 14

A system comprising:
a device comprising one or more processors, coupled to memory and in communication over a network with a software-defined-network (SDN) controller, the device configured to:
establish, responsive to a first request to be configured via the SDN controller for an application, a connection with the SDN controller, wherein the SDN controller has access to a device model that (i) corresponds to the device and iii) identifies a parameter for configuring at least a function provided by the device;
receive, from the SDN controller via the connection, a second request to configure the parameter for at least the function provided by the device; and
configure, based at least on the device model, the parameter for at least the function of the device to process network traffic of the application communicated via the device.

### Claim 15 (depends on 14)

The system of claim 14, wherein the device is further configured to receive first request to establish the connection from the SDN controller.

### Claim 16 (depends on 14)

The system of claim 14, wherein the second request is to configure a policy for the application, wherein the policy is used to configure the parameter for at least the function provided by the device for the application.

### Claim 17 (depends on 16)

The system of claim 16, wherein configuring the parameter comprises configuring, using the device model and the policy, the parameter of the device for at least the function to process the network traffic of the application communicated via the device.

### Claim 18 (depends on 14)

The system of claim 14, wherein the second request is generated to be interpreted by the device based on the device model.

### Claim 19 (depends on 14)

The system of claim 14, wherein the device is further configured to identify the device model to the SDN controller.

### Claim 20 (depends on 14)

The system of claim 14, wherein the device is intermediary to one or more clients and one or more server and the network traffic of the application is communicated between the one or more clients and the one or more servers.
