Distributed processing of network device tasks
First Claim
1. A method comprising:
- executing, by a router, a version of a network operating system;
identifying, with a virtual machine agent executing at the router, a first virtual machine executing at a computing cloud communicatively coupled to the router, wherein the first virtual machine executes a first instance of the version of the network operating system;
sending, with the virtual machine agent and to the first virtual machine, a request to perform a first task, wherein the first task is for a first logical segment of a network;
receiving, with the virtual machine agent and from the first virtual machine, a first task response that includes a result of performing the first task;
identifying, with the virtual machine agent executing at the router, a second virtual machine executing at the computing cloud, wherein the second virtual machine executes a second instance of the version of the network operating system, and wherein the first virtual machine and the second virtual machine are different virtual machines;
sending, with the virtual machine agent and to the second virtual machine, a request to perform a second task, wherein the second task is for a second logical segment of the network;
receiving, with the virtual machine agent and from the second virtual machine, a second task response that includes a result of performing the second task; and
updating, based on the result included in the first task response and the result included in the second task response, the router.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are described for distributing network device tasks across virtual machines executing in a computing cloud. A network device includes a network interface to send and receive messages, a routing unit comprising one or more processors configured to execute a version of a network operating system, and a virtual machine agent. The virtual machine agent is configured to identify a virtual machine executing at a computing cloud communicatively coupled to the network device, wherein the identified virtual machine executes an instance of the version of the network operating system, to send, using the at least one network interface and to the virtual machine, a request to perform a task, and to receive, using the at least one network interface and from the virtual machine, a task response that includes a result of performing the task. The routing unit is configured to update the network device based on the result.
-
Citations
17 Claims
-
1. A method comprising:
-
executing, by a router, a version of a network operating system; identifying, with a virtual machine agent executing at the router, a first virtual machine executing at a computing cloud communicatively coupled to the router, wherein the first virtual machine executes a first instance of the version of the network operating system; sending, with the virtual machine agent and to the first virtual machine, a request to perform a first task, wherein the first task is for a first logical segment of a network; receiving, with the virtual machine agent and from the first virtual machine, a first task response that includes a result of performing the first task; identifying, with the virtual machine agent executing at the router, a second virtual machine executing at the computing cloud, wherein the second virtual machine executes a second instance of the version of the network operating system, and wherein the first virtual machine and the second virtual machine are different virtual machines; sending, with the virtual machine agent and to the second virtual machine, a request to perform a second task, wherein the second task is for a second logical segment of the network; receiving, with the virtual machine agent and from the second virtual machine, a second task response that includes a result of performing the second task; and updating, based on the result included in the first task response and the result included in the second task response, the router. - View Dependent Claims (2, 5, 6, 7)
-
-
3. A method comprising:
-
executing, by a router, a version of a network operating system; sending, with the virtual machine agent executing at the router and to a virtual machine manager, a request for computing resources, wherein the request includes an indication of the version of the network operating system and an indication of a task to be performed; receiving, with the virtual machine agent, from the virtual machine manager, a response that includes an indication of a socket by which the virtual machine is reachable; sending, with the virtual machine agent and to the virtual machine using the socket, a request to perform a task; receiving, with the virtual machine agent and from the virtual machine using the socket, a task response that includes a result of performing the task; and updating, based on the result included in the task response, the router. - View Dependent Claims (4)
-
-
8. A router comprising:
-
at least one network interface configured to send and receive messages; a routing unit comprising one or more processors configured to execute a version of a network operating system; and a virtual machine agent configured to; identify a first virtual machine executing at a computing cloud communicatively coupled to the router, wherein the first virtual machine executes a first instance of the version of the network operating system; send, using the at least one network interface and to the first virtual machine, a request to perform a first task, wherein the first task is for a first logical segment of a network; receive, using the at least one network interface and from the first virtual machine, a first task response that includes a result of performing the first task; identify a second virtual machine executing at the computing cloud, wherein the second virtual machine executes a second instance of the version of the network operating system, and wherein the first virtual machine and the second virtual machine are different virtual machines; send, using the at least one network interface and to the second virtual machine, a request to perform a second task, wherein the second task is for a second logical segment of the network; and receive, using the at least one network interface and from the second virtual machine, a second task response that includes a result of performing the second task, wherein the routing unit is configured to update the router based on the result included in the first task response and the result included in the second task response. - View Dependent Claims (9, 12, 13, 14)
-
-
10. A router comprising:
-
a routing unit comprising one or more processors configured to execute a version of a network operating system; and a virtual machine agent configured to; send a request for computing resources to a virtual machine manager, wherein the request includes an indication of the version of the network operating system and an indication of a task to be performed; receive a response from the virtual machine manager, wherein the response includes an indication of a socket by which the virtual machine is reachable; send, to the virtual machine and using the socket, a request to perform a task; receive, from the virtual machine and using the socket, a task response that includes a result of performing the task; and update, based on the result included in the task response, the router. - View Dependent Claims (11)
-
-
15. A computer-readable storage medium encoded with instructions that cause one or more processors of a router to:
-
execute a version of a network operation system; identify a first virtual machine executing at a computing cloud communicatively coupled to the router, wherein the first virtual machine executes a first instance of the version of the network operating system; send, to the first virtual machine, a request to perform a first task, wherein the first task is for a first logical segment of a network; receive, from the first virtual machine, a first task response that includes a result of performing the first task; identify a second virtual machine executing at the computing cloud, wherein the second virtual machine executes a second instance of the version of the network operating system, and wherein the first virtual machine and the second virtual machine are different virtual machines; send, to the second virtual machine, a request to perform a second task, wherein the second task is for a second logical segment of the network; receive, from the second virtual machine, a second task response that includes a result of performing the second task; and update, based on the result included in the first task response and the result included in the second task response, the router. - View Dependent Claims (16, 17)
-
Specification