System and method for the consolidation of data packets
AssigneeHewlett-Packard Development Company, L.P.
InventorJeffrey S. Weaver
Life of this patent
Estimating the term…
Abstract
A system and method for optimizing the transmission of a plurality of data packets, each packet having a next-hop address, across a data network are provided. The method includes receiving the data packets at the network traffic device, buffering the data packets, identifying a selected data packet, identifying a second data packet with the same next-hop address as the selected data packet, consolidating the selected data packet with the second data packet to form a consolidated packet, and transmitting the consolidated data packet. The system and method of the present invention are particularly applicable to the optimization of voice data traffic.
Claims17
A method of optimizing the transmission of a plurality of data packets across a data network at a network traffic device, each data packet having an actual length and including a header with a field giving a total length value for the data packet and a next-hop address, the method comprising:
- receiving the data packets at the network traffic device;
- deconsolidating any consolidated data packets, including extracting the total length value from the header, comparing the total length value to the actual length, and if the actual length is longer than the total length value, removing a segment from the front of the data packet equal in length to the total length value, and then buffering the segment
- after deconsolidating any consolidated data packets, buffering the data packets;
- identifying a first data packet;
- identifying a second data packet with the same next-hop address as the first data packet;
- consolidating the first data packet with the second data packet to form a consolidated packet;
- and
- transmitting the consolidated data packet.
A method of optimizing the transmission of a plurality of data packets across a data network at a network traffic device, each data packet having an actual length and a next-hop address, the method comprising:
- receiving the data packets at the network traffic device;
- buffering the data packets;
- identifying a first data packet, wherein identifying a first data packet includes comparing the actual length of the data packet to a maximum transmission unit;
- identifying a second data packet with the same next-hop address as the first data packet;
- consolidating the first data packet with the second data packet to form a consolidated packet;
- and
- transmitting the consolidated data packet.
A method of transmitting a plurality of voice data packets across a network, each of the plurality of voice data packets having a next-hop address and including a tag identifying the packet as a voice data packet, the method comprising:
- receiving data packets at a network traffic device, the data packets including plural voice data packets and plural non-voice data packets;
- checking a first data packet for the tag;
- after checking a first data packet for the tag, buffering each of the received data packets, wherein buffering each of the received data packets includes buffering data packets with the tag separately from data packets without the tag;
- if thd first data packet has the tag, then identifying a second data packet with the tag and with the same next-hop address as the first data packet;
- consolidating the first data packet with the second data packet to form a consolidated packet;
- and
- transmitting the consolidated packet.
A method of optimizing transmission of a plurality of data packets across a data network at a network traffic device, the network traffic device having a buffer, each of the plurality of data packets being stored in the buffer and having a next-hop address, the method comprising:
- selecting a first data packet from the plurality of stored packets;
- determining the next-hop address for the first data packet;
- checking the size of the first data packet;
- comparing the size of the first data packet to a predetermined maximum transmission unit;
- if the size of the first data packet is smaller than the maximum transmission unit, then identifying a second data packet from the plurality of stored data packets with the same next-hop address as the selected data packet;
- checking the size of second data packet;
- adding the size of the first data packet and the second data packet to find a total size;
- comparing the total size to the maximum transmission unit;
- if the total size is less than or equal to the maximum transmission unit, consolidating the selected data packet and the second data packet to form a consolidated packet;
- and
- transmitting the consolidated packet.
A network traffic forwarding system configured to optimize flow of data packets across a data network, each data packet having an actual length and a next-hop address, and including a header with a field giving a total length value for the data packet, the forwarding system comprising:
- a plurality of network interface ports configured to be connected to the network to send and receive data packets;
- memory configured for buffering received packets;
- and
- a processor configured to deconsolidate any received data packets that are consolidated packets, wherein the processor is configured to extract the total length value from the header, to compare the total length value to the actual length, and if the actual length is longer than the total length value, to remove a segment from the front of the data packet equal in length to the total length value, and then to buffer the segment, and wherein, upon receipt of a first data packet by one of the plurality of network interface ports, the processor is configured to identify a second data packet buffered in the memory with the same next-hop address as the first data packet, and to consolidate the first data packet and the second data packet to form a consolidated packet for transmission across the network.
A network traffic forwarding system configured to optimize flow of data packets across a data network, each data packet having an actual length and a next-hop address, the forwarding system comprising:
- a plurality of network interface ports configured to be connected to the network to send and receive data packets;
- memory configured for buffering received packets;
- and
- a processor configured, upon receipt of a first data packet by one of the plurality of network interface ports, to identify a second data packet buffered in the memory with the same next-hop address as the first data packet, and to consolidate the first data packet and the second data packet to form a consolidated packet for transmission across the network, wherein the processor is further configured to compare the actual length of the first data packet to a maximum transmission unit, and if the actual length of the first data packet is greater than or equal to the maximum transmission unit, to transmit the selected data packet without consolidation.
An article comprising:
- a storage medium having a plurality of machine-readable instructions, the instructions being configured to be executed by a network traffic device to optimize the transmission of a plurality of data packets across a data network at the network traffic device, the network traffic device having a buffer, each of the plurality of data packets being stored in the buffer and having a next-hop address, wherein execution of the instructions provides for the steps of
- selecting a first data packet from the plurality of stored packets;
- determining the next-hop address for the first data packet;
- checking the size of the first data packet;
- comparing the size of the first data packet to a predetermined maximum transmission unit;
- if the size of the first data packet is smaller than the maximum transmission unit, then identifying a second data packet from the plurality of stored data packets with the same next-hop address as the selected data packet;
- checking the size of first data packet;
- adding the size of the first data packet and the second data packet to find a total size;
- comparing the total size to the maximum transmission unit;
- if the total size is less than or equal to the maximum transmission unit, consolidating the selected data packet and the second data packet to form a consolidated packet;
- and
- transmitting the consolidated packet.
Dependencies are inferred from the claim text.