IP Library Granted Patent US 10,375,213
Granted Patent B2
US 10,375,213 · App. 16/199,425 · Granted Aug 6, 2019

Centralized hybrid wireless self-organizing networks

Inventors: Tyler Beauchamp Reynolds (Washington, DC); Stephen Donald Hall (Providence, RI)
Assignee: Trinity Mobile Networks, Inc.
H04L67/42H04L41/0816H04L41/0853H04L67/34H04L69/14H04W84/18H04L41/12H04L43/08Y02D70/10Y02D70/14
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,375,213
App. No.
16/199,425
Granted
Aug 6, 2019
Kind
B2
Abstract

A system includes one or more servers, and a plurality of wireless telecommunications devices registered with the system. The servers obtain corresponding client configuration states for at least some of the registered client devices, wherein a client configuration state for a given registered client device includes and/or is based on information about other devices with which the given registered client device can communicate in at least one direction. The servers determine and maintain a virtual representation of at least one hybrid network of gateways and the registered client devices. The servers determine a particular sub-network configuration of a particular sub-network for a particular client device, based on the virtual representation of the at least one hybrid network and on a client configuration state for the particular client device. The particular sub-network comprises at least one path between the one or more servers and the particular client device. The servers route data to and/or from the particular client device via the particular sub-network.

Claims (115)

1. A system comprising one or more servers, and a plurality of wireless telecommunications devices registered with said system as registered client devices,

said one or more servers constructed and adapted to:

(a) obtain corresponding client configuration states for at least some of said registered client devices, wherein a client configuration state for a given registered client device includes and/or is based on information about other devices with which the given registered client device can communicate in at least one direction;

(b) determine and maintain a virtual representation of at least one hybrid network of gateways and said registered client devices;

(c) determine a particular sub-network configuration of a particular sub-network for a particular client device, wherein said particular sub-network configuration is determined based on said virtual representation of said at least one hybrid network and on a client configuration state for said particular client device, and wherein said particular sub-network comprises at least one path between said one or more servers and said particular client device;

(d) route data to and/or from said particular client device via said particular sub-network; and

(e) provide said particular sub-network configuration to said particular client device.

2. The system of claim 1 , wherein said particular sub-network comprises multiple paths between said one or more servers and said particular client device.

3. The system of claim 2 , wherein data are routed in (d) via at least two paths in said particular sub-network.

4. The system of claim 3 , wherein said at least two paths comprise at least two distinct protocols.

5. The system of claim 1 , wherein said at least one path between said one or more servers and said particular client device comprises at least one gateway.

6. The system of claim 1 , wherein said one or more servers are further constructed and adapted to:

register said plurality of wireless telecommunications devices with said system as said registered client devices.

7. The system of claim 1 , wherein said particular client device uses said particular sub-network to communicate with other client devices and/or with one or more content sources.

8. The system of claim 1 , wherein said one or more servers:

route data between said particular client device and one or more content sources said particular sub-network.

9. The system of claim 1 , wherein said particular sub-network comprises a particular virtual private network (VPN) comprising and between (i) at least said particular client device, and (ii) said one or more servers.

10. The system of claim 9 , wherein said one or more servers:

route data between said particular client device and said one or more servers and/or one or more other client devices via said particular VPN.

11. The system of claim 9 , wherein said particular VPN comprises at least one gateway.

12. The system of claim 11 , wherein said particular VPN comprises multiple gateways.

13. A method in a system comprising one or more servers, and a plurality of wireless telecommunications devices registered with said system as registered client devices, the method comprising, by said one or more servers:

(A) obtaining corresponding client configuration states for at least some of said registered client devices, wherein a client configuration state for a given registered client device includes and/or is based on information about other devices with which the given registered client device can communicate in at least one direction;

(B) determining and maintaining a virtual representation of at least one hybrid network of gateways and said registered client devices;

(C) determining a particular sub-network configuration of a particular sub-network for a particular client device, wherein said particular sub-network configuration is determined based on said virtual representation of said at least one hybrid network and on a client configuration state for said particular client device, and wherein said particular sub-network configuration comprises at least one path between said one or more servers and said particular client device;

(D) routing data to and/or from said particular client device via said particular sub-network; and

(E) providing said particular sub-network configuration to said particular client device.

14. The method of claim 13 , wherein said particular sub-network comprises multiple paths between said one or more servers and said particular client device.

15. The method of claim 14 , wherein data are routed in (D) via at least two paths in said particular sub-network.

16. The method of claim 13 , wherein said at least one path between said one or more servers and said particular client device comprises at least one gateway.

17. The method of claim 13 , wherein said particular sub-network comprises at least one gateway.

