IP Library Granted Patent US 9,197,579
Granted Patent B2
US 9,197,579 · App. 14/580,462 · Granted Nov 24, 2015

Allocating a pool of shared bandwidth

Inventor: Paul Michael Martini (San Diego, CA)
Assignee: iboss, Inc.
H04L47/745H04L47/12H04L47/76H04L47/808H04L47/822H04L47/828
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 9,197,579
App. No.
14/580,462
Granted
Nov 24, 2015
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for allocating a pool of shared Internet bandwidth. One of the methods includes providing a first communications channel having a first bandwidth, the first bandwidth being shared by a first group of first users, providing a second communications channel having a second bandwidth different than the first bandwidth, the second bandwidth being shared by a second group of second users, detecting that at least one first data connection for a particular first user in the first group has satisfied a first predetermined condition, and moving, based on the detecting, the at least one first data connection for the particular first user from the first communications channel to the second communications channel.

Claims (200)

1. A method performed by a data processing apparatus, the method comprising:

providing, by a data processing apparatus, a first communications channel having a first bandwidth, the first bandwidth being shared by only a first group of user devices each operated by a respective user from a first group of first users and having one or more first data connections in the first communications channel;

providing, by the data processing apparatus, a second communications channel having a second bandwidth that is different than the first bandwidth, the second bandwidth being shared by only a second group of user devices each operated by a respective user from a second group of second users and having one or more second data connections in the second communications channel;

restricting, by the data processing apparatus, a total bandwidth of the second data connections in the second communications channel to the second bandwidth;

determining a first peak bandwidth usage of at least one of the first data connections for a particular first user from the first group of first users;

comparing the first peak bandwidth usage with a threshold peak bandwidth usage;

determining, based on the first peak bandwidth usage being greater than the threshold peak bandwidth usage, that the at least one of the first data connections for the particular first user has satisfied a first predetermined condition;

moving, based on determining that the at least one of the first data connections for the particular first user has satisfied the first predetermined condition, the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel; and

restricting, by the data processing apparatus, a new total bandwidth of the second connections and the at least one of the first data connections to the second bandwidth, wherein the second data connections and the at least one of the first data connections are in the second communications channel.

2. The method of claim 1 , wherein the second bandwidth is smaller than the first bandwidth.

3. The method of claim 1 , wherein determining a first peak bandwidth usage of at least one of the first data connection for a particular first user from the first group of first users comprises determining a first peak bandwidth usage of at least one of the first data connection for a particular user device from the first group of user devices that is operated by the particular first user.

4. The method of claim 1 , further comprising:

determining that at least one of the at least one of the first data connections for the particular first user has accessed one or more restricted resources, wherein moving the at least one of the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel is based on determining that the at least one of the at least one of the first data connections for the particular first user has accessed one or more restricted resources.

5. The method of claim 1 , further comprising:

detecting that at least one third data connection for the particular first user in the second group has satisfied a second predetermined condition; and

moving, based on the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition, the at least one third data connection for the particular first user from the second communications channel to the first communications channel.

6. The method of claim 5 , wherein the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition comprises:

determining a second bandwidth usage of the at least one third data connection for the particular first user;

comparing the second bandwidth usage with a threshold level of bandwidth usage; and

detecting, based on the second bandwidth usage not being greater than the threshold level of bandwidth usage, that the at least one third data connection for the particular first user has satisfied the second predetermined condition.

7. The method of claim 5 , wherein the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition comprises determining that a predetermined duration of time has passed since the moving of the at least one of the first data connections from the first communication channel to the second communications channel.

8. The method of claim 1 , wherein:

the at least one of the first data connections comprises two or more data connections within the first communications channel including a third data connection and a fourth data connection;

determining the first bandwidth usage of the at least one of the first data connections for the particular first user further comprises determining a second bandwidth usage for the third data connection;

comparing the first bandwidth usage with the threshold peak bandwidth usage further comprises comparing the second bandwidth usage with the threshold peak bandwidth usage;

determining that the at least one of the first data connections for the particular first user has satisfied a first predetermined condition further comprises determining, based on the second bandwidth usage being greater than the threshold peak bandwidth usage, that the third data connection has satisfied the first predetermined condition; and

