# US 2017/0288901 A1 · Transmitting packet from device after timeout in network communications utilizing virtual network connection

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

- Number: US 2017/0288901 A1
- Document ID: US20170288901A1
- Status: Published application
- Kind: A1
- Application number: 15/494,849
- Filed: 2017-04-24
- Published: 2017-10-05
- Earliest claimed: 2007-10-17
- Assignees: Dispersive Networks, Inc.
- Applicants: Dispersive Networks, Inc.
- Inventors: Robert W. Twitchell, JR.
- Web page: https://patentgrep.com/patent/US20170288901A1

## CPC

- H04L 45/586: of virtual routers
- H04L 12/56: {Packet switching systems}
- H04L 47/17: Interaction among intermediate nodes, e.g. hop by hop
- H04L 51/06: Message adaptation to terminal or network requirements
- H04L 67/06: specially adapted for file transfer, e.g. file transfer protocol [FTP]
- H04L 69/22: Parsing or analysis of headers
- H04L 69/28: Timers or timing mechanisms used in protocols
- H04L 69/325: in the network layer [OSI layer 3], e.g. X.25 (H04L69/16 takes precedence)
- H04L 69/14: Multichannel or multilink protocols
- H04L 69/18: Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method of providing network communications includes spawning a virtual machine that virtualizes network capabilities of the device such that a virtual network connection is provided; using the virtual network connection, transmitting a packet to a first node using a first routing protocol for communication to a destination device; setting a timer, the timer having a value corresponding to an amount of time greater than an average response time of the destination device; and, upon expiration of the timer, transmitting the packet to a second node using a second routing protocol for communication to the destination device.

## Claims

### Claim 1

A method of providing network communications, comprising:
(a) spawning a virtual machine that virtualizes network capabilities of the device such that a virtual network connection is provided;
(b) using the virtual network connection, transmitting a packet to a first node using a first routing protocol for communication to a destination device;
(c) setting a timer, the timer having a value corresponding to an amount of time greater than an average response time of the destination device; and
(d) upon expiration of the timer, transmitting the packet to a second node using a second routing protocol for communication to the destination device.

### Claim 2 (depends on 1)

The method of claim 1, wherein the second routing protocol is different from the first routing protocol.

### Claim 3 (depends on 1)

The method of claim 1, wherein the second node is different from the first node.

### Claim 4 (depends on 1)

The method of claim 1, wherein the second routing protocol is different from the first routing protocol, and the second node is different from the first node.

### Claim 5 (depends on 1)

The method of claim 1, wherein said step (d) comprises transmitting the packet to the second node using the virtual network connection with the second routing protocol.

### Claim 6 (depends on 1)

The method of claim 1, wherein the virtual machine is spawned in response to a request for a network connection from an application running on the device.

### Claim 7 (depends on 7)

The method of claim 7, wherein the application runs on the device outside of the virtual machine.

### Claim 8 (depends on 7)

The method of claim 7, wherein the virtual machine is created by a monitor in response to a controller that is configured to intercept messages sent to a network adapter.

### Claim 9 (depends on 1)

The method of claim 1, wherein the virtual machine encapsulates a single hardware network interface of the device.

### Claim 10 (depends on 1)

The method of claim 1, wherein the virtual machine encapsulates a plurality of hardware network interfaces of the device.

### Claim 11 (depends on 1)

The method of claim 1, wherein the device includes a plurality of processing cores.

### Claim 12 (depends on 1)

The method of claim 1, wherein the application is a video game.

### Claim 13 (depends on 1)

The method of claim 1, wherein the device is a personal computer.

### Claim 14 (depends on 1)

The method of claim 1, wherein the device is a handheld mobile device.

### Claim 15

A method of providing network communications, comprising the steps of:
(a) spawning a first virtual machine that virtualizes network capabilities of the device such that a first virtual network connection is provided;
(b) using the first virtual network connection, transmitting a packet to a first node using a first routing protocol for communication to a destination device;
(c) setting a timer, the timer having a value corresponding to an amount of time greater than an average response time of the destination device;
(d) upon expiration of the timer, spawning a second virtual machine that virtualizes network capabilities of the device such that a second virtual network connection is provided; and
(e) using the second virtual network connection, transmitting a packet to a second node using a second routing protocol for communication to the destination device.

### Claim 16 (depends on 15)

The method of claim 15, wherein the second routing protocol is different from the first routing protocol, and wherein the second node is different from the first node.

### Claim 17 (depends on 15)

The method of claim 15, wherein the first virtual machine is spawned in response to a request for a network connection from an application running on the device.

### Claim 18 (depends on 17)

The method of claim 17, wherein the application runs on the device outside of the first virtual machine.

### Claim 19 (depends on 17)

The method of claim 17, wherein the first virtual machine encapsulates a single hardware network interface of the device.

### Claim 20

A device comprising:
(a) a processor;
(b) one or more network adapters providing network capabilities;
(c) one or more computer readable media containing computer executable instructions configured to:
(i) spawn a first virtual machine that virtualizes network capabilities of the one or more network adapters of the device such that a first virtual network connection is provided,
(ii) using the first virtual network connection, transmit a packet to a first node using a first routing protocol for communication to a destination device,
(iii) set a timer, the timer having a value corresponding to an amount of time greater than an average response time of the destination device, and
(iv) upon expiration of the timer, transmit the packet to a second, different node using the first virtual network connection with a second routing protocol for communication to the destination device.