18. The method of claim 17 , wherein said particular sub-network comprises multiple gateways.

19. The method of claim 15 , further comprising:

registering said plurality of wireless telecommunications devices with said system as said registered client devices.

20. The method of claim 15 , wherein said at least two paths comprise at least two distinct protocols.

21. The method of claim 13 , said routing in (D) comprises:

routing data between said particular client device and one or more content sources via said particular sub-network.

22. The method of claim 13 , wherein said particular client device uses said particular sub-network to communicate with other client devices and/or and one or more content sources.

23. The method of claim 13 , further comprising:

(F) forming a particular virtual private network (VPN) in said particular sub-network, said particular VPN comprising and between (i) at least said particular client device, and (ii) said one or more servers.

24. The method of claim 23 , wherein said routing in (D) comprises:

routing data between said particular client device and said one or more servers via said particular VPN.

25. The method of claim 23 , wherein said routing in (D) comprises:

routing data between said particular client device and one or more other client devices via said particular VPN.

26. A computer program product having computer-readable instructions stored on non-transitory computer readable media, the computer-readable instructions including instructions for implementing a computer-implemented method, in a system comprising one or more servers, and a plurality of wireless telecommunications devices registered with said system as registered client devices, the method comprising, by said one or more servers:

(A) obtaining corresponding client configuration states for at least some of said registered client devices, wherein a client configuration state for a given registered client device includes and/or is based on information about other devices with which the given registered client device can communicate in at least one direction;

(B) determining and maintaining a virtual representation of at least one hybrid network of gateways and said registered client devices;

(C) determining a particular sub-network configuration of a particular sub-network for a particular client device, wherein said particular sub-network configuration is determined based on said virtual representation of said at least one hybrid network and on a client configuration state for said particular client device, and wherein said particular sub-network configuration comprises at least one path between said one or more servers and said particular client device; and

(D) routing data to and/or from said particular client device via said particular sub-network; and

(E) providing said particular sub-network configuration to said particular client device.

27. A telecommunications device, operable in a system comprising one or more servers, said telecommunications device being a client device in said system, said telecommunications device constructed and adapted to:

(a) provide, to said one or more servers, a client configuration state for said client device, wherein said client configuration state includes and/or is based on information about other devices with which the client device can communicate in at least one direction;

(b) obtain from said one or more servers a particular sub-network configuration of a particular sub-network, wherein said particular sub-network configuration comprises at least one path between said one or more servers and said client device, wherein said client device is in said particular sub-network, and wherein said particular sub-network configuration was determined by the one or more servers based on: (i) said client configuration state, and (ii) at least one other client configuration state of at least one other client device; and

(c) use said particular sub-network to communicate with at least one other device and/or with one or more content sources via said one or more servers.

28. The device of claim 27 , wherein said particular sub-network comprises multiple paths between said one or more servers and said client device.

29. The device of claim 28 , wherein, in (c), said client device communicates using at least two paths in said particular sub-network.

30. The device of claim 29 , wherein said at least two paths comprise at least two distinct protocols.

31. The device of claim 27 , wherein said particular sub-network comprises a particular virtual private network (VPN) between (i) said client device, and (ii) said one or more servers.

32. The telecommunications device of claim 31 , wherein, in (c), the client device

uses the particular VPN to:

(x) obtain at least one resource via said one or more servers; and/or

(y) route data between said client device and one or more content sources; and/or

(z) route data between said client device and one or more other client devices.

33. The telecommunications device of claim 31 , wherein the particular VPN was established, at least in part, by the one or more servers.

34. The telecommunications device of claim 31 , wherein said particular VPN comprises at least one gateway.

35. A method, on a telecommunications device operating in a system comprising one or more servers, said telecommunications device being a client device in said system, the method comprising:

(A) providing, to said one or more servers, a client configuration state for said client device, wherein said client configuration state includes and/or is based on information about other devices with which the client device can communicate in at least one direction;

(B) obtaining from said one or more servers a particular sub-network configuration, wherein said particular sub-network configuration comprises at least one path from said one or more servers to said client device, wherein said client device is in said particular sub-network, and wherein said particular sub-network configuration was determined by the one or more servers based on: (i) said client configuration state, and (ii) at least one other client configuration state of at least one other client device; and

(C) using said particular sub-network to communicate with at least one other device and/or with one or more content sources via said one or more servers.

36. The method of claim 35 , wherein said particular sub-network comprises multiple paths between said one or more servers and said client device.

37. The method of claim 35 , wherein said using in (C) uses at least two paths in said particular sub-network.

38. A computer program product having computer-readable instructions stored on non-transitory computer readable media, the computer-readable instructions including instructions for implementing a computer-implemented method on a telecommunications device operating in a system comprising one or more servers, said telecommunications device being a client device in said system, the method comprising:

