IP Library Granted Patent US 7,633,869
Granted Patent B1
US 7,633,869 · App. 11/303,166 · Granted Dec 15, 2009

Automatic network traffic characterization

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 7,633,869
App. No.
11/303,166
Granted
Dec 15, 2009
Kind
B1
Abstract

A local area network includes computers and peripherals networked in a high-speed LAN with access to a WAN through a slower connection via a broadband modem. A LAN gateway device manages data traffic between the local computers and peripherals and between the LAN and the WAN. The LAN gateway device provides multiple features, such as wired or wireless links, security, firewall, NAT, DCHP, traffic management, and the like. Traffic management features include an automatic quality of service priority classification scheme. A quality of service module automatically assigns priorities to the data streams based on analysis of the data packets. Traffic shaping techniques control the LAN gateway upstream output and enable IP fragmentation of TCP packets according to measured upstream channel conditions. The traffic shaping techniques estimate available upstream data rate, available downstream data rate, and the size of datagrams being used on the network link.

Claims (35)

1. A method for estimating available upstream data rate of a network link comprising the steps of:

sending a first data packet to a remote system, wherein the first data packet is configured to cause the remote system to generate a first response;

receiving the first response from the remote system;

measuring elapsed time between the sending of the first data packet and the receiving of the first response from the remote system to produce a first measured time;

sending one or more padding packets of a first size to the remote system, the one or more padding packets each including data which does not cause the remote system to generate a response;

sending a second data packet to the remote system, wherein the second data packet is configured to cause the remote system to generate a second response;

receiving the second response from the remote system;

measuring elapsed time between the sending of the padding packet and the receiving of the second response from the remote system to produce a second measured time; and

responsive to the first size, the first measured time, and the second measured time, calculating an estimation of the available upstream data rate.

2. The method of claim 1 , wherein the method is performed in a traffic-shaping module.

3. The method of claim 1 , wherein the data included in the one or more padding packets comprises data appearing valid to an intermediate device receiving the padding packet prior to the remote system.

4. The method of claim 1 , wherein the one or more padding packets comprise Internet Control Message Protocol (ICMP) echo requests having incorrect payload checksums.

5. The method of claim 1 , further comprising:

responsive to the estimation of the available upstream data rate, modifying an output data rate to a value less than the estimation of the available upstream data rate.

6. The method of claim 1 , further comprising:

sending a plurality of data packets to the remote system, each of the data packets configured to cause the remote system to generate a response;

receiving a plurality of responses from the remote system, each of the plurality of responses generated from a data packet;

measuring an elapsed time between the sending of a data packet and the receiving of a response generated from the data packet to generate a plurality of ping-response times;

selecting a ping-response time having a lowest value from the plurality of ping-response times; and

modifying the estimation of the available upstream data rate responsive to the selected ping-response time.

7. A method for estimating the available downstream data rate of a network link comprising the steps of:

estimating available upstream data rate;

sending a first data packet to a remote system, wherein the first data packet is of a first size and is configured to cause the remote system to generate a first response, wherein the first response is of a second size;

receiving the first response from the remote system;

measuring elapsed time between the sending of the first data packet and the receiving of the first response from the remote system to produce a first measured time;

sending a second data packet to the remote system, wherein the second data packet is of a third size and is configured to cause the remote system to generate a second response, wherein the second response is of a fourth size;

receiving the second response from the remote system;

measuring elapsed time between the sending of the second data packet and the receiving of the second response from the remote system to produce a second measured time;

responsive to the first size, second size, third size, fourth size, first measure time, second measured time, and the estimated available upstream data rate, calculating an estimation of the available downstream data rate.

8. The method of claim 7 , wherein the method is performed in a traffic-shaping module.

9. The method of claim 7 , wherein the first data packet and the second data packet comprise Internet Control Message Protocol (ICMP) echo requests.

10. The method of claim 7 , wherein the first response and the second response comprise Internet Control Message Protocol (ICMP) echo replies.

11. The method of claim 7 , wherein calculating an estimation of the available downstream data rate comprises:

calculating a delay time difference by subtracting the first measured time from the second measured time; and

determining the estimation of the available downstream data rate using the delay time difference and the estimated available upstream data rate.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2012
From: QUALCOMM ATHEROS, INC.
To: QUALCOMM INCORPORATED
Reel/Frame 029252/0862 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2012
From: UBICOM (ASSIGNMENT FOR THE BENEFIT OF CREDITORS), LLC
To: QUALCOMM ATHEROS, INC.
Reel/Frame 027833/0926 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2012
From: UBICOM, INC.
To: UBICOM (ASSIGNMENT FOR THE BENEFIT OF CREDITORS), LLC
Reel/Frame 027830/0061 →
RELEASE Recorded Feb 22, 2012
From: SILICON VALLEY BANK
To: UBICOM, INC.
Reel/Frame 027762/0169 →
RELEASE Recorded Feb 22, 2012
From: SILICON VALLEY BANK
To: UBICOM, INC.
Reel/Frame 027762/0163 →
SECURITY AGREEMENT Recorded Oct 26, 2010
From: UBICOM, INC.
To: SILICON VALLEY BANK
Reel/Frame 025192/0029 →
SECURITY AGREEMENT Recorded Apr 17, 2007
From: UBICOM, INC.
To: SILICON VALLEY BANK INC.
Reel/Frame 019193/0350 →