VOICE CALL DETECTION
Systems and methods for detecting a voice call are described. In one aspect, a data stream is identified and analyzed to determine whether the data stream is associated with a single device. The data stream is further analyzed to determine whether it is actively communicating data packets and to identify a data packet size. Bandwidth for the data stream is reserved if the data stream is associated with a single device, is actively sending data packets, and the data packet size is smaller than a threshold value.
1 . A processor-implemented method for detecting voice call data, the method comprising:
identifying a data stream containing a plurality of data packets;
determining whether the data stream is associated with a single device;
determining whether the data stream is actively communicating data packets;
identifying a data packet size associated with the data packets; and
reserving bandwidth for the data stream if the data stream is associated with a single device, is actively communicating data packets, and the data packet size is smaller than a threshold value.
2 . A method as recited in claim 1 wherein the plurality of data packets are voice prioritized data packets.
3 . A method as recited in claim 1 wherein the plurality of data packets are WiFi Multimedia voice prioritized IP packets.
4 . A method as recited in claim 1 wherein the single device is a local device configured to send or receive the plurality of data packets.
5 . A method as recited in claim 1 wherein actively communicating data packets includes communicating at least one data packet every 200 milliseconds.
6 . A method as recited in claim 1 wherein actively communicating data packets includes communicating at least one data packet every 200 milliseconds for a previous three consecutive data packets.
7 . A method as recited in claim 1 wherein the data packet size threshold value is less than or equal to 450 bytes.
8 . A method as recited in claim 1 wherein reserving bandwidth includes assigning a priority level to the data stream that is higher than priority levels associated with non-voice call data streams.
9 . A method as recited in claim 1 further comprising determining whether the data stream is associated with an interface port 500 .
10 . A method as recited in claim 1 further comprising determining whether the data stream is associated with an interface port 4500 .
11 . A method as recited in claim 1 wherein reserving bandwidth for the data stream includes applying a rate limiting function to the data stream if another voice call is actively using available bandwidth.
12 . A method as recited in claim 1 further comprising identifying a start of a voice call if the data stream is associated with a single device, is actively communicating data packets, and the data packet size is smaller than a threshold value.
13 . A method as recited in claim 1 further comprising detecting termination of the data stream.
14 . A processor-implemented method comprising:
identifying a data stream containing a plurality of voice prioritized data packets;
determining whether the data stream is associated with a single device;
determining whether the data stream is actively communicating voice prioritized data packets;
determining whether the data stream is associated with a specific network interface port;
identifying the data stream as a voice call if the data stream is associated with a single device, is actively communicating voice prioritized data packets, and is associated with the specific network interface port.
15 . A method as recited in claim 14 further comprising reserving bandwidth for the data stream if the data stream is associated with a single device, is actively communicating voice prioritized data packets, and is associated with the specific network interface port.
16 . A method as recited in claim 14 wherein the plurality of voice prioritized data packets are WiFi Multimedia voice prioritized IP packets.
17 . A method as recited in claim 14 further comprising identifying a data packet size associated with the plurality of voice-prioritized data packets.
18 . A method as recited in claim 14 wherein the specific network interface port is interface port 500 or 4500 .
19 . A method as recited in claim 14 wherein actively communicating voice prioritized data packets includes communicating at least one voice prioritized data packet every 200 milliseconds.
20 . A data communication apparatus comprising:
a processor; and
a memory coupled to the processor, the memory comprising computer-executable instructions that when executed by the processor performing operations including:
identifying a data stream containing a plurality of data packets;
determining whether the data stream is associated with a single device;
determining whether the data stream is actively communicating data packets;
determining whether the data stream is associated with a specific network interface port;
identifying a data packet size associated with the data packets; and
reserving bandwidth for the data stream if the data stream is associated with a single device, is actively communicating data packets, is associated with the specific network interface port, and the data packet size is smaller than a threshold value.