Patent ID: 8638796
Filing Date: 2014-01-28
Classification: H04L

Abstract:
1. A method comprising: receiving, via a plurality of radio frequency (RF) channels, a plurality of segments associated with a service flow, wherein the service flow comprises a plurality of discrete data packets and wherein one or more of the plurality of segments includes at least a portion of two or more different data packets separated by a packet boundary; mapping each of the plurality of segments to a unique flow identifier (ID) based on an RF channel ID and a service ID of the service flow; generating a descriptor for each of the plurality of segments, wherein each generated descriptor identifies a storage location of a segment associated with the descriptor and identifies any packet boundaries between portions of different data packets included in the segment; storing the descriptor in a buffer corresponding to the unique flow identifier at a location in the buffer that corresponds to a sequence number associated with each of the plurality of segments that indicates an original order of segments of the service flow; re-ordering the plurality segments based on the locations in the buffer of the stored descriptors and the storage locations contained within the descriptors to generate re-ordered segments, wherein the re-ordered segments are in the original order; initializing first and second timeout trackers each comprising a descriptor pointer identifying a descriptor associated with the service flow and a timestamp; determining, based on a timeout process using the first and second timeout trackers together, a range of re-ordered segments for examination, wherein at least one of the segments in the range of re-ordered segments includes a packet boundary between portions of different data packets included in the at least one segment; examining descriptors associated with a set of re-ordered segments in the range of re-ordered segments to detect if the set of re-ordered segments is ready for packet retrieval of at least a first packet based on the packet boundaries contained within the descriptors; and processing the set of re-ordered segments to obtain the at least first packet when it is detected that the set of re-ordered segments is ready for packet retrieval.