Systems and methods for dynamic voice-over-internet-protocol routing
AssigneeIncontact Inc.
InventorBrian Minert
Life of this patent
Estimating the term…
Abstract
Embodiments described herein provide a dynamic voice over Internet Protocol (VoIP) audio quality management mechanism in real time, e.g., when a VoIP call is ongoing. Specifically, when a VoIP call has unsatisfactory audio quality, e.g., due to packet loss, jitter, etc., the dynamic VoIP audio quality management mechanism may redirect the VoIP traffic from the previous endpoint that initiates the VoIP session to a different endpoint within the same carrier. Upon the endpoint redirection, a new call leg is established, allowing re-negotiation or re-configuration of VoIP parameters. The re-negotiated or re-configured VoIP parameters may then be used to conduct the remainder of the VoIP call to improve the audio quality.
Claims22
A system for dynamic voice-over-Internet-Protocol (VoIP) audio quality management, the system comprising:
- a processor and a computer-readable medium operably coupled thereto, the computer-readable medium comprising a plurality of instructions stored in association therewith that are accessible to, and executable by, the processor, in conjunction with a network, to perform operations which comprise:
- receiving, from a first end user, a communication request having a destination for a second end user to establish a communication session between the first end user and the second end user;
- determining a first routing path between the first end user and the second end user;
- establishing, in accordance with a set of VoIP parameters, the communication session via the first routing path;
- determining a first audio quality metric following a first plurality of VoIP data packets that are transmitted from the first end user via the first routing path during the communication session;
- redirecting a second plurality of VoIP data packets, in response to determining that the first audio quality metric fails to satisfy a condition, from the first end user through a second routing path while the communication session is ongoing;
- determining a second audio quality metric associated with the second plurality of VoIP data packets that are being transmitted via the second routing path in accordance with the modified one or more VoIP parameters;
- and
- modifying, in response to determining that the second audio quality metric fails to satisfy the condition, one or more VoIP parameters, or redirecting a third plurality of VoIP data packets from the first end user through a third routing path while the communication session is ongoing.
A method for dynamic voice-over-Internet-Protocol (VoIP) audio quality management, the method comprising:
- receiving, from a first end user, a communication request having a destination for a second end user to establish a communication session between the first end user and the second end user;
- determining a first routing path between the first end user and the second end user;
- establishing, in accordance with a set of VoIP parameters, the communication session via the first routing path;
- determining a first audio quality metric associated with a first plurality of VoIP data packets that are transmitted from the first end user via the first routing path during the communication session;
- redirecting, in response to determining that the first audio quality metric fails to satisfy a condition, a second plurality of VoIP data packets from the first end user through a second routing path while the communication session is ongoing;
- determining a second audio quality metric associated with the second plurality of VoIP data packets that are being transmitted via the second routing path in accordance with the modified one or more VoIP parameters;
- modifying, in response to determining that the second audio quality metric fails to satisfy the condition, one or more VoIP parameters, or redirecting a third plurality of VoIP data packets from the first end user through a third routing path while the communication session is ongoing;
- and
- continuing modifying VoIP parameters, or redirecting subsequent VoIP data packets from the first end user through a different routing path while the communication session is ongoing until a monitored audio quality metric associated with VoIP data packets being transmitted through the different routing path satisfies the condition.
A non-transitory computer-readable medium having stored thereon computer-readable instructions executable by a processor, in conjunction with a network, to perform operations which comprise:
- receiving, from a first end user, a communication request having a destination for a second end user to establish a communication session between the first end user and the second end user;
- determining a first routing path between the first end user and the second end user;
- establishing, in accordance with a set of VoIP parameters, the communication session via the first routing path;
- determining a first audio quality metric associated with a first plurality of VoIP data packets that are transmitted from the first end user via the first routing path during the communication session;
- redirecting, in response to determining that the first audio quality metric fails to satisfy the condition, a second plurality of VoIP data packets from the first end user through a second routing path while the communication session is ongoing;
- determining a second audio quality metric associated with the second plurality of VoIP data packets that are being transmitted via the second routing path in accordance with the modified one or more VoIP parameters;
- modifying, in response to determining that the second audio quality metric fails to satisfy the condition, one or more VoIP parameters, or redirecting a third plurality of VoIP data packets from the first end user through a third routing path while the communication session is ongoing;
- and
- continuing modifying VoIP parameters, or redirecting subsequent VoIP data packets from the first end user through a different routing path while the communication session is ongoing until a monitored audio quality metric associated with VoIP data packets being transmitted through the different routing path satisfies the condition.
A system for dynamic voice-over-Internet-Protocol (VoIP) audio quality management, the system comprising:
- a processor and a computer-readable medium operably coupled thereto, the computer-readable medium comprising a plurality of instructions stored in association therewith that are accessible to, and executable by, the processor, in conjunction with a network, to perform operations which comprise:
- receiving, from a first end user, a communication request having a destination for a second end user to establish a communication session between the first end user and the second end user;
- determining a first routing path between the first end user and the second end user;
- establishing, in accordance with a set of VoIP parameters, the communication session via the first routing path;
- determining a first audio quality metric following a first plurality of VoIP data packets that are transmitted from the first end user via the first routing path during the communication session;
- redirecting a second plurality of VoIP data packets, in response to determining that the first audio quality metric fails to satisfy a condition, from the first end user through a second routing path while the communication session is ongoing;
- modifying, in response to determining that the first audio quality metric fails to satisfy the condition, one or more VoIP parameters from the first set of VoIP parameters during the communication session, wherein the one or more VoIP parameters include one or more of:
- a Real Time Protocol (RTP) socket type;
- an audio encoding or compression method used to encode or compress the VoIP data packets;
- a packet payload size;
- an Internet Protocol (IP) address associated with the second end user;
- and
- a selection of an Internet Service Provider (ISP);
- and
- further modifying VoIP parameters, or redirecting subsequent VoIP data packets, from the first end user through a different routing path while the communication session is ongoing until a monitored audio quality metric associated with VoIP data packets being transmitted through the different routing path satisfies the condition.
A system for dynamic voice-over-Internet-Protocol (VoIP) audio quality management, the system comprising:
- a processor and a computer-readable medium operably coupled thereto, the computer-readable medium comprising a plurality of instructions stored in association therewith that are accessible to, and executable by, the processor, in conjunction with a network, to perform operations which comprise:
- receiving, from a first end user, a communication request having a destination for a second end user to establish a communication session between the first end user and the second end user;
- determining a first routing path between the first end user and the second end user;
- establishing, in accordance with a set of VoIP parameters, the communication session via the first routing path;
- determining a first audio quality metric following a first plurality of VoIP data packets that are transmitted from the first end user via the first routing path during the communication session;
- redirecting a second plurality of VoIP data packets, in response to determining that the first audio quality metric fails to satisfy a condition, from the first end user through a second routing path while the communication session is ongoing;
- modifying, in response to determining that the first audio quality metric fails to satisfy the condition, one or more VoIP parameters from the first set of VoIP parameters during the communication session, wherein the one or more VoIP parameters include one or more of:
- a Real Time Protocol (RTP) socket type;
- an audio encoding or compression method used to encode or compress the VoIP data packets;
- a packet payload size;
- an Internet Protocol (IP) address associated with the second end user;
- and
- a selection of an Internet Service Provider (ISP);
- tracking a modification of VoIP parameters or a redirection to a different routing path;
- monitoring a resulting audio quality metric associated with subsequent VoIP data packet in accordance with the modification of VoIP parameters or the redirection to a different routing path;
- determining a total number of times that at least one VoIP parameter has been modified, or the redirection to the different routing path has occurred;
- and
- in response to determining that the total number of times reaches a maximum allowable times of change, performing one or more of:
- (i) redirecting the subsequent VoIP data packets, via at least one routing path associated with a best audio quality metric among a set of routing entities that have been previously redirected to, and
- (ii) continuing the communication session with VoIP parameters associated with the best audio quality metric among different configurations of VoIP parameters that have been previously applied.
A non-transitory computer-readable medium having stored thereon computer-readable instructions executable by a processor, in conjunction with a network, to perform operations which comprise:
- receiving, from a first end user, a communication request having a destination for a second end user to establish a communication session between the first end user and the second end user;
- determining a first routing path between the first end user and the second end user;
- establishing, in accordance with a set of VoIP parameters, the communication session via the first routing path;
- determining a first audio quality metric associated with a first plurality of VoIP data packets that are transmitted from the first end user via the first routing path during the communication session;
- redirecting, in response to determining that the first audio quality metric fails to satisfy the condition, a second plurality of VoIP data packets from the first end user through a second routing path while the communication session is ongoing;
- tracking a modification of VoIP parameters or a redirection to a different routing path;
- monitoring a resulting audio quality metric associated with subsequent VoIP data packet in accordance with the modification of VoIP parameters or the redirection to a different routing path;
- determining a total number of times that at least one VoIP parameter has been modified, or the redirection to the different routing path has occurred;
- and
- in response to determining that the total number of times reaches a maximum allowable times of change, performing one or more of:
- (i) redirecting the subsequent VoIP data packets via at least one routing path associated with a best audio quality metric among a set of routing entities that have been previously redirected to, or
- (ii) continuing the communication session with VoIP parameters associated with the best audio quality metric among different configurations of VoIP parameters that have been previously applied.
A non-transitory computer-readable medium having stored thereon computer-readable instructions executable by a processor, in conjunction with a network, to perform operations which comprise:
- receiving, from a first end user, a communication request having a destination for a second end user to establish a communication session between the first end user and the second end user;
- determining a first routing path between the first end user and the second end user;
- establishing, in accordance with a set of VoIP parameters, the communication session via the first routing path;
- determining a first audio quality metric associated with a first plurality of VoIP data packets that are transmitted from the first end user via the first routing path during the communication session;
- redirecting, in response to determining that the first audio quality metric fails to satisfy the condition, a second plurality of VoIP data packets from the first end user through a second routing path while the communication session is ongoing;
- and
- in response to determining that one or more audio quality metrics corresponding to one or more calls that share a common carrier, a common Internet service provider, or a common route, redirecting the one or more calls via a different carrier, a different Internet service provider or a different route.
Dependencies are inferred from the claim text.