Method and apparatus for packet aggregation in packet-based network
First Claim
1. A method for creating an aggregate packet in a packet-based network, the method comprising:
- receiving a first packet over the packet based network;
determining whether a first route supports aggregate packets, the first route corresponding to a first sequence of destinations, the first sequence of destinations incluing a first final destination;
beginning to wait a predeternmined period for at least a second packet, the second packet having a second route corresponding to a second sequence of destinations, the second sequence of destinations including a second final destination, the second route having at least one destination in common with the first route, the at least one common destination supporting aggregate packets;
sending the first packet to the first final destination using the first route if the predetermined period expires before receiving the second packet; and
creating an aggregate packet including the first packet and the second packet if the second packet is received before the predetermined period expires.
6 Assignments
0 Petitions
Accused Products
Abstract
A system and method for improving the efficiency of a packet-based network by using aggregate packets are described. One example method involves determining which network devices support aggregate packets. If a first packet is received on a route that supports aggregate packets, it is then held for a short period. During this short period, if an additional packet is received that shares at least one common route element that also supports aggregate packets with the first packet, the first packet and the additional packet are combined into a single larger aggregate packet. This can reduce the transmission time when there are multiple packets being sent to common destinations because the inter-packet time may be reduced. Additionally, in some networks, this technique allows the bandwidth of a common medium to be more fully used because more of the packets will be closer to the maximum size allowed.
-
Citations
34 Claims
-
1. A method for creating an aggregate packet in a packet-based network, the method comprising:
-
receiving a first packet over the packet based network;
determining whether a first route supports aggregate packets, the first route corresponding to a first sequence of destinations, the first sequence of destinations incluing a first final destination;
beginning to wait a predeternmined period for at least a second packet, the second packet having a second route corresponding to a second sequence of destinations, the second sequence of destinations including a second final destination, the second route having at least one destination in common with the first route, the at least one common destination supporting aggregate packets;
sending the first packet to the first final destination using the first route if the predetermined period expires before receiving the second packet; and
creating an aggregate packet including the first packet and the second packet if the second packet is received before the predetermined period expires. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29)
continuing to wait for the predetermined period after the receipt of the second packet for a third packet having a third route corresponding to a third sequence of destinations, the third sequence of destinations including a third final destination, the third route having at least one destination in common with the first route and the second route, the at least one destination supporting aggregate packets, sending the aggregate packet including the first packet and the second packet if the predetermined period expires before receiving the third packet; and
including the third packet in the aggregate packet if the third packet is received before the predetermined period expires.
-
-
5. The method of claim 1, wherein the creating further comprises including in the aggregate packet a first location and a first size for the first packet and a second location and a second size for the second packet.
-
6. The method of claim 1, wherein the aggregate packet includes an entry for each packet that is included in the aggregate packet, each entry defining a location and a size of a respective included packet.
-
7. The method of claim 1, wherein the packet-based network comprises an Ethernet network.
-
8. The method of claim 1, wherein the packet-based network comprises an Internet network.
-
9. The method of claim 1, wherein the packet-base network comprises a wide area network (WAN).
-
10. The method of claim 1, wherein the packet-based network comprises a local area network (LAN).
-
11. The method of claim 1, wherein the packet-based network comprises a wireless network.
-
12. The method of claim 1, wherein the packet-based network comprises a home network.
-
13. The method of claim 1, wherein the packet based network supports at least one or more of a stadard “
- Institute of Electrical and Electronics Engineers”
(IEEE) 802 protocol, a stand IEEE 802.3 protocol, a standard IEEE 802.3u protocol, and a standard IEEE 802.3z protocol.
- Institute of Electrical and Electronics Engineers”
-
14. The method of claim 1, wherein the first route supports aggregate packets if at least one destination in the first sequence of destinations supports aggregate packets.
-
15. The method of claim 1, wherein a timer is used to test the predeteed period.
-
16. The method of claim 1, wherein a table is used to determine the predetermined period, the table comprised of a plurality of entries, the entries indicating predetermined periods for respective network devices.
-
17. The method of claim 1, wherein the aggregate packet comprises a packet compliant with the protocol of the packet-based network.
-
18. The method of claim 1, wherein the aggregate packet includes a flag in high level data link control information (HDLC) to designate that the packet comprises an aggregate packet.
-
19. The method of claim 1, wherein the aggegate packet includes a payload comprising a header followed by a plurality of packets.
-
20. The method of claim 19, wherein the header indicates the number of packets in the aggregate packet and the locations of the packets in the aggregate packet inside the plurality of packets.
-
21. The method of claim 20, wherein the plurality of packets includes the first packet and the second packet.
-
22. The method of claim 20, wherein the plurality of packets includes the number of packets indicated by the header.
-
23. The method of claim 20, wherein the packets in the plurality of packets include a link layer control (LLC) information.
-
25. The method of claim 23, wherein the plurality of packets comprise IEEE 802.3 packets with LLC information stripped of a preamble component and a start component.
-
26. The method of claim 20, wherein the packets in the plurality of packets include a HDLC information.
-
27. The method of claim 1, wherein the aggregate packet includes a HDLC information, and wherein the HDLC information further includes a flag specifying the aggregate packet comprises at least a first packet and a second packet.
-
28. The method of claim 1, wherein the destination of the aggregate packet is the at least one common destination.
-
29. The method of claim 28, wherein the at least one common destination that is the destination of the aggregate packet is the common destination that is the farthest from the source of the first packet and the second packet.
-
24. The method of clain 23, wherein the LLC information is stripped of a one or more elements.
-
30. An apparatus for creating an aggregate packet in a packet-based network, the apparatus comprising:
-
means for receiving a first packet over the packet based network;
means for determining whether a first route supports aggegate packets, the first route corresponding to a first sequence of destinations, the first sequence of destinations including a first final destination;
means for waiting a predetermined period for a second packet, the second packet having a second route corresponding to a second sequence of destinations, the second sequence of destinations including a second final destination, the second route having at least one destination in common with the first route, the at least one destination supporting aggregate packets;
meams for sending the first packet to the destination using the route if the predetermined period expires before receiving the second packet; and
means for creating an aggregate packet including the first packet and the second packet if the second packet is received before the predetermined period expires.
-
-
31. A method for routing aggegate packets, the method comprising:
-
receiving a first packet, the first packet having a first route corresponding to a first sequence of destinations, the first sequence of destinations including a first final destination;
receiving a second packet within a predetermined period of receiving the first packet, the second packet having a second route corresponding to a second sequence of destinations, the second sequence of destinations including a second final destination;
aggregating the first packet with the second packet to create an aggregate packet to be sent to a first destination, the first destination in the first sequence of destinations and in the second sequence of destinations, the first destination supporting aggegate packets;
sending the aggregate packet to the first destination;
deaggregating the aggregate packet at the first destination into the first packet and the second packet;
sending the first packet to the first final destination from the first destination; and
sending the second packet to the second final destination from the first destination.
-
-
32. A method of creating an aggregate packet, the method comprising:
-
receiving a first packet, the first packet having a first sequence of destinations, the first sequence of destinations including a first final desination, the first packet having a first protocol;
waiting a predetermined period for at least a second packet, the second packet having a second sequence of destinations, the second sequence of destinations including a second final destination, the second packet having a second protocol;
making a first determination that the first sequence of destinations and the second sequence of destinations have at least one destination in common;
making a second deterination that the first packet and the second packet combined can be accommodated in a single packet having the same protocol as the first packet; and
combining the first packet and the second packet into a single aggregate packet in response to the first determination and the second determination, the aggregate packet having a destination that is the at least one common destination, and the aggregate packet having the same protocol as the first packet or the second packet. - View Dependent Claims (33, 34)
-
Specification