IP Library Granted Patent US 7,126,916
Granted Patent B1
US 7,126,916 · App. 09/645,866 · Granted Oct 24, 2006

System and method for packet bypass in a communication system

Assignee: Efficient Networks, Inc.
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,126,916
App. No.
09/645,866
Granted
Oct 24, 2006
Kind
B1
Abstract

A method for packet bypass in a communications network includes receiving a plurality of packets, determining whether each packet is a bypass packet or a non-bypass packet, and communicating the non-bypass packets toward a communication link. The method also includes communicating a plurality of the bypass packets toward the communication link between communication of two of the non-bypass packets.

Claims (72)

1. A method for packet bypass in a communications network with an asymmetrical upstream and downstream transmission rate, comprising:

receiving a plurality of packets;

determining whether each packet is a bypass packet or a non-bypass packet;

optimally selecting a maximum number of bypass packets to communicate between two non-bypass packets to maximize the downstream transmission rate without substantially interfering with the upstream transmission rate;

communicating the non-bypass packets toward a communication link; and

communicating a plurality of the bypass packets toward the communication link between communication of two of the non-bypass packets,

wherein each bypass packet comprises an acknowledgment message, and

wherein each bypass packet comprises a Transmission Control Protocol (TCP) packet containing an acknowledgment message.

2. The method of claim 1 , wherein determining whether each packet is a bypass packet or a non-bypass packet comprises determining a size of the packet.

3. The method of claim 2 , wherein determining the size of the packet comprises classifying packets having a size smaller than a specified size as bypass packets.

4. The method of claim 1 , wherein determining whether each packet is a bypass packet or a non-bypass packet comprises determining a content of the packet.

5. The method of claim 1 , wherein determining whether each packet is a bypass packet or a non-bypass packet comprises determining at least one of a size of the packet, a protocol used to generate the packet, and a content of the packet.

6. A method for packet bypass in a communications network, comprising:

receiving a plurality of packets;

determining whether each packet is a bypass packet or a non-bypass packet;

communicating the non-bypass packets toward a communication link; and

communicating a plurality of the bypass packets toward the communication link between communication of two of the non-bypass packets,

wherein determining whether each packet is a bypass packet or a non-bypass packet comprises:

determining a size of the packet;

if the packet does not have a specified size, classifying the packet as a non-bypass packet, otherwise determining a protocol used to generate the packet;

if the packet was not generated using a specified protocol, classifying the packet as a non-bypass packet, otherwise determining a content of the packet; and

if the packet does not include at least a portion of a specified content, classifying the packet as a non-bypass packet, otherwise classifying the packet as a bypass packet.

7. The method of claim 1 , further comprising determining a maximum number of bypass packets that can be communicated between communication of two of the non-bypass packets.

8. The method of claim 1 , further comprising storing each bypass packet and each non-bypass packet in a memory wherein the bypass packets and non-bypass packets can be selectively retrieved from the memory.

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

a bypass memory operable to store bypass packets; and

a transmit memory separate from the bypass memory and operable to store non-bypass packets.

10. The method of claim 1 , wherein the communication link comprises an Asymmetrical Digital Subscriber Line residing between a modem and a central office switch.

11. The method of claim 1 , wherein the communication link comprises at least one of a universal serial bus, a Peripheral Component Interconnect local bus, or an Ethernet connection, residing between a host and a modem.

12. A system for packet bypass in a communications network having an asymmetrical communications link with an upstream and downstream bandwidth with different sizes, comprising:

at least one computer readable medium; and

software encoded on the computer readable medium, the software operable when executed to:

receive a plurality of Transmission Control Protocol (TCP) packets;

determine whether each packet is a bypass packet or a non-bypass packet;

communicate the non-bypass packets upstream toward the asymmetrical a communication link; and

communicate a plurality of the bypass packets upstream toward the asymmetrical communication link between communication of two of the non-bypass packets,

wherein the software is operable to communicate up to a specified maximum number of bypass packets between communication of two non-bypass packets and wherein the maximum number is optimally selected to maximize the downstream bandwidth.

13. The system of claim 12 , wherein each bypass packet comprises an acknowledgment message.

14. The system of claim 12 , wherein the software is operable to determine whether each packet is a bypass packet or a non-bypass packet by determining a size of the packet.

15. The system of claim 14 , wherein determining the size of the packet comprises classifying packets having a size smaller than a specified size as bypass packets.

16. The system of claim 12 , wherein the software is operable to determine whether each packet is a bypass packet or a non-bypass packet by determining a content of the packet.

