Patents Assigned to Dispersive Networks Inc.
-
Patent number: 10833972Abstract: In accordance with one or more preferred implementations, an overlay network in the form of a dispersive virtual network is implemented utilizing data deflects to implement and facilitate routing in a data plane and call processing deflects to implement and facilitate routing in a control plane. Various nodes in the dispersive virtual network, such as end devices running dispersive virtual networking client software, establish communication channels to these deflects running dispersive virtual networking protocols transported by user datagram protocol (UDP) frames, transmission control protocol (TCP) streams, and hypertext transfer protocol (HTTP) streams.Type: GrantFiled: November 30, 2018Date of Patent: November 10, 2020Assignee: Dispersive Networks, Inc.Inventors: William Vaughan, Boris Altshul, Gustav Larsson
-
Patent number: 10791055Abstract: A method for network communications from a first device to a second device includes communicating data from the first device to the second device by spawning a first virtual machine for a first network connection that virtualizes network capabilities of the electronic device, and using the virtualized network capabilities of the first virtual machine, transmitting a plurality of packets for communication to a first network address and port combination associated with the second device. The method further includes repeatedly changing to a respective another network address and port combination by repeatedly spawning a respective another virtual machine for a respective another network connection that virtualizes network capabilities of the electronic device, and using the virtualized network capabilities of the spawned respective another virtual machine, transmitting a plurality of packets for communication to the respective another network address and port combination associated with the second device.Type: GrantFiled: August 14, 2018Date of Patent: September 29, 2020Assignee: Dispersive Networks, Inc.Inventor: Robert W. Twitchell, Jr.
-
Patent number: 10541907Abstract: A method of communicating data using virtualization includes splitting, at endpoint software running on a first device, first data for communication to a destination device into a first plurality of data streams; selecting, at the first device by the endpoint software, a first plurality of deflects for use in communicating the first plurality of data streams; communicating each of the first plurality of data streams over a different one of the selected first plurality of deflects; splitting, at the first deflect, a particular data stream of the first plurality of data streams into a second plurality of data streams; selecting, at the first deflect, a second plurality of deflects for use in communicating the second plurality of data streams; and communicating each of the second plurality of data streams over a different one of the selected second plurality of deflects.Type: GrantFiled: April 27, 2018Date of Patent: January 21, 2020Assignee: Dispersive Networks, Inc.Inventor: Robert W. Twitchell, Jr.
-
Patent number: 8959627Abstract: A method of engaging in network communications by a device includes spawning a first virtual machine for a network connection that virtualizes network capabilities of a device; receiving a packet communicated from a transmitting device at the first virtual machine of the device; determining that the packet is corrupted, said determination being based on information from an application running on the device; in response to said step of determining that the packet is corrupted, quarantining the packet; spawning a second virtual machine for a network connection that virtualizes network capabilities of the device; and communicating, using the second virtual machine, a message to the transmitting device.Type: GrantFiled: September 23, 2011Date of Patent: February 17, 2015Assignee: Dispersive Networks, Inc.Inventor: Robert W. Twitchell
-
Patent number: 8848704Abstract: A method of facilitating network routing using virtualization includes receiving, at a second device via a virtual machine for a network connection that virtualizes network capabilities of the second device, a packet transmitted by a first device, the packet including a header and a payload, the virtual machine being spawned and managed by virtual dispersive routing (VDR) software; loading, by the VDR software, information from the packet into memory of the second device; appending, by the VDR software, to the payload of the packet, information associated with the second device; and transmitting the packet to a third device using the virtualized network capabilities of the virtual machine.Type: GrantFiled: September 23, 2011Date of Patent: September 30, 2014Assignee: Dispersive Networks Inc.Inventor: Robert W. Twitchell
-
Publication number: 20140173058Abstract: An electronic device configured for electronic communications utilizing virtual dispersive networking includes: a network interface for communicating over a network; an application loaded onto the electronic device programmed to communicate over a network; and virtual dispersive networking software configured to create, for such application, a virtual machine comprising a virtual interface for the network interface of the electronic device; select a network protocol out of a plurality of available network protocols based on current communication requirements of the application; and cause network communications of the application to occur via the virtual network interface of the electronic device using the determined network protocol.Type: ApplicationFiled: October 9, 2013Publication date: June 19, 2014Applicant: Dispersive Networks, Inc.Inventor: Robert W. Twitchell, Jr.
-
Patent number: 8560634Abstract: An electronic device configured for electronic communications utilizing virtual dispersive networking includes: a network interface for communicating over a network; an application loaded onto the electronic device programmed to communicate over a network; and virtual dispersive networking software configured to create, for such application, a virtual machine comprising a virtual interface for the network interface of the electronic device; select a network protocol out of a plurality of available network protocols based on current communication requirements of the application; and cause network communications of the application to occur via the virtual network interface of the electronic device using the determined network protocol.Type: GrantFiled: January 14, 2011Date of Patent: October 15, 2013Assignee: Dispersive Networks, Inc.Inventor: Robert W. Twitchell, Jr.
-
Patent number: 8539098Abstract: A method of transferring a file between first and second end-user devices via network communications includes: communicating by the first end-user device network contact information of the first end-user device; communicating by the second end-user device network contact information of the second end-user device; establishing an open network connection between the first end-user device and the second-end user device based on the communicated network contact information of each of the end-user devices; and transferring the file from the first end-user device to the second end-user via the open network connection between the first end-user device and the second-end user device. A single encryption key may be used between the application and network layers on each end-user device, each of which may include virtualized routing capabilities.Type: GrantFiled: July 7, 2009Date of Patent: September 17, 2013Assignee: Dispersive Networks, Inc.Inventor: Robert W. Twitchell, Jr.
-
Patent number: 8447882Abstract: A method includes communicating, by a first device, a request to a server to engage in communications with a second device; communicating, by the server, the request received from the first device to the second device; communicating, by the second device, acceptance to the server; communicating information associated with a third device to the first device; using a virtual network connection of the first device, establishing network communications with the third device; communicating information associated with the third device to the second device; using a virtual network connection of the second device, establishing network communications with the third device, wherein the third device is configured to act as a switch and provide cross-connect functionality between the first virtual network connection of the first device and the second virtual network connection of the second device.Type: GrantFiled: September 23, 2011Date of Patent: May 21, 2013Assignee: Dispersive Networks Inc.Inventor: Robert W. Twitchell, Jr.
-
Patent number: 8433819Abstract: A method of reducing server overhead in responding to requests for downloads from devices includes the steps of receiving, at a first device, a communication from a server regarding a request for download that the server has received from a second device; in response thereto, using virtualized network capabilities of a virtual machine of the second device, establishing a network connection with the first device using connection information received from the server; fulfilling the request for download by transferring data via the established network connection; and communicating an indication of fulfillment of such request to the server.Type: GrantFiled: September 23, 2011Date of Patent: April 30, 2013Assignee: Dispersive Networks Inc.Inventor: Robert W. Twitchell, Jr.
-
Patent number: 8433818Abstract: A method includes detecting a request for a network connection from an application running on a device; spawning a first virtual machine that virtualizes network capabilities of the device such that a first virtual network connection is provided; selecting a first routing protocol for the first virtual network connection; spawning a second virtual machine that virtualizes network capabilities of the device such that a second virtual network connection is provided; selecting a second routing protocol for the second virtual network connection; communicating with another device over a first network path using the first virtual network connection with the first routing protocol; and communicating with the other device over a second network path using the second virtual network connection with the second routing protocol. The first network path and the second network path are different.Type: GrantFiled: September 23, 2011Date of Patent: April 30, 2013Assignee: Dispersive Networks Inc.Inventor: Robert W. Twitchell
-
Patent number: 8429293Abstract: A method includes, first, communicating by first and second devices, to a server, network contact information; and thereafter, communicating data from the first device to the second device by communicating, by the first device, a request to the server to engage in communications with the second device, communicating, by the server, the request received from the first device, communicating, by the second device, acceptance to the server of the request to engage in communications with the first device, communicating connection information, by the server, to one or more of the first and second devices for enabling an open network connection between the first and second devices, using virtualized network capabilities of a virtual machine of the first device, establishing a network connection with the second device using the connection information, and communicating data, from the first device using the virtualized network capabilities of the virtual machine, to the second device.Type: GrantFiled: September 23, 2011Date of Patent: April 23, 2013Assignee: Dispersive Networks Inc.Inventor: Robert W. Twitchell
-
Patent number: 8429226Abstract: A method includes communicating network connection information from a control server to each of a first subset of devices for enabling an open network connection between each of the devices of the first subset; spawning, by each of a plurality of devices, a plurality of virtual machines for network connections that virtualize network capabilities of the device; establishing, by each of the devices, a respective open network connection with each of the other devices using a respective spawned virtual machine and network connection information received from a control server; receiving, by each device, data from a hosting server and data from one or more of the open network connections that are established with that device; processing, by each device, the received data; and providing a user experience, by each device, based on the processed data.Type: GrantFiled: September 23, 2011Date of Patent: April 23, 2013Assignee: Dispersive Networks Inc.Inventor: Robert W. Twitchell
-
Patent number: 8423664Abstract: A method includes steps of detecting, at a first device, a first request for a network connection from an application, spawning a first virtual machine that virtualizes network capabilities of the first device such that a first virtual network connection is provided, selecting a routing protocol for the first virtual network connection, detecting, at the first device, a second request for a network connection from the application, spawning a second virtual machine that virtualizes network capabilities of the first device such that a second virtual network connection is provided, selecting a routing protocol for the second virtual network connection, using the selected routing protocol for the first virtual network connection, communicating data from the application to a second device using the first virtual network connection, and, using the selected routing protocol for the second virtual network connection, communicating data from the application using the second virtual network connection.Type: GrantFiled: September 23, 2011Date of Patent: April 16, 2013Assignee: Dispersive Networks Inc.Inventor: Robert W. Twitchell
-
Patent number: 8352636Abstract: A method includes detecting, at a device, a request for a network connection from an application running on the device; spawning first and second virtual machines for network connections that virtualize network capabilities of the device such that first and second virtual network connections are provided; using the first virtual network connection, establishing a first connection with another device over a first path; using the second virtual connection, establishing a second connection with the other device over a second path; determining that the second path represents a trusted path; determining that a first packet does not need to be routed via a trusted connection; transmitting the first packet using the first virtual network connection for communication via the first path; determining that a second packet needs to be routed via a trusted connection; and transmitting the second packet using the second virtual network connection for communication via the second path.Type: GrantFiled: September 23, 2011Date of Patent: January 8, 2013Assignee: Dispersive Networks Inc.Inventor: Robert W. Twitchell, Jr.
-
Patent number: 8341291Abstract: A method of providing network communications using virtualization includes steps of creating a virtual machine instance that runs on a device and that virtualizes network capabilities of the device such that a virtual network connection is provided, detecting a request for a network connection from an application running on the device, determining application-specific information associated with the application, using the application-specific information associated with the application, selecting a routing protocol from among a plurality of available routing protocols for communicating data from the application over a network using the virtual network connection, and, using the selected routing protocol, communicating data from the application over the network to a device using the virtual network connection of the virtual machine instance.Type: GrantFiled: September 23, 2011Date of Patent: December 25, 2012Assignee: Dispersive Networks Inc.Inventor: Robert W. Twitchell, Jr.
-
Patent number: 8341292Abstract: A method includes detecting, at a first device, a request for a network connection from a first application; spawning a first virtual machine that virtualizes network capabilities of the first device such that a first virtual network connection is provided; selecting a first routing protocol for the first virtual network connection; detecting, at the first device, a request for a network connection from a second application; spawning a second virtual machine that virtualizes network capabilities of the first device such that a second virtual network connection is provided; selecting a second routing protocol for the second network connection; using the selected first routing protocol, communicating data from the first application to a second device using the first virtual network connection; and using the selected second routing protocol, communicating data from the second application using the second virtual network connection. The first and second routing protocols are different routing protocols.Type: GrantFiled: September 23, 2011Date of Patent: December 25, 2012Assignee: Dispersive Networks Inc.Inventor: Robert W. Twitchell, Jr.
-
Patent number: 7895348Abstract: A computer performs a method comprising the steps of, for each application, creating, for such application, a virtual machine that is associated with sending and receiving of communications over the computer network, determining, for such application, a network protocol out of a plurality of available network protocols, the determined network protocol representing an appropriate network protocol, out of the plurality of available network protocols, for current communication requirements of the application, and causing the application, when communicating over the network, to send and receive communications via the created virtual machine using the determined network protocol. Multiple virtual machine instances are created and simultaneously maintained by the computer, each virtual machine instance is associated with communications of one of the plurality of applications via a networking protocol that has been determined to be appropriate for the current communication requirements of the application.Type: GrantFiled: October 17, 2008Date of Patent: February 22, 2011Assignee: Dispersive Networks Inc.Inventor: Robert W. Twitchell, Jr.
-
Publication number: 20090106439Abstract: A computer performs a method comprising the steps of, for each application, creating, for such application, a virtual machine that is associated with sending and receiving of communications over the computer network, determining, for such application, a network protocol out of a plurality of available network protocols, the determined network protocol representing an appropriate network protocol, out of the plurality of available network protocols, for current communication requirements of the application, and causing the application, when communicating over the network, to send and receive communications via the created virtual machine using the determined network protocol. Multiple virtual machine instances are created and simultaneously maintained by the computer, each virtual machine instance is associated with communications of one of the plurality of applications via a networking protocol that has been determined to be appropriate for the current communication requirements of the application.Type: ApplicationFiled: October 17, 2008Publication date: April 23, 2009Applicant: Dispersive Networks Inc.Inventor: Robert W. TWITCHELL, JR.