×

Network communications of application running on device utilizing virtual network connection and routing protocol based on application connection criteria

  • US 8,341,291 B2
  • Filed: 09/23/2011
  • Issued: 12/25/2012
  • Est. Priority Date: 10/17/2007
  • Status: Active Grant
First Claim
Patent Images

1. A method of providing network communications using virtualization, comprising the steps of:

  • (a) detecting, at a first device, a request for a network connection from an application running on the first device;

    (b) spawning, at the first device in response to the request for a network connection, a first virtual machine instance that runs on the first device and that virtualizes network capabilities of the first device such that a first virtual network connection is provided;

    (c) querying an application interface to determine application-specific connection criteria associated with the application;

    (d) using the application-specific connection criteria associated with the application, selecting, at the first device, a routing protocol from among a plurality of available routing protocols for communicating data from the application over a network using the first virtual network connection; and

    (e) using the selected routing protocol of said step (d), communicating data from the application over the network in a plurality of packets to a destination device, the method involving, for each packet,(i) transmitting, from the first device using the first virtual network connection and the selected routing protocol, the packet for communication to the destination device,(ii) receiving, at networking hardware of a second device, the packet,(iii) intercepting, by a second virtual machine instance that runs on the second device and that virtualizes network capabilities of the second device such that a second virtual network connection is provided, the packet as it is passed from the networking hardware of the second device,(iv) selecting, at the second device based on the selected routing protocol, a next node to transmit the packet to,(v) transmitting, from the second device using the second virtual network connection, the packet for communication to the destination device, and(vi) receiving, at a third virtual machine instance that runs on the destination device and that virtualizes network capabilities of the destination device, the packet;

    (f) wherein the application runs outside of the first virtual machine instance.

View all claims
  • 7 Assignments
Timeline View
Assignment View
    ×
    ×