A method and system for analyzing simulated packet delay variation (PDV) using derivative PDV is disclosed. The delay-step method for simulating PDV determines a delay for each packet in a stream of packets generated at a regular interval. Delay target values are randomly selected based on a statistical distribution, such as a Gaussian distribution. Delay-steps are determined for each packet based on the delay target values. The delay-steps can be fixed or variable sized steps which are used to adjust the delay of sequential packets. PDV is generated by delaying each of the packets with the delay determined for that packet. The derivative PDV is calculated to evaluate a delay rate of change on a packet-by-packet basis. The derivative PDV can be used as a metric to specify stresses for adaptive packet timing recovery stress testing.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method comprising: generating, by a packet generator, a stream of packets, each packet generated at a regular interval; determining, by a packet delay variation (PDV) generator, a delay for each packet based on a series of randomly determined delay target values; generating, by the PDV generator, a packet delay variation (PDV) by delaying each packet with the delay determined for that packet; and calculating, by a packet receiver, a derivative PDV based on the generated PDV, wherein the derivative PDV value for each packet is determined based on a quotient of a difference between the delay of a current packet and the delay of a previous packet, and the interval for generating packets.
2. The method of claim 1 , wherein said step of calculating derivative PDV comprises: calculating a rate of change of the delay on a packet-by-packet basis.
3. The method of claim 1 , wherein said step of calculating derivative PDV comprises: calculating a derivative PDV value for each packet using the equation: D_PDV ( t ) = D n ( t ) - D n ( t - 1 ) τ , wherein D n (t) is the delay of a current packet, D n (t−1) is the delay of a previous packet, and τ is the regular interval for generating the packets.
4. The method of claim 1 , further comprising: generating, by the packet receiver, a histogram of the derivative PDV.
5. The method of claim 1 , further comprising: determining, by the packet receiver, delay stresses for adaptive packet timing recovery stress testing of a network based on the derivative PDV.
6. The method of claim 1 , wherein said step of determining a delay for each packet comprises: (a) selecting a random delay target value based on a probability density function (PDF); (b) adjusting the delay of sequential packets in said stream of packets by delay-steps determined based on the random delay target value, until the delay of a packet is equal to the random delay target value; and (c) repeating steps (a) and (b) to determine a delay value for each packet in said stream of packets.
7. The method of claim 6 , wherein step (b) comprises for each of said sequential packets: determining a difference between a current delay for the packet and the random delay target value; if the difference between the current delay for the packet and the random delay target value is negative, adjusting the current delay for the packet by a delay-step determined as a uniformly distributed value between 0 and a maximum step size; and if the difference between the current delay for the packet and the random delay target value is positive, adjusting the current delay for the packet by a delay-step determined as a uniformly distributed value between a minimum step size and 0.
8. The method of claim 6 , wherein step (b) comprises for each of said sequential packets: determining a difference between a current delay for the packet and the random delay target value; if the difference between the current delay for the packet and the random delay target value is negative, adjusting the current delay for the packet by a fixed positive delay-step; and if the difference between the current delay for the packet and the random delay target value is positive, adjusting the current delay for the packet by a fixed negative delay-step.
9. The method of claim 6 , wherein said PDF is a Gaussian PDF.
10. A system comprising: means for generating a stream of packets such that each packet is generated at a regular interval; means for determining a delay for each packet based on a series of randomly determined delay target values; means for generating packet delay variation (PDV) by delaying each packet with the delay determined for that packet; and means for calculating derivative PDV based on the generated PDV, wherein the derivative PDV value for each packet is determined based on a quotient of a difference between the delay of a current packet and the delay of a previous packet, and the interval for generating packets.
11. The system of claim 10 , wherein said means for calculating derivative PDV comprises: means for calculating a rate of change of the delay on a packet-by-packet basis.
12. The system of claim 10 , wherein said means for calculating derivative PDV comprises: means for calculating a derivative PDV value for each packet using the equation: D_PDV ( t ) = D n ( t ) - D n ( t - 1 ) τ , wherein D n (t) is the delay of a current packet, D n (t−1) is the delay of a previous packet, and τ is the regular interval for generating the packets.
13. The system of claim 10 , further comprising: means for generating a histogram of the derivative PDV.
14. The system of claim 10 , wherein said means for determining a delay for each packet comprises: means for selecting a random delay target value based on a probability density function (PDF); and means for adjusting the delay of sequential packets in said stream of packets by delay-steps determined based on the random delay target value, until the delay of a packet is equal to the random delay target value.
15. The system of claim 14 , wherein said means for adjusting comprises: means for determining a difference between a current delay for the packet and the random delay target value; and means for adjusting the current delay of the packet by a delay-step determined as a uniformly distributed value between a minimum step size and a maximum step size based on the difference between the current delay for the packet and the random delay target value.
16. The system of claim 14 , wherein said means for adjusting comprises: means for determining a difference between a current delay for the packet and the random delay target value; and means for adjusting the current delay of the packet by one of a fixed positive delay-step and a fixed negative delay-step based on the difference between the current delay for the packet and the random delay target value.
17. The system of claim 14 , wherein said PDF is a Gaussian PDF.
18. A computer readable medium storing computer executable instructions, said computer executable instructions defining steps comprising: generating a stream of packets, each packet generated at a regular interval; determining a delay for each packet based on a series of randomly determined delay target values; generating packet delay variation (PDV) by delaying each packet with the delay determined for that packet; and calculating derivative PDV based on the generated PDV, wherein the derivative PDV value for each packet is determined based on a quotient of a difference between the delay of a current packet and the delay of a previous packet, and the interval for generating packets.
19. The computer readable medium of claim 18 , wherein the computer executable instructions defining the step of calculating derivative PDV comprise computer readable instructions defining the step of: calculating a rate of change of the delay on a packet-by-packet basis.
20. The computer readable medium of claim 18 , wherein the computer executable instructions defining the step of calculating derivative PDV comprise computer readable instructions defining the step of: calculating a derivative PDV value for each packet using the equation: D_PDV ( t ) = D n ( t ) - D n ( t - 1 ) τ , wherein D n (t) is the delay of a current packet, D n (t−1) is the delay of a previous packet, and τ is the regular interval for generating the packets.
21. The computer readable medium of claim 18 , further comprising computer executable instructions defining the step of: generating a histogram of the derivative PDV.
22. The computer readable medium of claim 18 , further comprising computer executable instructions defining the step of: specifying delay stresses for adaptive packet timing recovery stress testing based on the derivative PDV.
23. The computer readable medium of claim 18 , wherein the computer executable instructions defining the step of determining a delay for each packet comprise computer executable instructions defining the steps of: (a) selecting a random delay target value based on a probability density function (PDF); (b) adjusting the delay of sequential packets in said stream of packets by delay-steps determined based on the random delay target value, until the delay of a packet is equal to the random delay target value; and (c) repeating steps (a) and (b) to determine a delay value for each packet in said stream of packets.
24. The computer readable medium of claim 23 , wherein the computer executable instructions defining step (b) comprise computer readable instructions defining the following steps for each of said sequential packets: determining a difference between a current delay for the packet and the random delay target value; if the difference between the current delay for the packet and the random delay target value is negative, adjusting the current delay for the packet by a delay-step determined as a uniformly distributed value between 0 and a maximum step size; and if the difference between the current delay for the packet and the random delay target value is positive, adjusting the current delay for the packet by a delay-step determined as a uniformly distributed value between a minimum step size and 0.
25. The computer readable medium of claim 23 , wherein the computer executable instructions defining step (b) comprise computer readable instructions defining the following steps for each of said sequential packets: determining a difference between a current delay for the packet and the random delay target value; if the difference between the current delay for the packet and the random delay target value is negative, adjusting the current delay for the packet by a fixed positive delay-step; and if the difference between the current delay for the packet and the random delay target value is positive, adjusting the current delay for the packet by a fixed negative delay-step.
26. A method comprising: generating, by a packet generator, a stream of packets, each packet generated at a regular interval; determining, by a packet delay variation (PDV) generator, a delay for each packet based on a series of randomly determined delay target values; generating, by the PDV generator, a packet delay variation (PDV) by delaying each packet with the delay determined for that packet; and calculating, by a packet receiver, a derivative PDV based on the generated PDV, wherein the derivative PDV value for each packet is determined using the equation: D_PDV ( t ) = D n ( t ) - D n ( t - 1 ) τ , wherein D n (t) is the delay of a current packet, D n (t−1) is the delay of a previous packet, and τ is the regular interval for generating the packets.
27. A system comprising: means for generating a stream of packets such that each packet is generated at a regular interval; means for determining a delay for each packet based on a series of randomly determined delay target values; means for generating packet delay variation (PDV) by delaying each packet with the delay determined for that packet; and means for calculating derivative PDV based on the generated PDV, wherein the derivative PDV value for each packet is determined using the equation: D_PDV ( t ) = D n ( t ) - D n ( t - 1 ) τ , wherein D n (t) is the delay of a current packet, D n (t−1) is the delay of a previous packet, and τ is the regular interval for generating the packets.
28. A computer readable medium storing computer executable instructions, said computer executable instructions defining steps comprising: generating, by a packet generator, a stream of packets, each packet generated at a regular interval; determining, by a packet delay variation (PDV) generator, a delay for each packet based on a series of randomly determined delay target values; generating, by the PDV generator, a packet delay variation (PDV) by delaying each packet with the delay determined for that packet; and calculating, by a packet receiver, a derivative PDV based on the generated PDV, wherein the derivative PDV value for each packet is determined using the equation: D_PDV ( t ) = D n ( t ) - D n ( t - 1 ) τ , wherein D n (t) is the delay of a current packet, D n (t−1) is the delay of a previous packet, and t is the regular interval for generating the packets.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
February 29, 2008
August 31, 2010
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.