Patent ID: 8644152

Claim:
A device of a Local Area Network (LAN) connected to the Internet, the device comprising: a transceiver operable to transmit packets to and receive packets from a modem; and a logic engine configured to; hold all internet traffic from other nodes in the LAN; transmit first Internet Control Message Protocol (ICMP) ping packets at a first rate through an upstream path for a modem to an Internet node such that no throttling is triggered in the modem, transmit a series of second ICMP ping packets through the upstream path for the modem to the Internet node at a second rate greater than the first rate and sufficient to trigger throttling in the modem, the logic engine being further configured to transmit each successive second ICMP ping packet in the series responsive to receiving a reply message from the previous second ICMP ping packet in the series, determine whether a first average roundtrip transmission time for the first ICMP ping packets exceeds by a threshold amount over a second average roundtrip transmission time for the second ICMP ping packets to determine whether the modem implements throttling and, responsive to the determination indicating that the modem implements throttling, determine an upstream bandwidth for the upstream path for the modem by averaging a total packet size for the second ICMP ping packets by a total transmission time for the second ICMP ping packets responsive to a determination that the modem implements throttling, and limit non-Voice-over-IP (VoIP) data traffic to satisfy a desired quality of service for VoIP data traffic based upon the upstream bandwidth estimation.