17. The system of claim 12 , wherein the software is operable to determine whether each packet is a bypass packet or a non-bypass packet by determining at least one of a size of the packet, a protocol used to generate the packet, and a content of the packet.

18. The system of claim 12 , wherein the software is operable to determine whether each packet is a bypass packet or a non-bypass packet by:

determining a size of the packet;

if the packet does not have a specified size, classifying the packet as a non-bypass packet, otherwise determining a protocol used to generate the packet;

if the packet was not generated using a specified protocol, classifying the packet as a non-bypass packet otherwise determining a content of the packet; and

if the packet does not include at least a portion of a specified content, classifying the packet as a non-bypass packet, otherwise classifying the packet as a bypass packet.

19. The system of claim 12 , wherein the software is further operable to store each bypass packet and each non bypass packet in a memory wherein the bypass packets and non-bypass packets can be selectively retrieved from the memory.

20. The method of claim 19 , wherein the memory comprises:

a bypass memory operable to store bypass packets; and

a transmit memory separate from the bypass memory and operable to store non-bypass packets.

21. The system of claim 12 , wherein the communication link comprises an Asymmetrical Digital Subscriber Line residing between a modem and a central office switch.

22. The system of claim 12 , wherein the communication link comprises at least one of a universal serial bus, a Peripheral Component Interconnect local bus, or an Ethernet connection, and resides between a host and a modem.

23. A system for packet bypass in a communications network having an asymmetrical communications link with an upstream and downstream bandwidth that are different sizes, comprising:

a communications manager operable to receive a plurality Transmission Control Protocol (TCP) packets and to determine whether each packet is a bypass packet or a non-bypass packet; and

a memory accessible to the communications manager and operable to receive bypass packets and non-bypass packets from the communications manager;

wherein the communications manager is further operable to retrieve bypass packets and non-bypass packets from the memory and to communicate upstream toward the asymmetrical communication link a plurality of the bypass packets between communication of two of the non-bypass packets,

wherein the downstream bandwidth is larger than the upstream bandwidth, and

wherein the communications manager is operable to communicate up to a specified maximum number of bypass packets between communication of two non-bypass packets,

wherein the communications manager is operable to determine whether each packet is a bypass packet or a non-bypass packet by determining a size of the packet.

24. The system of claim 23 , wherein the communications manager is operable to classify all packets having a size smaller than a specified size as bypass packets.

25. A system for packet bypass in a communications network having an asymmetrical communications link with an upstream and downstream bandwidth that are different sizes, comprising:

a communications manager operable to receive a plurality Transmission Control Protocol (TCP) packets and to determine whether each packet is a bypass packet or a non-bypass packet; and

a memory accessible to the communications manager and operable to receive bypass packets and non-bypass packets from the communications manager;

wherein the communications manager is further operable to retrieve bypass packets and non-bypass packets from the memory and to communicate upstream toward the asymmetrical communication link a plurality of the bypass packets between communication of two of the non-bypass packets,

wherein the downstream bandwidth is larger than the upstream bandwidth, and

wherein the communications manager is operable to communicate up to a specified maximum number of bypass packets between communication of two non-bypass packets,

wherein the communications manager is operable to determine whether each packet is a bypass packet or a non-bypass packet by:

determining a size of the packet;

if the packet does not have a specified size, classifying the packet as a non-bypass packet, otherwise determining a protocol used to generate the packet;

if the packet was not generated using a specified protocol, classifying the packet as a non-bypass packet otherwise determining a content of the packet; and

if the packet does not include at least a portion of a specified content, classifying the packet as a non-bypass packet, otherwise classifying the packet as a bypass packet.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 14, 2012
From: GIGASET COMMUNICATIONS INC.
To: SAGEMCOM BROADBAND SAS
Reel/Frame 027859/0230 →
MERGER Recorded Feb 29, 2012
From: GIGASET COMMUNICATIONS DALLAS LLC
To: GIGASET COMMUNICATIONS INC.
Reel/Frame 027780/0815 →
AFFIDAVIT Recorded Jul 20, 2009
From: EFFICIENT NETWORKS, INC.
To: GIGASET COMMUNICATIONS DALLAS LLC
Reel/Frame 022973/0673 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2000
From: LAUFFENBURGER, KENNETH A.; PERRY, WILLIAM A., JR.; KNAUBER, KEITH P.; ROWAN, ROY E.
To: EFFICIENT NETWORKS, INC.
Reel/Frame 011070/0048 →