moving the at least one of the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel is based on determining that the third data connection has satisfied the first predetermined condition.

9. The method of claim 8 , wherein the moving comprises:

moving the third data connection from the first communications channel to the second communications channel while the fourth data connection remains in the first communications channel.

10. The method of claim 1 , wherein the second communications channel shares the same physical connection in the data processing apparatus as the first communications channel, the method further comprising:

determining, for each of the first users, a bandwidth usage of the first communications channel;

determining a total level of bandwidth usage of the first communications channel based on the bandwidth usage of the first communications channel for each of the first users; and

adjusting a maximum bandwidth of the second communications channel based on the total level of bandwidth usage of the first communications channel.

11. A non-transitory computer storage medium encoded with instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising:

providing a first communications channel having a first bandwidth, the first bandwidth being shared by only a first group of user devices each operated by a respective user from a first group of first users and having one or more first data connections in the first communications channel;

providing a second communications channel having a second bandwidth that is different than the first bandwidth, the second bandwidth being shared by only a second group of user devices each operated by a respective user from a second group of second users and having one or more second data connections in the second communications channel;

restricting a total bandwidth of the second data connections in the second communications channel to the second bandwidth;

determining a first peak bandwidth usage of at least one of the first data connections for a particular first user from the first group of first users;

comparing the first peak bandwidth usage with a threshold peak bandwidth usage;

determining, based on the first peak bandwidth usage being greater than the threshold peak bandwidth usage, that the at least one of the first data connections for the particular first user has satisfied a first predetermined condition;

moving, based on determining that the at least one of the first data connections for the particular first user has satisfied the first predetermined condition, the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel; and

restricting a new total bandwidth of the second connections and the at least one of the first data connections to the second bandwidth, wherein the second data connections and the at least one of the first data connections are in the second communications channel.

12. The computer storage medium of claim 11 , wherein the second bandwidth is smaller than the first bandwidth.

13. The computer storage medium of claim 11 , wherein determining a first peak bandwidth usage of at least one of the first data connection for a particular first user from the first group of first users comprises determining a first peak bandwidth usage of at least one of the first data connection for a particular user device from the first group of user devices that is operated by the particular first user.

14. The computer storage medium of claim 11 , the operations further comprising:

determining that at least one of the at least one of the first data connections for the particular first user has accessed one or more restricted resources, wherein moving the at least one of the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel is based on determining that the at least one of the at least one of the first data connections for the particular first user has accessed one or more restricted resources.

15. The computer storage medium of claim 11 , the operations further comprising:

detecting that at least one third data connection for the particular first user in the second group has satisfied a second predetermined condition; and

moving, based on the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition, the at least one third data connection for the particular first user from the second communications channel to the first communications channel.

16. The computer storage medium of claim 15 , wherein the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition comprises:

determining a second bandwidth usage of the at least one third data connection for the particular first user;

comparing the second bandwidth usage with a threshold level of bandwidth usage; and

detecting, based on the second bandwidth usage not being greater than the threshold level of bandwidth usage, that the at least one third data connection for the particular first user has satisfied the second predetermined condition.

17. The computer storage medium of claim 15 , wherein the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition comprises determining that a predetermined duration of time has passed since the moving of the at least one of the first data connections from the first communication channel to the second communications channel.

18. The computer storage medium of claim 11 , wherein:

the at least one of the first data connections comprises two or more data connections within the first communications channel including a third data connection and a fourth data connection;

determining the first bandwidth usage of the at least one of the first data connections for the particular first user further comprises determining a second bandwidth usage for the third data connection;

comparing the first bandwidth usage with the threshold peak bandwidth usage further comprises comparing the second bandwidth usage with the threshold peak bandwidth usage;

determining that the at least one of the first data connections for the particular first user has satisfied a first predetermined condition further comprises determining, based on the second bandwidth usage being greater than the threshold peak bandwidth usage, that the third data connection has satisfied the first predetermined condition; and

moving the at least one of the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel is based on determining that the third data connection has satisfied the first predetermined condition.

19. The computer storage medium of claim 18 , wherein the moving comprises:

moving the third data connection from the first communications channel to the second communications channel while the fourth data connection remains in the first communications channel.

20. The computer storage medium of claim 11 , the operations further comprising:

determining, for each of the first users, a bandwidth usage of the first communications channel when the second communications channel shares the same physical connection as the first communications channel;

determining a total level of bandwidth usage of the first communications channel based on the bandwidth usage of the first communications channel for each of the first users; and

adjusting a maximum bandwidth of the second communications channel based on the total level of bandwidth usage of the first communications channel.

21. A system comprising:

one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:

providing a first communications channel having a first bandwidth, the first bandwidth being shared by only a first group of user devices each operated by a respective user from a first group of first users and having one or more first data connections in the first communications channel;

providing a second communications channel having a second bandwidth that is different than the first bandwidth, the second bandwidth being shared by only a second group of user devices each operated by a respective user from a second group of second users and having one or more second data connections in the second communications channel;

restricting a total bandwidth of the second data connections in the second communications channel to the second bandwidth;

determining a first peak bandwidth usage of at least one of the first data connections for a particular first user from the first group of first users;

comparing the first peak bandwidth usage with a threshold peak bandwidth usage;

determining, based on the first peak bandwidth usage being greater than the threshold peak bandwidth usage, that the at least one of the first data connections for the particular first user has satisfied a first predetermined condition;

moving, based on determining that the at least one of the first data connections for the particular first user has satisfied the first predetermined condition, the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel; and

restricting a new total bandwidth of the second connections and the at least one of the first data connections to the second bandwidth, wherein the second data connections and the at least one of the first data connections are in the second communications channel.

22. The system of claim 21 , wherein the second bandwidth is smaller than the first bandwidth.

23. The system of claim 21 , wherein determining a first peak bandwidth usage of at least one of the first data connection for a particular first user from the first group of first users comprises determining a first peak bandwidth usage of at least one of the first data connection for a particular user device from the first group of user devices that is operated by the particular first user.

24. The system of claim 21 , the operations further comprising:

determining that at least one of the at least one of the first data connections for the particular first user has accessed one or more restricted resources, wherein moving the at least one of the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel is based on determining that the at least one of the at least one of the first data connections for the particular first user has accessed one or more restricted resources.

25. The system of claim 21 , the operations further comprising:

detecting that at least one third data connection for the particular first user in the second group has satisfied a second predetermined condition; and

moving, based on the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition, the at least one third data connection for the particular first user from the second communications channel to the first communications channel.

26. The system of claim 25 , wherein the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition comprises:

determining a second bandwidth usage of the at least one third data connection for the particular first user;

comparing the second bandwidth usage with a threshold level of bandwidth usage; and

detecting, based on the second bandwidth usage not being greater than the threshold level of bandwidth usage, that the at least one third data connection for the particular first user has satisfied the second predetermined condition.

27. The system of claim 25 , wherein the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition comprises determining that a predetermined duration of time has passed since the moving of the at least one of the first data connections from the first communication channel to the second communications channel.

28. The system of claim 21 , wherein:

the at least one of the first data connections comprises two or more data connections within the first communications channel including a third data connection and a fourth data connection;

determining the first bandwidth usage of the at least one of the first data connections for the particular first user further comprises determining a second bandwidth usage for the third data connection;

comparing the first bandwidth usage with the threshold peak bandwidth usage further comprises comparing the second bandwidth usage with the threshold peak bandwidth usage;

determining that the at least one of the first data connections for the particular first user has satisfied a first predetermined condition further comprises determining, based on the second bandwidth usage being greater than the threshold peak bandwidth usage, that the third data connection has satisfied the first predetermined condition; and

moving the at least one of the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel is based on determining that the third data connection has satisfied the first predetermined condition.

29. The system of claim 28 , wherein the moving comprises:

moving the third data connection from the first communications channel to the second communications channel while the fourth data connection remains in the first communications channel.

30. The system of claim 21 , wherein the second communications channel shares the same physical connection in the system as the first communications channel, the operations further comprising:

determining, for each of the first users, a bandwidth usage of the first communications channel;

determining a total level of bandwidth usage of the first communications channel based on the bandwidth usage of the first communications channel for each of the first users; and

adjusting a maximum bandwidth of the second communications channel based on the total level of bandwidth usage of the first communications channel.

31. A method performed by a data processing apparatus, the method comprising:

providing, by a data processing apparatus, a first communications channel having a first bandwidth, the first bandwidth being shared by only a first group of user devices each operated by a respective user from a first group of first users and having one or more first data connections in the first communications channel;

providing, by the data processing apparatus, a second communications channel having a second bandwidth that is different than the first bandwidth, the second bandwidth being shared by only a second group of user devices each operated by a respective user from a second group of second users and having one or more second data connections in the second communications channel;

restricting, by the data processing apparatus, a total bandwidth of the second data connections in the second communications channel to the second bandwidth;

determining a first average bandwidth usage of at least one of the first data connections over a period of time for a particular first user from the first group of first users;

comparing the first average bandwidth usage with a threshold average bandwidth usage;

determining, based on the first average bandwidth usage being greater than the threshold average bandwidth usage, that the at least one of the first data connections for the particular first user has satisfied a first predetermined condition;

moving, based on determining that the at least one of the first data connections for the particular first user has satisfied the first predetermined condition, the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel; and

restricting, by the data processing apparatus, a new total bandwidth of the second connections and the at least one of the first data connections to the second bandwidth, wherein the second data connections and the at least one of the first data connections are in the second communications channel.

32. The method of claim 31 , wherein the second bandwidth is smaller than the first bandwidth.

33. The method of claim 31 , wherein determining a first average bandwidth usage of at least one of the first data connection for a particular first user from the first group of first users comprises determining a first average bandwidth usage of at least one of the first data connection for a particular user device from the first group of user devices that is operated by the particular first user.

34. The method of claim 31 , further comprising:

determining that at least one of the at least one of the first data connections for the particular first user has accessed one or more restricted resources, wherein moving the at least one of the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel is based on determining that the at least one of the at least one of the first data connections for the particular first user has accessed one or more restricted resources.

35. The method of claim 31 , further comprising:

detecting that at least one third data connection for the particular first user in the second group has satisfied a second predetermined condition; and

moving, based on the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition, the at least one third data connection for the particular first user from the second communications channel to the first communications channel.

36. The method of claim 35 , wherein the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition comprises:

determining a second bandwidth usage of the at least one third data connection for the particular first user;

comparing the second bandwidth usage with a threshold level of bandwidth usage; and

detecting, based on the second bandwidth usage not being greater than the threshold level of bandwidth usage, that the at least one third data connection for the particular first user has satisfied the second predetermined condition.

37. The method of claim 35 , wherein the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition comprises determining that a predetermined duration of time has passed since the moving of the at least one of the first data connections from the first communication channel to the second communications channel.

38. The method of claim 31 , wherein:

the at least one of the first data connections comprises two or more data connections within the first communications channel including a third data connection and a fourth data connection;

determining the first bandwidth usage of the at least one of the first data connections for the particular first user further comprises determining a second bandwidth usage for the third data connection;

comparing the first bandwidth usage with the threshold average bandwidth usage further comprises comparing the second bandwidth usage with the threshold average bandwidth usage;

determining that the at least one of the first data connections for the particular first user has satisfied a first predetermined condition further comprises determining, based on the second bandwidth usage being greater than the threshold average bandwidth usage, that the third data connection has satisfied the first predetermined condition; and

moving the at least one of the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel is based on determining that the third data connection has satisfied the first predetermined condition.

39. The method of claim 38 , wherein the moving comprises:

moving the third data connection from the first communications channel to the second communications channel while the fourth data connection remains in the first communications channel.

40. The method of claim 31 , wherein the second communications channel shares the same physical connection in the data processing apparatus as the first communications channel, the method further comprising:

determining, for each of the first users, a bandwidth usage of the first communications channel;

determining a total level of bandwidth usage of the first communications channel based on the bandwidth usage of the first communications channel for each of the first users; and

adjusting a maximum bandwidth of the second communications channel based on the total level of bandwidth usage of the first communications channel.

41. A non-transitory computer storage medium encoded with instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising:

providing a first communications channel having a first bandwidth, the first bandwidth being shared by only a first group of user devices each operated by a respective user from a first group of first users and having one or more first data connections in the first communications channel;

providing a second communications channel having a second bandwidth that is different than the first bandwidth, the second bandwidth being shared by only a second group of user devices each operated by a respective user from a second group of second users and having one or more second data connections in the second communications channel;

