System and method for monitoring network connection quality by executing computer-executable instructions stored on a non-transitory computer-readable medium

A system and method for monitoring network connection quality utilizes software installed on a user computer to monitor a first network connection to a target server used for a desired activity and a second network connection to a benchmark server. Various network quality metrics are recorded and compared for each of the connections and displayed on a visual display so that the user may easily and accurately judge the health of the connection to the target server.

Skip to: Description  ·  Claims  ·  References Cited  · Patent History  ·  Patent History
Description

The current application is a continuation of U.S. patent application Ser. No. 14/066,277 filed Oct. 29, 2013 which claims a priority to the U.S. Provisional Patent application Ser. No. 61/719,602 filed on Oct. 29, 2012, and to the U.S. Provisional Patent application Ser. No. 61/720,232 filed on Oct. 30, 2012.

The current application is a continuation in part of U.S. patent application Ser. No. 14/047,678 filed Oct. 7, 2013 which claims benefit of Provisional Patent Application 61/710,026 filed Oct. 5, 2012.

The current application is a continuation in part of U.S. patent application Ser. No. 14/731,286 filed Jun. 4, 2015 which claims benefit of Provisional Patent Application 62/007,787 filed Jun. 4, 2014.

The current application is a continuation in part of U.S. patent application Ser. No. 14/812,968 filed Jul. 29, 2015 which claims benefit of Provisional Patent Application 62/030,384 filed Jul. 29, 2014.

The current application is a continuation in part of U.S. patent application Ser. No. 15/335,304 filed Oct. 26, 2016 which claims benefit of Provisional Patent Application 62/246,304 filed Oct. 26, 2015.

The current application is a continuation in part of U.S. patent application Ser. No. 15/335,308 filed Oct. 26, 2016 which claims benefit of Provisional Patent Application 62/246,397 filed Oct. 26, 2015.

FIELD OF THE INVENTION

The present invention relates generally to network connections. More specifically, the present invention is a system and method to display the quality of a network connection which evaluates and displays several criteria that influence the quality of a network connection.

BACKGROUND OF THE INVENTION

The quality of a network connection can drastically affect the quality of the activities that are carried out over that network connection. Activities that are especially sensitive to connection quality include gaming and voice communication over IP, or VoIP for short. Online gaming is an extremely common form of recreation in the modern world and can often be very competitive. Competitive gaming is even performed in a professional setting where players vie for position and monetary prizes. In all forms of online gaming, be it recreational or competitive, a good network connection is crucial to the performance of the players. Poor network connection quality can result in performance problems known as lag and rubber banding. In lag, the actions taken by the player are not processed for a noticeable time delay, hence the term lag. Lag is most often caused by high latency between the player's machine and the game server. In rubber banding, the actions that are perceived as taking place by the user do not actually register with the game sever. This can result in the player ending up in a position in the game world they were in several moments ago and had since progressed. This effect can be perceived by players as what appears to be teleportation from point to point as if the player is being pulled around by a rubber band, hence the terminology used to describe this effect. As expected, issues such as lag and rubber banding can have a drastic impact on player performance which can ultimately result in losing the game and much less enjoyment gained from playing the game. VoIP is another activity occurring over network connections that can be greatly affected by a poor network connection. VoIP is a form of communication which allows for communication by voice over the internet. When using VoIP, latency issues can make it difficult for participants in a conversation to communicate effectively, causing unnecessary delays that can result in participants unintentionally talking over each other. Additionally, packet loss can result in poor communication quality which can make it difficult for participants to understand each other. These issues can make it very difficult to communicate using VoIP.

It comes as no surprise that many gamers playing online games also use VoIP to communicate with other players to form and carry out complex strategies and plans. When a poor network connection is being used, both the actions of the gamer in the game and the communication with other players can be completely scrambled. When this happens, the gaming experience suffers and the game becomes barely worth playing as little enjoyment is gained. There are ways to fix and or bypass poor network connections to ensure that the connection problems as described earlier are not suffered by the gamer, however common knowledge dictates this fact; if the problem cannot be identified, then it cannot be solved.