(A) providing, to said one or more servers, a client configuration state for said client device, wherein said client configuration state includes and/or is based on information about other devices with which the client device can communicate in at least one direction;

(B) obtaining from said one or more servers a particular sub-network configuration, wherein said particular sub-network configuration comprises at least one path from said one or more servers to said client device, wherein said client device is in said particular sub-network, and wherein said particular sub-network configuration was determined by the one or more servers based on: (i) said client configuration state, and (ii) at least one other client configuration state of at least one other client device; and

(C) using said particular sub-network to communicate with at least one other device and/or with one or more content sources via said one or more servers.

39. The computer program product of claim 38 , wherein said particular sub-network comprises multiple paths between said one or more servers and said client device.

40. The computer program product of claim 38 , wherein said using in (C) uses at least two paths in said particular sub-network.

41. The system of claim 5 , wherein said at least one path between said one or more servers and said particular client device comprises multiple gateways.

42. The computer program product of claim 26 , wherein said particular sub-network comprises multiple paths between said one or more servers and said particular client device.

43. The computer program product of claim 42 , wherein data are routed in (d) via at least two paths in said particular sub-network.

44. The computer program product of claim 43 , wherein said at least two paths comprise at least two distinct protocols.

45. The computer program product of claim 26 , wherein said one or more servers are further constructed and adapted to:

(e) provide said particular sub-network configuration to said particular client device.

46. The computer program product of claim 26 , wherein said at least one path between said one or more servers and said particular client device comprises at least one gateway.

47. The computer program product of claim 46 , wherein said at least one path between said one or more servers and said particular client device comprises multiple gateways.

48. The computer program product of claim 26 , wherein said one or more servers are further constructed and adapted to:

register said plurality of wireless telecommunications devices with said system as said registered client devices.

49. The computer program product of claim 26 , wherein said particular client device uses said particular sub-network to communicate with other client devices and/or with one or more content sources.

50. The computer program product of claim 26 , wherein said one or more servers:

route data between said particular client device and one or more content sources said particular sub-network.

51. The computer program product of claim 26 , wherein said particular sub-network comprises a particular virtual private network (VPN) comprising and between (i) at least said particular client device, and (ii) said one or more servers.

52. The computer program product of claim 51 , wherein said one or more servers:

route data between said particular client device and said one or more servers and/or one or more other client devices via said particular VPN.

53. The computer program product of claim 50 , wherein said particular VPN comprises at least one gateway.

54. The computer program product of claim 53 , wherein said particular VPN comprises multiple gateways.

55. The method of claim 37 , wherein said at least two paths comprise at least two distinct protocols.

56. The method of claim 35 , wherein said particular sub-network comprises a particular virtual private network (VPN) between (i) said client device, and (ii) said one or more servers.

57. The method of claim 56 , wherein, in (c), the client device

uses the particular VPN to:

(x) obtain at least one resource via said one or more servers; and/or

(y) route data between said client device and one or more content sources; and/or

(z) route data between said client device and one or more other client devices.

58. The method of claim 56 , wherein the particular VPN was established, at least in part, by the one or more servers.

59. The method of claim 56 , wherein said particular VPN comprises at least one gateway.

60. The method of claim 59 , wherein said particular VPN comprises multiple gateways.

61. The computer program product of claim 40 , wherein said at least two paths comprise at least two distinct protocols.

62. The computer program product of claim 38 , wherein said particular sub-network comprises a particular virtual private network (VPN) between (i) said client device, and (ii) said one or more servers.

63. The computer program product of claim 62 , wherein, in (c), the client device

uses the particular VPN to:

(x) obtain at least one resource via said one or more servers; and/or

(y) route data between said client device and one or more content sources; and/or

(z) route data between said client device and one or more other client devices.

64. The computer program product of claim 62 , wherein the particular VPN was established, at least in part, by the one or more servers.

65. The computer program product of claim 62 , wherein said particular VPN comprises at least one gateway.

66. The computer program product of claim 65 , wherein said particular VPN comprises multiple gateways.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2020
From: TRINITY MOBILE NETWORKS, INC.
To: OXIO CORPORATION
Reel/Frame 053112/0546 →
Continuity (7)
Continuation 14754688 · Jun 30, 2015
Continuation PCTUS2015038251 · Jun 29, 2015
Provisional Application 62019545 · Jul 1, 2014
Provisional Application 62185717 · Jun 28, 2015
Provisional Application 62019545 · Jul 1, 2014
Provisional Application 62185717 · Jun 28, 2015
Related Publication 20190104202A1 · Apr 4, 2019