restricting a total bandwidth of the second data connections in the second communications channel to the second bandwidth;

determining a first average bandwidth usage of at least one of the first data connections over a period of time for a particular first user from the first group of first users;

comparing the first average bandwidth usage with a threshold average bandwidth usage;

determining, based on the first average bandwidth usage being greater than the threshold average bandwidth usage, that the at least one of the first data connections for the particular first user has satisfied a first predetermined condition;

moving, based on determining that the at least one of the first data connections for the particular first user has satisfied the first predetermined condition, the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel; and

restricting a new total bandwidth of the second connections and the at least one of the first data connections to the second bandwidth, wherein the second data connections and the at least one of the first data connections are in the second communications channel.

42. The computer storage medium of claim 41 , wherein the second bandwidth is smaller than the first bandwidth.

43. The computer storage medium of claim 41 , wherein determining a first average bandwidth usage of at least one of the first data connection for a particular first user from the first group of first users comprises determining a first average bandwidth usage of at least one of the first data connection for a particular user device from the first group of user devices that is operated by the particular first user.

44. The computer storage medium of claim 41 , the operations further comprising:

determining that at least one of the at least one of the first data connections for the particular first user has accessed one or more restricted resources, wherein moving the at least one of the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel is based on determining that the at least one of the at least one of the first data connections for the particular first user has accessed one or more restricted resources.

45. The computer storage medium of claim 41 , the operations further comprising:

detecting that at least one third data connection for the particular first user in the second group has satisfied a second predetermined condition; and

moving, based on the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition, the at least one third data connection for the particular first user from the second communications channel to the first communications channel.

46. The computer storage medium of claim 45 , wherein the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition comprises:

determining a second bandwidth usage of the at least one third data connection for the particular first user;

comparing the second bandwidth usage with a threshold level of bandwidth usage; and

detecting, based on the second bandwidth usage not being greater than the threshold level of bandwidth usage, that the at least one third data connection for the particular first user has satisfied the second predetermined condition.

47. The computer storage medium of claim 45 , wherein the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition comprises determining that a predetermined duration of time has passed since the moving of the at least one of the first data connections from the first communication channel to the second communications channel.

48. The computer storage medium of claim 41 , wherein:

the at least one of the first data connections comprises two or more data connections within the first communications channel including a third data connection and a fourth data connection;

determining the first bandwidth usage of the at least one of the first data connections for the particular first user further comprises determining a second bandwidth usage for the third data connection;

comparing the first bandwidth usage with the threshold average bandwidth usage further comprises comparing the second bandwidth usage with the threshold average bandwidth usage;

determining that the at least one of the first data connections for the particular first user has satisfied a first predetermined condition further comprises determining, based on the second bandwidth usage being greater than the threshold average bandwidth usage, that the third data connection has satisfied the first predetermined condition; and

moving the at least one of the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel is based on determining that the third data connection has satisfied the first predetermined condition.

49. The computer storage medium of claim 48 , wherein the moving comprises:

moving the third data connection from the first communications channel to the second communications channel while the fourth data connection remains in the first communications channel.

50. The computer storage medium of claim 41 , the operations further comprising:

determining, for each of the first users, a bandwidth usage of the first communications channel when the second communications channel shares the same physical connection as the first communications channel;

determining a total level of bandwidth usage of the first communications channel based on the bandwidth usage of the first communications channel for each of the first users; and

adjusting a maximum bandwidth of the second communications channel based on the total level of bandwidth usage of the first communications channel.

51. A system comprising:

one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:

providing a first communications channel having a first bandwidth, the first bandwidth being shared by only a first group of user devices each operated by a respective user from a first group of first users and having one or more first data connections in the first communications channel;

providing a second communications channel having a second bandwidth that is different than the first bandwidth, the second bandwidth being shared by only a second group of user devices each operated by a respective user from a second group of second users and having one or more second data connections in the second communications channel;

restricting a total bandwidth of the second data connections in the second communications channel to the second bandwidth;

determining a first average bandwidth usage of at least one of the first data connections over a period of time for a particular first user from the first group of first users;

comparing the first average bandwidth usage with a threshold average bandwidth usage;