Many games and VoIP programs incorporate a built in latency or ping meters that displays the latency value of the network connection to the user. These ping meters can assist a user in determining when a problem is being caused by the network connection. Unfortunately, as effective as such meters are at displaying latency, they suffer from several major flaws. The first and foremost of those flaws is the fact that almost all ping meters incorporated into games and other applications only display the instantaneous value for the latency of the connection. What this means is that, at any given moment, the latency displayed by the ping meter is the latency experienced by the last packet of data sent by the game to the game server. Because of this, the latency as displayed by the ping meter fluctuates over time, and so the reading on the ping meter at any given time is not an accurate representation of the quality of the network connection being used for that activity. The second problem of such ping meters is the simple fact that they only keep track of one particular metric; latency. Unfortunately, the quality of the network connection can be influenced by metrics other than an instantaneous latency score such as the latency deviation, the number of hops between sender and destination, and packet loss experience. Such metrics can be very telling about the overall quality of a network connection and they are not displayed by ping meters.

It is an object of the present invention to create a network connection quality meter that solves the issues discussed above. The present invention solves the issues discussed above by tracking latency of a network connection over time as well as other performance metrics such as number of hops and packet loss. Additionally, it is an object of the present invention to use a system that enables comparison between the network connection currently being utilized and a benchmark connection. Through this set up, a user is able to see how poor their network connection is when compared to a benchmark connection. Implementing the present invention may help a user identify network connection problems and determine how to correct or bypass those problems, ultimately improving the experience of performing online activities such as gaming and VoIP over network connections.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a flowchart describing the main steps of the method of the present invention.

FIG. 2 is a flowchart describing additional steps in the method of the present invention for comparing a network connection to a benchmark connection.

FIG. 3 is a flowchart describing an additional embodiment where multiple network connections are monitored.

FIG. 4 is a flowchart describing steps for customizing the visual display.

FIG. 5 is a flowchart describing the basic steps followed by the method of the present invention.

FIG. 6 is a visual flowchart depicting how the benchmark server may be set up.

FIG. 7 is a visual flowchart depicting how a round trip may be used to determine the latency difference between the game server and the benchmark server.

FIG. 8 is a visual flowchart depicting how a chained server connection or global private network can be used to compare values of the five elements to help determine the quality of the network connections.

FIG. 9 is a mock up of how the visual display of the present invention may look.

FIG. 10 is a mock up of how one of the five elements may be graphically displayed.

FIG. 11 is a mock up of how another one of the five elements may be graphically displayed.

DETAIL DESCRIPTIONS OF THE INVENTION

All illustrations of the drawings are for the purpose of describing selected versions of the present invention and are not intended to limit the scope of the present invention.

The present invention is a system and method for monitoring the quality of an internet network connection. This helps a user or an internet service provider (ISP) to diagnose and fix problems with an internet connection that result in bad performance of the connection.

As illustrated in FIG. 6, in the preferred embodiment of the present invention, the system comprises a local area network 1, a visual display 2, a target server 3, a benchmark server 4, monitoring software 5, and a user application 6. The user application 6 is a game, VoIP application, or another application which depends on a network connection to a remote server. The local area network 1 is electronically connected to the target server 3 and to the benchmark server 4. The local area network 1 comprises a user computer 11 and a router 12, which are electronically connected to each other. The monitoring software 5 and the user application 6 are installed on the user computer 11. The router 12, and thereby the user computer 11, is electronically connected to the target server 3 by a first network connection 7, and is electronically connected to the benchmark server 4 by a second network connection 8.

The benchmark server 4 should be physically positioned such that the benchmark server 4 is near the target server 3 of internet data sent and received by the user application 6. This enables a comparison test to be made from the user's computer as a network connection is simultaneously made to both the target server 3 and the benchmark server 4. It is important that the benchmark server 4 be located in the same city as the target server 3 but that the benchmark server 4 is in a different data center. If the benchmark and the target server 3 are in the same data center, then almost no difference would be present between recorded values of network connection quality for network connections to each server. Additionally, the fact that the benchmark sever and the target server 3 are close together but still potentially several milliseconds apart enables another ping to be made between the benchmark server 4 and the target server 3. Granted that the benchmark sever is either a proxy or a virtual private network, an accurate calculation of a roundtrip taken by data may be determined; the roundtrip being data sent from the user, to the proxy server, and then to the target server 3. It is important to note that this comparison system could also be implemented with a private server system that is comprised of a plurality of servers across the globe, as illustrated in FIGS. 7 and 8. In this fashion, comparison may be made between round trip values of network connection quality for data sent through the private server system and data that is sent normally through regular network connections. In this way, comparisons may be made that show the impact on quality that is experienced when the private server system is used as opposed to allowing the internet data to be sent regularly through internet routers.

