VoIP packet prioritization
First Claim
1. A method for transmitting data packets comprising:
- establishing a communication channel between a first client and a second client;
receiving a second client data packet from the second client that is directed to the first client for the communication channel between the first client and the second client;
receiving a third client data packet from a third client that is directed to the first client, wherein the third client is an emergency broadcast client with an emergency broadcast message to Voice Over Internet Protocol (VoIP) clients in a specific geographic area;
determining a priority level for the second client data packet and the third client data packet based on both priority information obtained from the first client and a type of data packet;
obtaining a priority list including priority information corresponding to the second client and the third client for use in determining the priority level of the data packets;
when the second client does not have a lower priority level than the third client, determining whether the first client has indicated to ignore the priority level of the second client upon receipt of the data packet from the third client;
determining a highest priority level data packet between the second client data packet and the third client data packet; and
transmitting the highest priority level data packet to the first client.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system for prioritizing data packets relating to a conversation over a VoIP communication channel is provided. An individual client or a service provider may specify priority information corresponding to incoming conversations. When several calling clients send data packets to one called client, the predefine priority information of the called client may be exchanged as part of contextual information. Based on the predefined priority information, priority levels are assigned to the received data packets. Subsequently, an existing communication channel may be terminated, interrupted, altered, and/or suspended in order to transmit data packets with higher priority than other data packets. A new communication channel may be established for a two-way communication, or a one-way communication between two clients. In this manner, the highest priority conversation among several incoming conversations, such as an emergency broadcast message or communication, can be ensured to reach to a client without a delay.
69 Citations
20 Claims
-
1. A method for transmitting data packets comprising:
-
establishing a communication channel between a first client and a second client; receiving a second client data packet from the second client that is directed to the first client for the communication channel between the first client and the second client; receiving a third client data packet from a third client that is directed to the first client, wherein the third client is an emergency broadcast client with an emergency broadcast message to Voice Over Internet Protocol (VoIP) clients in a specific geographic area; determining a priority level for the second client data packet and the third client data packet based on both priority information obtained from the first client and a type of data packet; obtaining a priority list including priority information corresponding to the second client and the third client for use in determining the priority level of the data packets; when the second client does not have a lower priority level than the third client, determining whether the first client has indicated to ignore the priority level of the second client upon receipt of the data packet from the third client; determining a highest priority level data packet between the second client data packet and the third client data packet; and transmitting the highest priority level data packet to the first client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-readable memory device used in transmitting data packets, comprising:
-
establishing a communication channel between a first client and a second client; receiving a second client data packet from the second client that is directed to the first client for the communication channel between the first client and the second client; receiving a third client data packet from a third client that is directed to the first client, wherein the third client is an emergency broadcast client with an emergency broadcast message to Voice Over Internet Protocol (VoIP) clients in a specific geographic area; determining a priority level for the second client data packet and the third client data packet based on both priority information obtained from the first client and a type of data packet; obtaining a priority list including priority information corresponding to the second client and the third client for use in determining the priority level of the data packets; when the second client does not have a lower priority level than the third client, determining whether the first client has indicated to ignore the priority level of the second client upon receipt of the data packet from the third client; determining a highest priority level data packet between the second client data packet and the third client data packet; and transmitting the highest priority level data packet to the first client. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A system for transmitting data packets, comprising:
-
a processor and a computer readable medium memory; the processor configured to perform operations, comprising; establishing a communication channel between a first client and a second client; receiving a second client data packet from the second client that is directed to the first client for the communication channel between the first client and the second client; receiving a third client data packet from a third client that is directed to the first client, wherein the third client is an emergency broadcast client with an emergency broadcast message to Voice Over Internet Protocol (VoIP) clients in a specific geographic area; determining a priority level for the second client data packet and the third client data packet based on both priority information obtained from the first client and a type of data packet; obtaining a priority list including priority information corresponding to the second client and the third client for use in determining the priority level of the data packets; when the second client does not have a lower priority level than the third client, determining whether the first client has indicated to ignore the priority level of the second client upon receipt of the data packet from the third client; determining a highest priority level data packet between the second client data packet and the third client data packet; and transmitting the highest priority level data packet to the first client. - View Dependent Claims (19, 20)
-
Specification