Patent ID: 7228550

Claim:
A method of providing a communication to one of a plurality of processes under control of an operating system, the method comprising: receiving the communication from a source not under control of the operating system, the communication characterized by a n-tuple containing a predefined plurality of attributes, the attributes including at least one of source information, destination information and protocol information associated with the communication; classifying the communication into a plurality of streams based upon the n-tuple that characterizes the communication; organizing a plurality of storage locations in a storage into a plurality of data structures wherein at least one data structure is configured to allow storage and retrieval of the communication based upon at least one of the plurality of attributes contained in the n-tuple; storing the communication into the storage without use of the operating system for the storing step; responsive to the at least one attribute selected from source information associated with the communication, destination information associated with the communication and protocol information associated with the communication, making the stored communication available to one of the plurality of processes under control of the operating system, without use of the operating system for the making the stored communication available to one of the plurality of processes; wherein: the communication is stored into a storage area; and the communication is made available by assigning to said one of the plurality of processes a pointer to the communication in the storage area in which it was stored upon receipt; and assigning the communication to a stream, the stream having a type from a plurality of types; wherein the communication is made available responsive to a command received from said one of the plurality of processes, the command specifying the type of the stream to which the communication was assigned.