The monitoring software 5 is the central component of the present invention, and continually monitors and records one or more first network quality metrics for the first network connection 7 and one or more second network quality metrics for the second network connection 8. Network quality metrics are various elements relevant to measuring the quality of a network connection.

In the preferred embodiment of the present invention, the network quality metrics include, but are not limited to, current ping, average ping, ping deviation, number of hops, number of bad hops, and flux. The ping deviation and average ping elements are based upon historical data recorded by the monitoring software 5 over the course of the online activity. The average ping element is based upon recorded values of the current ping. Ping deviation is based upon maximum and minimum values of the current ping as recorded by the monitoring software 5. Number of hops is defined as the number of routers internet data must travel through before reaching the destination server. A higher number of hops can mean higher latency and higher chances of experiencing packet loss that can result from bad hops. The number of bad hops is defined as the number of hops that take place which cause internet data to experience packet loss or high latency deviation. Bad hops can be the primary cause of high latency deviation and rubber banding, both of which are highly detrimental to online gaming. Flux is defined in regards to the present invention as the number of average ping spikes, or lag, minus the average latency.

The monitoring software 5 continually compares the one or more first network quality metrics and the one or more second network quality metrics. This data provides the user with a great deal of information on the overall quality of the network connection they are using to perform their online activities, and is saved such that it can be viewed later by the user, or alternatively may be reported to a central database server for analysis by an administrator. Although the values of the network quality metrics are telling about the quality of the network connection, it is much more meaningful to have control or benchmark values to which comparisons may be made. For this purpose, the monitoring software 5 also monitors and records network quality metrics for the second network connection 8 to the benchmark server 4. This allows for comparison between the network quality metrics of the first network connection 7 being used by the online activity and the second network connection 8 to the benchmark server 4.

Comparison between the two sets of values is facilitated by the visual display 2. The visual display 2 can show the one or more first network quality metrics and the one or more second network quality metrics side by side or in any other configuration that is conducive to comparison between them. The monitoring software 5 displays at least one of the one or more first network quality metrics on the visual display 2, and preferably displays at least one of the one or more second network quality metrics, wherein each of the at least one of the one or more first network quality metrics corresponds to one of the at least one of the one or more second network quality metrics. Thus, the quality of the first network connection 7 may easily be visually compared to the quality of the second network connection 8. Various embodiments of the visual display can be seen in FIGS. 9-11.

In the preferred embodiment of the present invention, the visual display 2 of the monitoring software 5 can be accessed by the user at any time and allows the user to view current values of network quality metrics as recorded and calculated by the monitoring software 5. It should be noted that the monitoring software 5 may be its own standalone application that is installed onto the user computer 11 and configured to monitor various network connections used by specific applications such as games and VoIP programs. Alternatively, the monitoring software 5 may be incorporated into pre existing applications, like games and VoIP programs, as a system that can be quickly and easily accessed by the user without having to minimize the user application 6 while performing the online activity.

The visual display 2 may additionally incorporate features for advanced data viewing and benchmark comparison, such as, but not limited to, a graphical display of one or more of the network quality metrics over the time during which the online activity is being carried out.

Referring to FIGS. 1-4, the method of the present invention is as follows. In the preferred embodiment of the present invention, a target server 3 and a benchmark sever are provided, as well as a database and a visual display 2. A first network connection 7 is established to the target server 3, and a second network connection 8 is established to the benchmark server 4. One or more first network quality metrics are monitored by the monitoring software 5 for the first network connection 7, and one or more second network quality metrics are monitored by the monitoring software 5 for the second network connection 8. Each of the one or more second network quality metrics corresponds to one of the one or more first network quality metrics; that is, each of the one or more first network quality metrics is the same as one of the one or more second network quality metrics, but measured for a different network connection.

The one or more first network quality metrics and the one or more second network quality metrics are stored within the database. Then, at least one of the one or more first network quality metrics and at least one of the one or more second network quality metrics are retrieved from the database and displayed on the visual display 2. The user may customize which of the network quality metrics are displayed on the visual display 2. To this end, at least one metric selection is received from the user through the monitoring software 5, wherein each of the at least one metric selection corresponds to one of the one or more first network quality metrics and to one of the second network quality metrics, wherein the one of the one or more first network quality metrics corresponds to the one of the one or more second network quality metrics. Each of the at least one metric selection is displayed on the visual display 2.

