PROVIDING NETWORK COMMUNICATIONS SATISFYING APPLICATION REQUIREMENTS USING VIRTUALIZATION
First Claim
1. A method of providing network communications, comprising the steps of:
- (a) receiving, at a second device via a virtual network connection associated with virtual dispersive routing (VDR) software that virtualizes network capabilities of the second device, a packet communicated from a first device over a connection path comprising a plurality of other devices, the packet including a header and a payload, the payload including data appended thereto by one or more devices of the plurality of devices; and
(b) determining, at the second device by the VDR software, whether the connection path satisfies one or more requirements of an application running on the second device, the determination being based at least in part on the data appended to the payload by the one or more devices of the plurality of other devices.
5 Assignments
0 Petitions
Accused Products
Abstract
A method of providing network communications includes receiving, at a second device via a virtual network connection associated with virtual dispersive routing (VDR) software that virtualizes network capabilities of the second device, a packet communicated from a first device over a connection path comprising a plurality of other devices, the packet including a header and a payload, the payload including data appended thereto by one or more devices of the plurality of devices; and determining, at the second device by the VDR software, whether the connection path satisfies one or more requirements of an application running on the second device, the determination being based at least in part on the data appended to the payload by the one or more devices of the plurality of other devices.
37 Citations
20 Claims
-
1. A method of providing network communications, comprising the steps of:
-
(a) receiving, at a second device via a virtual network connection associated with virtual dispersive routing (VDR) software that virtualizes network capabilities of the second device, a packet communicated from a first device over a connection path comprising a plurality of other devices, the packet including a header and a payload, the payload including data appended thereto by one or more devices of the plurality of devices; and (b) determining, at the second device by the VDR software, whether the connection path satisfies one or more requirements of an application running on the second device, the determination being based at least in part on the data appended to the payload by the one or more devices of the plurality of other devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of providing network communications, comprising the steps of:
-
(a) receiving, at a second device via a virtual network connection that virtualizes network capabilities of the second device, a packet communicated from a first device over a first connection path comprising a plurality of other devices using a first routing protocol, the packet including a header and a payload, the payload including data appended thereto by one or more devices of the plurality of devices; (b) determining, at the second device, that the first connection path does not satisfy one or more requirements of an application running on the second device, the determination being based at least in part on the data appended to the payload by the one or more devices of the plurality of devices; (c) in response to the determining step, selecting a second routing protocol from among a plurality of available routing protocols for communicating data using virtualized network capabilities of the second device, the second routing protocol being different than the first routing protocol; and (d) using the selected routing protocol, communicating data from the second device to the first device over a second connection path, the second connection path being different from the first connection path. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A device, comprising:
-
(a) a processor; (b) one or more network adapters providing network capabilities; and (c) one or more computer readable media containing computer executable instructions configured to; (i) receive, at the device via a first virtual network connection that virtualizes network capabilities of the one or more network adapters of the device, a packet communicated from another device over a first connection path comprising a plurality of other devices using a first routing protocol, the packet including a header and a payload, the payload including data appended thereto by one or more devices of the plurality of other devices, (ii) determine, at the device, whether the connection path satisfies one or more requirements of an application running on the device, the determination being based at least in part on the data appended to the payload by the one or more devices of the plurality of other devices, (iii) thereafter, select a second routing protocol from among a plurality of available routing protocols for communicating data using virtualized network capabilities of the second device, the second routing protocol being different than the first routing protocol, and (iv) using the selected routing protocol, communicating data from the second device to the first device, via a second virtual network connection, over a second connection path, the second connection path being different from the first connection path.
-
Specification