determining, based on the first average bandwidth usage being greater than the threshold average bandwidth usage, that the at least one of the first data connections for the particular first user has satisfied a first predetermined condition;

moving, based on determining that the at least one of the first data connections for the particular first user has satisfied the first predetermined condition, the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel; and

restricting a new total bandwidth of the second connections and the at least one of the first data connections to the second bandwidth, wherein the second data connections and the at least one of the first data connections are in the second communications channel.

52. The system of claim 51 , wherein the second bandwidth is smaller than the first bandwidth.

53. The system of claim 51 , wherein determining a first average bandwidth usage of at least one of the first data connection for a particular first user from the first group of first users comprises determining a first average bandwidth usage of at least one of the first data connection for a particular user device from the first group of user devices that is operated by the particular first user.

54. The system of claim 51 , the operations further comprising:

determining that at least one of the at least one of the first data connections for the particular first user has accessed one or more restricted resources, wherein moving the at least one of the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel is based on determining that the at least one of the at least one of the first data connections for the particular first user has accessed one or more restricted resources.

55. The system of claim 51 , the operations further comprising:

detecting that at least one third data connection for the particular first user in the second group has satisfied a second predetermined condition; and

moving, based on the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition, the at least one third data connection for the particular first user from the second communications channel to the first communications channel.

56. The system of claim 55 , wherein the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition comprises:

determining a second bandwidth usage of the at least one third data connection for the particular first user;

comparing the second bandwidth usage with a threshold level of bandwidth usage; and

detecting, based on the second bandwidth usage not being greater than the threshold level of bandwidth usage, that the at least one third data connection for the particular first user has satisfied the second predetermined condition.

57. The system of claim 55 , wherein the detecting that the at least one third data connection for the particular first user has satisfied the second predetermined condition comprises determining that a predetermined duration of time has passed since the moving of the at least one of the first data connections from the first communication channel to the second communications channel.

58. The system of claim 51 , wherein:

the at least one of the first data connections comprises two or more data connections within the first communications channel including a third data connection and a fourth data connection;

determining the first bandwidth usage of the at least one of the first data connections for the particular first user further comprises determining a second bandwidth usage for the third data connection;

comparing the first bandwidth usage with the threshold average bandwidth usage further comprises comparing the second bandwidth usage with the threshold average bandwidth usage;

determining that the at least one of the first data connections for the particular first user has satisfied a first predetermined condition further comprises determining, based on the second bandwidth usage being greater than the threshold average bandwidth usage, that the third data connection has satisfied the first predetermined condition; and

moving the at least one of the at least one of the first data connections for the particular first user from the first communications channel to the second communications channel is based on determining that the third data connection has satisfied the first predetermined condition.

59. The system of claim 58 , wherein the moving comprises:

moving the third data connection from the first communications channel to the second communications channel while the fourth data connection remains in the first communications channel.

60. The system of claim 51 , wherein the second communications channel shares the same physical connection in the system as the first communications channel, the operations further comprising:

determining, for each of the first users, a bandwidth usage of the first communications channel;

determining a total level of bandwidth usage of the first communications channel based on the bandwidth usage of the first communications channel for each of the first users; and

adjusting a maximum bandwidth of the second communications channel based on the total level of bandwidth usage of the first communications channel.

Assignments (6)
SUPPLEMENTAL INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 28, 2023
From: IBOSS, INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 066158/0266 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 28, 2023
From: IBOSS, INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 066158/0219 →
RELEASE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Dec 12, 2023
From: SILICON VALLEY BANK, A DIVISION OF FIRST-CITIZENS BANK TRUST COMPANY
To: IBOSS, INC.
Reel/Frame 066140/0480 →
SECURITY INTEREST Recorded Sep 19, 2022
From: IBOSS, INC.
To: SILICON VALLEY BANK
Reel/Frame 061463/0331 →
SECURITY INTEREST Recorded Dec 16, 2020
From: IBOSS, INC.
To: SILICON VALLEY BANK
Reel/Frame 054789/0680 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2015
From: MARTINI, PAUL MICHAEL
To: IBOSS, INC.
Reel/Frame 035790/0944 →
Continuity (3)
Continuation 14263402 · Apr 28, 2014
Continuation 13865920 · Apr 18, 2013
Related Publication 20150113147A1 · Apr 23, 2015