The monitoring software 5 compares the one or more first network quality metrics to the one or more second network quality metrics. That is, the first network connection 7 to the target server 3 is continually compared to the second network connection 8 to the benchmark server 4. To facilitate diagnosing bad connections, the monitoring software 5 is capable of being configured to trigger an alert if at least one of the one or more first network quality metrics crosses an acceptable threshold. The alert may be an audio or visual alert on the user computer 11, or the alert may be embodied in the form of an electronic message that is sent to an ISP, network administrator or another relevant entity.

Alternatively or additionally, a network quality report may be generated using the one or more first network quality metrics and the one or more second network quality metrics, and the network quality report is then sent to an ISP, system administrator or another relevant entity. The network quality report is preferably formatted such that the network quality report may be conveniently sent to a local internet service provider. The network quality report can be especially helpful in identifying problem routers that are affecting a wide range of outgoing internet traffic due to close proximity to the origin of the traffic. Using this, problems only solvable by the internet service provider can be identified and brought to their attention such that action can be taken to correct said problems.

The present invention may be utilized with multiple services or applications on the user computer 11. To this end, additional network connections to additional target server 3s may be monitored and compared to the second network connection 8 to the benchmark server 4, or to additional benchmark server 4s as needed if different applications connect to target server 3s in significantly distinct locations.

As illustrated in FIG. 5, another perspective of the process of using the present invention is as follows.

Step one; the user installs the monitoring software 5 onto the user computer 11 on which the user intends to perform online activities such as gaming and VoIP communication.

Step two; the user runs the monitoring software 5 and chooses what programs on the user computer 11 for which the user wants the monitoring software 5 to track network connections. Alternatively, the monitoring software 5 may be pre configured to track network connections for specific programs, or the monitoring software 5 may be pre configured to integrate with certain programs that are already present on the computer.

Step three; the user performs internet activity with one of the programs that is set to be tracked by the monitoring software 5. The internet activity is performed over the first network connection 7 to the target server 3.

Step four; the internet activity is monitored and recorded by the monitoring software 5. The network quality metrics described above are key values that are monitored and recorded by the monitoring software 5.

Step five; the monitoring software 5 analyzes values collected for the one or more first network quality metrics and generates whatever values that are based on historical information such as average ping and ping deviation.

Step six; the monitoring software 5 collects and generates values for the one or more second network quality metrics through the second network connection 8 to the benchmark server 4. The one or more second network quality metrics is used for comparison to the one or more first network quality metrics.

Step seven; all or some of the information collected and generated by the monitoring software 5 is displayed to the user through the visual display 2, which organizes the information into a format that is concise and easy for even a non technical user to understand. The visual display 2 may be either a separate application from the program performing the internet activity, or it may be brought into the program as an overlay. Using the information provided in the visual display 2, the user can act accordingly in response to the level of quality the first network connection 7 is providing.

Step eight; information collected and generated by the monitoring software 5 may be reported to an online database for centralized collection and review for many users and analysis of network results by region or Internet/backbone provider. The information may alternatively be reported to another appropriate entity such as a system or network administrator.

Although the invention has been explained in relation to its preferred embodiment, it is to be understood that many other possible modifications and variations can be made without departing from the spirit and scope of the invention as hereinafter claimed.

Claims

1. A method for monitoring network connection quality by executing computer-executable instructions stored on a non-transitory computer-readable medium, the instructions being executed by a user computer, the method comprising:

providing a target server;
providing a database;
providing a visual display;
establishing a first network connection to the target server;
continually monitoring, by the user computer, one or more first network quality metrics for the a first network connection through the internet from the user computer to a target server;
continually storing the one or more first network quality metrics within the a database;
retrieving at least one of the one or more first network quality metrics from the database;
displaying the at least one of the one or more first network quality metrics on the visual display;
providing a private server system;
establishing an additional simultaneously with the first network connection a second network connection additional to the first network connection from the user computer to the target server through the internet and through the a private server system;
continually monitoring, by the user computer, one or more second network quality metrics for the additional second network connection through the internet, each at least one of the one or more second network quality metrics corresponding to one of the one or more first network quality metrics;
continually storing, by the user computer, the one or more second network quality metrics within the database;
retrieving, by the user computer, at least one of the one or more second network quality metrics from the database;
displaying the at least one of the one or more second network quality metrics on the a visual display of the user computer;
simultaneously monitoring, by the user computer, the one or more first network quality metrics for the first network connection and the one or more second network quality metrics for the additional second network connection;
comparing continually, by the user computer, the one or more first network quality metrics of the first network connection through the internet to the one or more second network quality metrics of the second network connection through the internet to determine how much each of the first and second network quality metrics has improved or degraded in the first or the second network connection to the target server;
the first network quality metrics being at least one member of the group consisting of a first current ping, a first average ping, a first ping deviation, number of first hops, number of first bad hops, a first flux, number of first ping spikes, and number of first packet loss, and any other network quality metric measuring real-time communications;
and the second network quality metrics being at least one member of the group consisting of a second current ping, a second average ping, a second ping deviation, number of second hops, number of second bad hops, a second flux, number of second ping spikes, and number of second packet loss, and any other network quality metric measuring real-time communications.

2. The method of claim 1 further comprising, wherein:

the private server system comprising comprises a plurality of proxy servers.

3. The method of claim 1, further comprising:

triggering an alert when the at least one of the one or more first network quality metrics crosses an acceptable threshold.

4. The method of claim 3 further comprising, wherein: the alert being of comprises an audio form.

5. The method of claim 3 further comprising, wherein: the alert being of comprises a visual form.

6. The method of claim 1, further comprising:

generating a network quality report by using the one or more first network quality metrics and the one or more second network quality metrics.

7. The method of claim 6, further comprising:

sending the network quality report to a system administrator.

8. The method of claim 1, further comprising:

receiving at least one metric selection in response to continually comparing the one or more first network quality metrics with the one or more second network quality metrics; and
corresponding each of the at least one metric selection to one of the one or more first network quality metrics and to one of the one or more second network quality metrics.

9. The method of claim 8, further comprising:

displaying each of the at least one metric selection on the visual display.

10. A system for monitoring network connection quality comprising:

a local area network comprising a user computer and a router, the user computer being electronically connected to the router;
a monitoring software configured to be installed on the a user computer electronically connected to a router;
a user application configured to be installed on the user computer;
a target server;
a database;
a visual display;
a first network connection, the router being configured to electronically connected connect the router to the a target server by the first network connection through the internet;
a one or more first network quality metrics for the first network connection, the one or more first network quality metrics being continually monitored by the monitoring software on the user computer, the one or more first network quality metrics being continually stored within the a database, at least one of the one or more first network quality metrics being retrieved from the database, the at least one of the one or more first network quality metrics being displayed on the visual display by the monitoring software;
a private server system;
an additional a second network connection, the router being additional to the first connection configured to electronically connected connect the router to the target server by the additional second network connection through the a private server system through the internet, wherein the second network connection and the first network connection are established simultaneously;
a one or more second network quality metrics for the additional second network connection, the one or more second network quality metrics being continually monitored by the monitoring software on the user computer, each at least one of the one or more second network quality metrics corresponding to one of the one or more first network quality metrics, the one or more second network quality metrics being continually stored within the database, at least one of the one or more second network quality metrics being retrieved from the database, the at least one of the one or more second network quality metrics being displayed on the visual display by the monitoring software;
the one or more first network quality metrics for the first network connection and the one or more second network quality metrics for the additional second network connection being simultaneously monitored by the user computer;
the one or more first network quality metrics of the first network connection through the internet being continually compared to the one or more second network quality metrics of the second network connection through the internet by the user computer to determine how much each of the first and second network quality metrics has improved or degraded in the first or the second network connection to the target server;
the first network quality metrics being at least one member of the group consisting of a first current ping, a first average ping, a first ping deviation, number of first hops, number of first bad hops, a first flux, number of first ping spikes, and number of first packet loss, and any other network quality metric measuring real-time communications;
and the second network quality metrics being at least one member of the group consisting of a second current ping, a second average ping, a second ping deviation, number of second hops, number of second bad hops, a second flux, number of second ping spikes, and number of second packet loss, and any other network quality metric measuring real-time communications.

11. The system of claim 10 further comprising, wherein:

the private server system comprising comprises a one or more first proxy servers.

12. The system of claim 10, further comprising:

an alert triggered by the monitoring software when the at least one of the one or more first network quality metrics crosses an acceptable threshold.

13. The system of claim 12 further comprising, wherein:

the alert being of comprises an audio form transmitted from the user computer.

14. The system of claim 12 further comprising, wherein:

the alert being of comprises a visual form transmitted from the user computer.

15. The system of claim 10, further comprising:

a network quality report generated by using the one or more first network quality metrics and the one or more second network quality metrics.

16. The system of claim 15 further comprising, wherein:

the network quality report being is sent to a system administrator.

17. The system of claim 10, further comprising:

at least one metric selection received in response to continually comparing the one or more first network quality metrics with the one or more second network quality metrics by the monitoring software; and
each of the at least one metric selection corresponding to one of the one or more first network quality metrics and to one of the one or more second network quality metrics.

18. The system of claim 17 further comprising, wherein:

each of the at least one metric selection being is displayed on the visual display.

19. A method for monitoring network connection quality by executing computer-executable instructions stored on a non-transitory computer-readable medium, the instructions being executed by a user computer, the method comprising:

establishing a private server system;
monitoring, by the user computer, one or more first network quality metrics for a first network connection from the user computer to a target server through the internet during a first time duration of an online activity;
establishing simultaneously with the first network connection a second network connection from the user computer to the target server through the private server system through the internet, wherein the second network connection is different from the first network connection;
continually monitoring, by the user computer, one or more second network quality metrics for the second network connection through the internet during a second time duration of the online activity, at least one of the one or more second network quality metrics corresponding to one of the one or more first network quality metrics;
continually storing, by the user computer, the one or more second network quality metrics within the database;
retrieving, by the user computer, at least one of the one or more second network quality metrics from the database;
displaying on a visual display the at least one of the one or more second network quality metrics over the second time duration of the online activity;
comparing continually, by the user computer, the one or more first network quality metrics of the first network connection through the internet to the one or more second network quality metrics of the second network connection through the internet to determine how much each of the first and second network quality metrics has improved or degraded in the first or the second network connection to the target server;
wherein the first network quality metrics comprise at least one member of the group consisting of a first current ping, a first average ping, a first ping deviation, number of first hops, number of first bad hops, a first flux, number of first ping spikes, and number of first packet loss, and any other network quality metric measuring real-time communications;
wherein the second network quality metrics comprise at least one member of the group consisting of a second current ping, a second average ping, a second ping deviation, number of second hops, number of second bad hops, a second flux, number of second ping spikes, and number of second packet loss, and any other network quality metric measuring real-time communications.

20. The method of claim 19, further comprising:

displaying on the visual display the at least one of the one or more first network quality metrics over the first time duration of the online activity.

21. The method of claim 20, wherein:

the first time duration of the online activity and the second time duration of the online activity correspond to the same time duration of the online activity.

22. The method of claim 20, wherein:

establishing the private server system comprises providing the private server system.

23. The method of claim 1,

