Network routing through an overlay network
AssigneeCitrix Systems, Inc.
InventorsMarco Murgia, Praveen R. Dhanabalan
Life of this patent
Estimating the term…
Abstract
Computer networking device obtains route information including route attributes specifying characteristics for each of a plurality of routes through a first network. A routing algorithm is applied to choose an optimal route to one of a plurality of peer computer networking devices comprising a second network which is an overlay upon the first network. The optimal route is chosen based on the type of data contained in the data packet and the plurality of route attributes associated with the routes. The routes traverse paths through the first computer network which include network nodes other than the peer networking devices.
Claims22
A method for routing packet data through an overlay network based on application needs and network conditions, comprising:
- in a computer networking device connected to a first computer network, determining a plurality of routes to a plurality of peer computer networking devices;
- obtaining at the computer networking device route information for each of the plurality of routes, said route information comprising a plurality of route attributes specifying dynamic characteristics for each of the plurality of routes;
- storing at the computer networking device the route information for each of the plurality of routes, including the plurality of route attributes;
- receiving at least one data packet to be communicated through the computer networking device;
- inspecting the at least one data packet received to determine a type of data contained therein;
- selectively varying levels of significance or weight accorded to each of the plurality of route attributes within a routing algorithm based on the type of data contained in the at least one data packet;
- using the routing algorithm to choose an optimal route to one of the peer computer networking devices from among the plurality of routes based on the type of data contained in the data packet and the plurality of route attributes associated with each of said plurality of routes;
- wherein said computer networking device and the peer computer networking devices comprise a second computer network which is an overlay upon on the first computer network, and wherein said plurality of routes traverse paths through said first computer network which include network nodes other than said peer networking devices.
A network appliance for routing packet data through an overlay network, comprising:
- a computer networking device including at least one processing circuit and configured to
- determine within a first computer network a plurality of routes to a plurality of peer computer networking devices;
- obtain route information for each of the plurality of routes, said route information comprising a plurality of route attributes specifying dynamic characteristics for each of the plurality of routes;
- store in a memory device the route information for each of the plurality of routes, including the plurality of route attributes;
- receive at least one data packet to be communicated through the first computer network;
- inspect the at least one data packet received to determine a type of data contained therein;
- and
- apply a routing algorithm to choose an optimal route to one of the peer computer networking devices from among the plurality of routes based on the type of data contained in the data packet and the plurality of route attributes associated with each of said plurality of routes;
- wherein said computer networking device and the peer computer networking devices comprise a second computer network which is an overlay upon on the first computer network;
- wherein said plurality of routes traverse paths through said first computer network which include network nodes other than said peer networking devices;
- and
- wherein said routing algorithm selectively varies a level of significance or weight accorded to each of the plurality of route attributes based on the type of data contained in the data packet.
Dependencies are inferred from the claim text.