wherein continually monitoring, by the user computer, the one or more first network quality metrics for the first network connection through the internet from the user computer to the target server comprises continually monitoring, by the user computer, the one or more first network quality metrics for the first network connection through a first route in the internet from the user computer to the target server, and
wherein establishing simultaneously with the first network connection the second network connection additional to the first network connection from the user computer to the target server through the internet and through the private server system comprises establishing simultaneously with the first network connection the second network connection additional to the first network connection from the user computer to the target server through a second route in the internet and through the private server system,
wherein continually monitoring, by the user computer, one or more second network quality metrics for the second network connection through the internet during the second time duration of the online activity, at least one of the one or more second network quality metrics corresponding to the one of the one or more first network quality metrics comprises continually monitoring, by the user computer, the one or more second network quality metrics for the second network connection through the second route in the internet during the second time duration of the online activity, at least one of the one or more second network quality metrics corresponding to the one of the one or more first network quality metrics.
Referenced Cited
U.S. Patent Documents
5351239 September 27, 1994 Black et al.
6131834 October 17, 2000 Teeter
6215789 April 10, 2001 Keenan et al.
6707915 March 16, 2004 Jobst et al.
6845453 January 18, 2005 Scheldt et al.
6973037 December 6, 2005 Kahveci
7159234 January 2, 2007 Murphy et al.
7609671 October 27, 2009 Nuriyev et al.
7633869 December 15, 2009 Morris et al.
7673056 March 2, 2010 Inbaraj et al.
7711846 May 4, 2010 Padmanabhan et al.
7730157 June 1, 2010 Baratto et al.
7925281 April 12, 2011 Cahn
7937336 May 3, 2011 Maynard-Zhang et al.
7983148 July 19, 2011 Abramson et al.
8239510 August 7, 2012 Houri
8589536 November 19, 2013 Karenos
8683609 March 25, 2014 Bravo et al.
8739269 May 27, 2014 Dargis
8788664 July 22, 2014 Guo et al.
9026145 May 5, 2015 Duleba et al.
9160711 October 13, 2015 Sweet et al.
9614870 April 4, 2017 Bartlett et al.
20010052008 December 13, 2001 Jacobus
20020009079 January 24, 2002 Jungck et al.
20020026321 February 28, 2002 Faris et al.
20020145974 October 10, 2002 Saidi et al.
20020147913 October 10, 2002 Lun Yip
20030086425 May 8, 2003 Bearden
20030097442 May 22, 2003 Farhat et al.
20030107990 June 12, 2003 Herschleb et al.
20030128710 July 10, 2003 Fedyk et al.
20040039847 February 26, 2004 Persson et al.
20040100953 May 27, 2004 Chen
20040148520 July 29, 2004 Talpade et al.
20040165570 August 26, 2004 Lee
20040172531 September 2, 2004 Little et al.
20040187018 September 23, 2004 Owen et al.
20040192256 September 30, 2004 Kuwajima
20040221296 November 4, 2004 Ogielski et al.
20050002335 January 6, 2005 Adamczyk et al.
20050015587 January 20, 2005 Stransky
20050055708 March 10, 2005 Gould et al.
20050108213 May 19, 2005 Riise et al.
20050119996 June 2, 2005 Ohata
20050180416 August 18, 2005 Jayawardena et al.
20050232193 October 20, 2005 Jorgensen
20050234922 October 20, 2005 Parekh et al.
20050270982 December 8, 2005 McBeath
20060053021 March 9, 2006 Bystedt
20060068799 March 30, 2006 Morton et al.
20060130107 June 15, 2006 Gonder et al.
20060153089 July 13, 2006 Silverman
20060174160 August 3, 2006 Kim
20060244818 November 2, 2006 Majors et al.
20070016687 January 18, 2007 Agarwal et al.
20070070914 March 29, 2007 Abigail
20070086338 April 19, 2007 Robert et al.
20080037567 February 14, 2008 Cho et al.
20080056586 March 6, 2008 Cheng et al.
20080092128 April 17, 2008 Corry et al.
20080101368 May 1, 2008 Weinman
20080125077 May 29, 2008 Velazquez et al.
20080140817 June 12, 2008 Agarwal et al.
20080144563 June 19, 2008 Hart
20080279213 November 13, 2008 Tong et al.
20080293494 November 27, 2008 Adiraju et al.
20080313691 December 18, 2008 Cholas et al.
20090067328 March 12, 2009 Morris et al.
20090193057 July 30, 2009 Maes
20090203375 August 13, 2009 Gisby et al.
20090262741 October 22, 2009 Jungck et al.
20090280908 November 12, 2009 Carroll et al.
20090282127 November 12, 2009 Leblanc et al.
20100036954 February 11, 2010 Sakata et al.
20100046527 February 25, 2010 Li et al.
20100125851 May 20, 2010 Singh et al.
20100185961 July 22, 2010 Fisher
20100269044 October 21, 2010 Ivanyi
20100325309 December 23, 2010 Cicic et al.
20110052008 March 3, 2011 Holsing et al.
20110122812 May 26, 2011 Jeong et al.
20110197132 August 11, 2011 Escoda et al.
20110202656 August 18, 2011 Gentile et al.
20110236665 September 29, 2011 Roque et al.
20110246665 October 6, 2011 Vange et al.
20110296303 December 1, 2011 Duquene et al.
20120069748 March 22, 2012 Van Den Bogaert
20120190444 July 26, 2012 Fujisawa et al.
20120311107 December 6, 2012 Van der Merwe et al.
20120314077 December 13, 2012 Clavenna, II et al.
20130054763 February 28, 2013 Van der MerWe et al.
20130079144 March 28, 2013 Ahmed et al.
20130097349 April 18, 2013 Lu et al.
20130279354 October 24, 2013 Ekman
20130298220 November 7, 2013 Yoon et al.
20140098662 April 10, 2014 Jungck et al.
20140259109 September 11, 2014 Houston et al.
20140344331 November 20, 2014 Johns et al.
20150341312 November 26, 2015 Ezell et al.
20150373135 December 24, 2015 McKeown
20210203546 July 1, 2021 Bartlett et al.
20210281518 September 9, 2021 Bartlett et al.
Foreign Patent Documents
2009/084967 July 2009 WO
Other references
  • Office Action issued in U.S. Appl. No. 15/335,304 dated Jan. 9, 2019.
  • Office Action issued in U.S. Appl. No. 14/047,678 dated Oct. 3, 2018.
  • Advisory Action issued in U.S. Appl. No. 14/047,678 dated Nov. 26, 2018.
  • Office Action issued in U.S. Appl. No. 15/335,308 dated Jan. 4, 2019.
  • Advisory Action issued in U.S. Appl. No. 15/335,304 dated Jun. 25, 2018.
  • Office Action issued in U.S. Appl. No. 15/335,308 dated Mar. 20, 2020.
  • Office Action issued in U.S. Appl. No. 15/335,308 dated Sep. 20, 2019.
  • Office Action issued in U.S. Appl. No. 15/335,308 dated May 21, 2019.
  • Notice of Allowance issued in U.S. Appl. No. 15/335,304 dated Aug. 14, 2019.
  • Office Action issued in U.S. Appl. No. 14,/047,678 dated May 16, 2019.
  • Office Action issued in U.S. Appl. No. 14/047,678 dated Nov. 26, 2019.
  • Office Action issued in U.S. Appl. No. 14/047,678 dated Apr. 20, 2020.
  • Kandula et al., (Aug. 2008). “What's Going On? Learning Communicatino Rules in Edge Networks”. SIGCOMM'08; pp. 87-98.
  • Brinkmeier et al., (Jun. 2009) “Optimally DoS Resistant P2P Topologies for Live Multimedia Streaming,” IEEE Transactions on Parallel and Distributed Systems, vol. 20, No. 6.; pp. 831-844.
  • Krishnan et al., (1997). “A Failure and Overload Tolerance Mechanism for Continuous Media Services,” Multimedia Communications Laboratory, Department of Electrical and Computer Engineering, Boston University; pp. 131-142.
  • Non-Final Office Action dated Oct. 2, 2013, directed to U.S. Appl. No. 13/529,937; 16 pages.
  • Final Office Action dated Feb. 10, 2014, directed to U.S. Appl. No. 13/529,937; 16 pages.
  • Advisory Action dated Apr. 25, 2014, directed to U.S. Appl. No. 13/529,937; 4 pages.
  • Non-Final Office Action dated Nov. 28, 2014, directed to U.S. Appl. No. 13/529,937; 20 pages.
  • Notice of Allowance and Fee(s) Due dated May 20, 2015, directed to U.S. Appl. No. 13/529,937; 13 pages.
  • Non-Final Office Action dated Jul. 28, 2017, directed to U.S. Appl. No. 15/439,677; 27 pages.
  • Notice of Allowance and Fee(s) Due dated Jan. 29, 2018, directed to U.S. Appl. No. 15/439,677; 18 pages.
  • Notice of Allowance and Fee(s) Due dated Feb. 22, 2018, directed to U.S. Appl. No. 15/439,677; 14 pages.
  • Non-Final Office Action dated Jan. 6, 2022, directed to U.S. Appl. No. 17/141,944; 14 pages.
  • Final Office Action dated May 2, 2022, directed to U.S. Appl. No. 17/141,944; 7 pages.
  • Non-Final Office Action dated May 11, 2022, directed to U.S. Appl. No. 17/328,095; 43 pages.
Patent History
Patent number: RE49392
Type: Grant
Filed: Nov 29, 2017
Date of Patent: Jan 24, 2023
Assignee: AAA INTERNET PUBLISHING, INC. (Kelowna)
Inventor: Robert Michael Norman Bartlett (West Kelowna)
Primary Examiner: Peng Ke
Application Number: 15/825,849
Classifications
Current U.S. Class: Computer Network Managing (709/223)
International Classification: H04L 43/08 (20220101); H04L 41/5009 (20220101); H04L 43/16 (20220101); H04L 43/062 (20220101);