<div dir="ltr">Key &quot;-q&quot; is recommended also. ;o)</div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Apr 12, 2015 at 9:01 PM, Sergey Safarov <span dir="ltr">&lt;<a href="mailto:s.safarov@gmail.com" target="_blank">s.safarov@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><span style="font-size:12.8000001907349px">1) But in your case, cyclictest can generate 336000 (42*8000) hardware timer irqs per second VS 8000 from TDM card&#39;s.</span><br></div><div><br></div><div>Very interest results.</div><div>My example creates a lot of unnecessary interruptions</div><div>For VoIP only host more correctly measured so</div><div>cyclictest -t42 -p -d 80 0 -n -i -l 5000 6000</div><div>or</div><div><div>cyclictest -t42 -p -d 80 0 -n -i -l 10000 3000</div></div><div><br></div><div>If FS has one TDM cards then</div><div><div>cyclictest -t1 -p -d 80 0 -n -i -l 125 240000<br></div><div><br></div><div>If two TDM cards </div><div><div>cyclictest -t2 -p -d 80 0 -n -i -l 125 240000<br></div></div><div><br></div><div>Where &quot;-t&quot; key equal number of TDM cards</div><div><br></div><div style="font-size:12.8000001907349px">2) According to Digium sources your TDM card have 20ms max buffer size(3ms default)</div><span class=""><div><span style="font-size:12.8000001907349px">USB dongles have at least 20 ms.</span></div><div><br></div></span><div>Can you describe how you have found this information. It is very interest.<span class="HOEnZb"><font color="#888888"><br></font></span></div><span class="HOEnZb"><font color="#888888"><div><br></div><div>Sergey</div><div><br></div></font></span></div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Apr 10, 2015 at 5:06 PM, Dmitry Lysenko <span dir="ltr">&lt;<a href="mailto:dvl36.ripe.nick@gmail.com" target="_blank">dvl36.ripe.nick@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span>2015-04-10 0:33 GMT+03:00 Sergey Safarov <span dir="ltr">&lt;<a href="mailto:s.safarov@gmail.com" target="_blank">s.safarov@gmail.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div style="font-size:12.8000001907349px">1) Most(if not all) of modern equipment have buffers. TDM cards too. Even $0.25 microcontrollers have buffers.</div><span><div style="font-size:12.8000001907349px">Firing interrupts at each PCM sample not needed.</div><div style="font-size:12.8000001907349px"><br></div></span></div><div>The problem is whether there is or not the buffer. Is exist in all the equipment.<br></div><div><div>The problem is the amount of buffer, and through any time it overflows. I thing you cannot say buffer size has TDM card and USB modems. :o)</div></div></div></blockquote><div> </div></span><div>According to Digium sources your TDM card have 20ms max buffer size(3ms default)</div><div>USB dongles have at least 20 ms.<br></div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div>The above i write results of testing Digium E1 card in virtual environment. Test that is successful on real host, will fail in virtual environment.</div><div>I you see source of timertest utility you will see that Digium test timer for 8000 samples for 1000 ms (1s). (Primary utility author Mark Spencer &lt;<a href="mailto:markster@digium.com" target="_blank">markster@digium.com</a>&gt;)</div><div>It is same value I recommend early.</div></div></div></blockquote></span><div><div><br></div><div><div><div>But in your case, cyclictest can generate 336000 (42*8000) hardware timer irqs per second VS 8000 from TDM card&#39;s.</div></div></div><div><br></div><div>Look:<br></div></div><div><div><div>root@debian:~# vmstat 1</div><div>procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----</div><div> r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa</div><div> 0  0      0   2348  85428  21156    0    0   134     0 1856 3409  1  2 92  5</div><div> 0  0      0   2320  85428  21156    0    0     0     0  106  224  1  0 99  0</div><div>[similar, skipped]<br></div><div> 0  0      0   2312  85436  21156    0    0     0     0  110  231  0  0 100  0<br></div><div> 0  0      0   2312  85436  21156    0    0     0     0  109  225  0  2 98  0</div><div>45  0      0   1924  84908  21156    0    0     0     0 102909 146412  0 60 39  0</div></div><div>Starting of cyclictest with your parameters ^^^^^.</div><div><br></div><div>102909 interrupts and 146412 context switches per second.</div><div>For one TDM card there should be slightly more then 8000 of interrupts.</div><div><br></div><div>Results:</div><div><br></div><div>root@debian:~/rt-tests# ./cyclictest -t42 -p 80 <b>-d 0</b> -n -i 125 -l 240000 -q<br></div></div><div>WARN: stat /dev/cpu_dma_latency failed: No such file or directory</div><div>T: 0 ( 4028) P:80 I:125 C: 239821 Min:      0 Act:100534 Avg:38764 Max:  229794</div><div>T: 1 ( 4029) P:80 I:125 C: 239820 Min:      0 Act:100536 Avg:39646 Max:  233558</div><div>T: 2 ( 4030) P:80 I:125 C: 240000 Min:      0 Act:100478 Avg:37947 Max:  229143</div><div>T: 3 ( 4031) P:80 I:125 C: 240000 Min:      0 Act:106202 Avg:38130 Max:  239031</div><div>[similar,skipped]<br></div><div>T:38 ( 4066) P:80 I:125 C: 239821 Min:      1 Act:100292 Avg:41273 Max:  238424<br></div><div>T:39 ( 4067) P:80 I:125 C: 239822 Min:      0 Act:100174 Avg:40254 Max:  238881</div><div>T:40 ( 4068) P:80 I:125 C: 239816 Min:      0 Act:100650 Avg:39910 Max:  239104</div><div>T:41 ( 4069) P:80 I:125 C: 239817 Min:      0 Act:100526 Avg:38282 Max:  224452</div><div>root@debian:~/rt-tests#<br></div><div><br></div><div>Increased intervals between threads:</div><div><br></div><div>root@debian:~/rt-tests# ./cyclictest -t42 -p 80 <b>-d 40</b> -n -i 125 -l 240000 -q<br></div><div><div>WARN: stat /dev/cpu_dma_latency failed: No such file or directory</div><div>T: 0 ( 4203) P:80 I:125 C: 240000 Min:      1 Act:   35 Avg:   28 Max:     159</div><div>T: 1 ( 4204) P:80 I:165 C: 181909 Min:      6 Act:   47 Avg:   29 Max:     170</div><div>T: 2 ( 4205) P:80 I:205 C: 146417 Min:      6 Act:   15 Avg:   29 Max:     157</div><div>T: 3 ( 4206) P:80 I:245 C: 122512 Min:      6 Act:   33 Avg:   30 Max:     166</div><div>[similar,skipped]<br></div><div>T:38 ( 4241) P:80 I:1645 C:  18246 Min:      7 Act:   27 Avg:   34 Max:     167<br></div><div>T:39 ( 4242) P:80 I:1685 C:  17813 Min:      8 Act:   13 Avg:   34 Max:     164</div><div>T:40 ( 4243) P:80 I:1725 C:  17398 Min:      7 Act:   22 Avg:   33 Max:     156</div><div>T:41 ( 4244) P:80 I:1765 C:  17004 Min:      8 Act:   49 Avg:   34 Max:     141</div><div><div>root@debian:~/rt-tests#<br></div><div><br></div><div>Huge difference, isn&#39;t it?<br></div><div><br></div></div></div><span><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div></div><div><div style="font-size:12.8000001907349px">2) If you want massive sync audio processing (w/o buffering) you can use hard realtime OS. PC and Linux (even on bare metal) is not suitable for this, at least without RT patched kernel.</div></div><div> <br></div><div>I am not understanding about you speaking. E1 card can be used on real host without problems.</div></div></div></blockquote><div><br></div></span><div><div>They use buffering. Delays of 125uS is not uncommon in ordinary Linux kernel. BTW, google &quot;system management interrupt&quot;.<br></div></div><span><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div></div><div>3) <span style="font-size:12.8000001907349px">AFAIR, 1 thread per call leg, but depends of endpoints. Most of time threads in I/O waiting/sleeping and encoding/decoding state.</span></div><div><br></div><div>One thread per FS call, equal one thread cyclictest. In cyclictest most time threads sleep also. This threads measure time interval and sleep again.</div></div></div></blockquote><div><br></div></span><div>In Freeswitch all of threads are not waking up every 125uS synchronously. .And TDM cards are not generating tens/hundreds of thousands interrupts per second as cyclictest can do.<br></div><div><br></div><div><div>IMO, to simulate something like 1 TDM E1 card using cyclictest you should use parameters that give you additional ~8000 irqs.<br></div><div><br></div><div><div>root@debian:~# vmstat 1</div><div>procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----</div><div> r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa</div><div> 0  0      0   3496  84304  21156    0    0    45     0  999  562  1  1 97  2</div><div> 0  0      0   3496  84304  21156    0    0     0     0  105  222  0  0 100  0</div><div> 0  0      0   2784  84304  21156    0    0     0     0 4276 8482  2 15 83  0</div><div> 0  0      0   2784  84304  21156    0    0     0     0 8705 17146  2 35 63  0</div><div> 0  0      0   2784  84304  21156    0    0     0     0 8678 17099  3 33 64  0</div><div> 0  0      0   2784  84304  21156    0    0     0     0 8707 17135  2 37 61  0</div></div></div><div><br></div><div>In my case additional 8000 irqs with these parameters:</div><div><br></div><div><div>root@debian:~/rt-tests# ./cyclictest  -t 30 -p 80 -d 30 -n -i 3000 -l 24000 -q</div><div>WARN: stat /dev/cpu_dma_latency failed: No such file or directory</div><div>T: 0 ( 5862) P:80 I:3000 C:  24000 Min:      7 Act:    9 Avg:    9 Max:      33</div><div>T: 1 ( 5863) P:80 I:3030 C:  23767 Min:      6 Act:   17 Avg:    8 Max:      49</div><div>T: 2 ( 5864) P:80 I:3060 C:  23534 Min:      6 Act:   12 Avg:    8 Max:      45</div><div>[same,skipped]</div><div>T:26 ( 5888) P:80 I:3780 C:  19051 Min:      7 Act:    8 Avg:    9 Max:      35<br></div><div>T:27 ( 5889) P:80 I:3810 C:  18901 Min:      7 Act:   11 Avg:    8 Max:      40</div><div>T:28 ( 5890) P:80 I:3840 C:  18754 Min:      7 Act:   14 Avg:    8 Max:      39</div><div>T:29 ( 5891) P:80 I:3870 C:  18608 Min:      7 Act:   14 Avg:    8 Max:      36</div></div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div><div style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px"></span></div><div style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">6) In your case, most capable realtime hypervisor with RT_PREEMPT guest would be one of the best solution.</span><br></div><span style="font-size:12.8000001907349px"><font color="#888888"></font></span><div><br></div><div>May be. According this publication (<a href="http://www.linux-kvm.org/wiki/images/0/03/KVM-Forum-2011-RT-KVM.pdf" target="_blank">http://www.linux-kvm.org/wiki/images/0/03/KVM-Forum-2011-RT-KVM.pdf</a>) guest threads can be interrupted not more 112 uS.</div></div><div><br></div><div>Simple solution - for TDM card enough ordinary processor without virtualization. :o)</div></div></div></blockquote><div><br></div></span><div>This is a best solution.</div><div><div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div><div><div class="gmail_extra"><div class="gmail_quote">On Thu, Apr 9, 2015 at 8:09 PM, Dmitry Lysenko <span dir="ltr">&lt;<a href="mailto:dvl36.ripe.nick@gmail.com" target="_blank">dvl36.ripe.nick@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span>2015-04-08 15:25 GMT+03:00 Sergey Safarov <span dir="ltr">&lt;<a href="mailto:s.safarov@gmail.com" target="_blank">s.safarov@gmail.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div style="font-size:12.8000001907349px">1) 125uS is the interval between FrameSync of ONE(!) PCM sample at 8000hz,</div><span><div style="font-size:12.8000001907349px">But here we are talking about packet telephony where commonly used frame length is 20000 uS.</div><div style="font-size:12.8000001907349px">So, intervals for testing should be 5000-10000-20000uS, not 125uS.</div></span></div><div style="font-size:12.8000001907349px"><br></div><div>Not all FS installation has SIP endpoint. Some can have TDM cards, USB dongle and other analog equipment. Can you say what is length of this frame type?</div><div>I am wondering about this question. I know that the frame 125ms is enough.</div></div></blockquote></span><div><div><br></div><div>Most(if not all) of modern equipment have buffers. TDM cards too. Even $0.25 microcontrollers have buffers.</div><div>Firing interrupts at each PCM sample not needed.</div><div>If you want massive sync audio processing (w/o buffering) you can use hard realtime OS. PC and Linux (even on bare metal) is not suitable for this, at least without RT patched kernel.</div></div><span><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div style="font-size:12.8000001907349px">2) Why you decided that all of 42 threads should wake up simultaneously?</div><span><div style="font-size:12.8000001907349px">That totally impossible in real world applications.</div><div style="font-size:12.8000001907349px">Here should be tens of uS. Dependent of network card and, possibly, other I/O hardware.</div><div><br></div></span><div>Can you say how many FS create threads for 40-50 active calls?</div></div></div></blockquote><div><br></div></span><div><div><br></div><div>AFAIR, 1 thread per call leg, but depends of endpoints. Most of time threads in I/O waiting/sleeping and encoding/decoding state.</div></div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div></div><div>3) -q switch is missing</div><div>I am thinking it is optional. Result is same</div></div></div></blockquote><div> </div></span><div>Dynamic output to screen consumes resources. How much, depends on method.(VGA, Serial console, SSH). In my case difference is significiant. So, fair testing should exclude such things, IMO.</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div></div><div>4) <span style="font-size:12.8000001907349px">Precise time measurement and realtime processing in VM environment  is a challenge. </span></div><span><div style="font-size:12.8000001907349px">To obtain acceptable results fine tuning of host&#39;s and guest&#39;s  required.</div><div style="font-size:12.8000001907349px">WIthout that this numbers ... does not mean anything.</div><div><br></div></span><div>Can you learn me how to correctly measure timer source quality in VM?</div></div></div></blockquote><div> </div></span><div>Serious players, as Wind River, use external timer.</div><div><br></div><div>In your case, most capable realtime hypervisor with RT_PREEMPT guest would be one of the best solution.<span><font color="#888888"><br></font></span></div><span><font color="#888888"><div><br></div><div>Dmitry.</div></font></span><div><div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div><div><div class="gmail_extra"><div class="gmail_quote">On Wed, Apr 8, 2015 at 2:07 PM, Dmitry Lysenko <span dir="ltr">&lt;<a href="mailto:dvl36.ripe.nick@gmail.com" target="_blank">dvl36.ripe.nick@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2015-04-07 10:48 GMT+03:00 Sergey Safarov <span dir="ltr">&lt;<a href="mailto:s.safarov@gmail.com" target="_blank">s.safarov@gmail.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><span><div>...</div></span><span><div>2) i 125 - time us between software timer interrupts for first thread. It time is equal time between samples rate in PSTN networks</div><div><span style="color:rgb(0,0,0);font-family:&#39;Times New Roman&#39;;font-size:medium">In order to maintain our sampling rate we have 125 microseconds (uS) between consecutive samples (1/8,000Hz), which is more</span></div></span></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><span style="color:rgb(0,0,0);font-family:&#39;Times New Roman&#39;;font-size:medium">...</span></div></div></blockquote><div><br></div><div>125uS is the interval between FrameSync of ONE(!) PCM sample at 8000hz,</div><div>But here we are talking about packet telephony where commonly used frame length is 20000 uS.</div><div>So, intervals for testing should be 5000-10000-20000uS, not 125uS.</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div>3) d 0 - this switch will make time between software timer interrupts for second and following threads is equal timer value for first thread</div></div></blockquote><div><br></div></span><div>Why you decided that all of 42 threads should wake up simultaneously?</div><div>That totally impossible in real world applications.</div><div>Here should be tens of uS. Dependent of network card and, possibly, other I/O hardware. </div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div></div><div>4) l 240000 - how many timer test must be made. It is adjusted for 30 s overall test</div><div>5) n - use clock_nanosleep. it is allow take more accurate timer test values on my VM<br></div><div>6) p 80 - it is copied from example on Cyclictest page</div></div></blockquote><div><br></div></span><div>-q switch is missing.</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><span><div>And how in your opinion this numbers are related to Freeswitch in VM environment?<br></div></span><div>Relation between Cyclictest switches and FS described above.</div><div>Relation betwen Cyclictest results and FS simple</div></div></blockquote><div><br></div></span><div>Precise time measurement and realtime processing in VM environment  is a challenge. </div><div>To obtain acceptable results fine tuning of host&#39;s and guest&#39;s  required.</div><div>WIthout that this numbers ... does not mean anything.</div><div><div><div> <br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div><div><div class="gmail_extra"><div class="gmail_quote">On Tue, Apr 7, 2015 at 5:38 AM, Dmitry Lysenko <span dir="ltr">&lt;<a href="mailto:dvl36.ripe.nick@gmail.com" target="_blank">dvl36.ripe.nick@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Sergey,<div><div>Why you suggest to use exactly this numbers in cyclictest&#39;s switches?</div><div>And how in your opinion this numbers are related to Freeswitch in VM environment?</div><div><br></div><div>P.S. <a href="https://mindlinux.wordpress.com/2013/10/25/using-and-understanding-the-real-time-cyclictest-benchmark-frank-rowand-sony/" target="_blank">https://mindlinux.wordpress.com/2013/10/25/using-and-understanding-the-real-time-cyclictest-benchmark-frank-rowand-sony/</a><br></div></div></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">2015-04-06 15:27 GMT+03:00 Sergey Safarov <span dir="ltr">&lt;<a href="mailto:s.safarov@gmail.com" target="_blank">s.safarov@gmail.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Errol can you test VM timer with utility <a href="https://rt.wiki.kernel.org/index.php/Cyclictest" target="_blank">https://rt.wiki.kernel.org/index.php/Cyclictest</a><br><div><br></div><div>My VM currently have folowing results</div><div><pre>[root@fs1 ~]#  date &amp;&amp; /tmp/rt-tests/cyclictest -t42 -p 80 -d 0 -n -i 125 -l 240000 &amp;&amp; date
Sun Apr  5 07:01:31 GMT 2015
# /dev/cpu_dma_latency set to 0us
policy: fifo: loadavg: 2.38 0.93 0.50 1/194 1574           

T: 0 ( 1531) P:80 I:125 C: 240000 Min:      2 Act:   12 Avg:   16 Max:    1302
T: 1 ( 1532) P:80 I:125 C: 240000 Min:      2 Act:   15 Avg:   14 Max:    2895
T: 2 ( 1533) P:80 I:125 C: 240000 Min:      3 Act:   10 Avg:   12 Max:    2888
T: 3 ( 1534) P:80 I:125 C: 240000 Min:      1 Act:   16 Avg:   13 Max:    1333
T: 4 ( 1535) P:80 I:125 C: 240000 Min:      2 Act:   20 Avg:   14 Max:    2962
T: 5 ( 1536) P:80 I:125 C: 240000 Min:      1 Act:   12 Avg:   14 Max:    2946
T: 6 ( 1537) P:80 I:125 C: 240000 Min:      2 Act:   10 Avg:   13 Max:    1363
T: 7 ( 1538) P:80 I:125 C: 240000 Min:      2 Act:   12 Avg:   13 Max:    1344
T: 8 ( 1539) P:80 I:125 C: 240000 Min:      3 Act:   12 Avg:   16 Max:    1408
T: 9 ( 1540) P:80 I:125 C: 240000 Min:      1 Act:    8 Avg:   13 Max:    2882
T:10 ( 1541) P:80 I:125 C: 239974 Min:      2 Act:   12 Avg:   13 Max:    2908</pre></div></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 6, 2015 at 11:15 AM, Errol Samuels <span dir="ltr">&lt;<a href="mailto:ewsamuels@gmail.com" target="_blank">ewsamuels@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div><div>Good job and Thanks for sharing!<br></div><div><br><blockquote style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex" class="gmail_quote">KVM at <span><a href="http://digitalocean.com" target="_blank">digitalocean.com</a></span>, Debian 7 64bit, FreeSWITCH 1.4.15: <span style="color:rgb(255,0,0)">bad precision</span></blockquote><div> </div></div>As someone who has been using KVM for a few years and has just migrated about 20 VMs across to Digital Ocean about 6 weeks ago I admit I am a little concerned about this finding.<br><br></div>Just out of curiosity can you tell me the specs of the VM that you tested with and which DO Datacenter?  I am using NYC3 so perhaps and I will do some tests as soon as I have some time.<br><br></div>With regards to Xen was this at Linode or inhouse?<br><br><div>Thanks<span><font color="#888888"><br><br></font></span></div><span><font color="#888888"><div>Errol<br><br></div><div><br></div></font></span></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Apr 5, 2015 at 1:37 AM, Stanislav Sinyagin <span dir="ltr">&lt;<a href="mailto:ssinyagin@gmail.com" target="_blank">ssinyagin@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">here we go:<br>
<a href="https://txlab.wordpress.com/2015/04/05/testing-rtp-clock-precision-on-a-virtual-machine/" target="_blank">https://txlab.wordpress.com/2015/04/05/testing-rtp-clock-precision-on-a-virtual-machine/</a><br>
<div><div><br>
<br>
<br>
On Sat, Apr 4, 2015 at 4:26 PM, Stanislav Sinyagin &lt;<a href="mailto:ssinyagin@gmail.com" target="_blank">ssinyagin@gmail.com</a>&gt; wrote:<br>
&gt; On Sat, Apr 4, 2015 at 1:03 PM, Regis M &lt;<a href="mailto:regis.freeswitch.org@tornad.net" target="_blank">regis.freeswitch.org@tornad.net</a>&gt; wrote:<br>
&gt;&gt; How do you check wavs together in audacity ?<br>
&gt;<br>
&gt; you just open two WAV files, align their starting position, and<br>
&gt; visually check the waves. If there&#39;s a problem, you would see that<br>
&gt; after few seconds, the waves are not aligned any more.<br>
&gt;<br>
&gt;&gt; Can you send me 2 samples wav (send... and recorded) so I could see the 20ms<br>
&gt;&gt; diff that you exposed...<br>
&gt;&gt;<br>
&gt;&gt; Is there a way to automate the result checking, so it could help to monitor<br>
&gt;&gt; itsp quality<br>
&gt;<br>
&gt; Here<br>
&gt; <a href="https://github.com/openpreserve/scape-xcorrsound/issues/17" target="_blank">https://github.com/openpreserve/scape-xcorrsound/issues/17</a><br>
&gt; this is a link to a tool which compares two sound files at the wave<br>
&gt; level. You can also see the sound samples in the ticket.<br>
&gt; The problem is, that currently this tool does not detect such slipping frames.<br>
&gt;<br>
&gt; I will also write a detailed article with examples, during the weekend.<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; 2015-04-04 12:53 GMT+02:00 Stanislav Sinyagin &lt;<a href="mailto:ssinyagin@gmail.com" target="_blank">ssinyagin@gmail.com</a>&gt;:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Important is to send the media through two independent carriers - then you<br>
&gt;&gt;&gt; can be sure that your clock is compared against a high quality one.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; On Apr 4, 2015 12:46 PM, &quot;Regis M&quot; &lt;<a href="mailto:regis.freeswitch.org@tornad.net" target="_blank">regis.freeswitch.org@tornad.net</a>&gt;<br>
&gt;&gt;&gt; wrote:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Hi,<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; It&#39;s a very interresting test and conclusion.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I will try to build a similar environnement on my freeswitch to check<br>
&gt;&gt;&gt;&gt; some system :)<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; thanks<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; 2015-04-04 2:16 GMT+02:00 Stanislav Sinyagin &lt;<a href="mailto:ssinyagin@gmail.com" target="_blank">ssinyagin@gmail.com</a>&gt;:<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; hi,<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Here are some test results which might be interesting:<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; I&#39;ve set up a test FreeSWITCH server at digitalocean (they use KVM),<br>
&gt;&gt;&gt;&gt;&gt; and originated test calls to some ITSP accounts. Each call played a<br>
&gt;&gt;&gt;&gt;&gt; test sound file (voice samples from ITU:<br>
&gt;&gt;&gt;&gt;&gt; <a href="http://www.itu.int/net/itu-t/sigdb/genaudio/AudioForm-g.aspx?val=1000050" target="_blank">http://www.itu.int/net/itu-t/sigdb/genaudio/AudioForm-g.aspx?val=1000050</a><br>
&gt;&gt;&gt;&gt;&gt; ), and on the receiving end another FreeSWITCH server was recording<br>
&gt;&gt;&gt;&gt;&gt; the received session. The receiving server was on a XEN VM. Both<br>
&gt;&gt;&gt;&gt;&gt; servers talked G711 to their corresponding ITSP accounts.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Then I compared the source audio and received audio in Audacity editor.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; The tests showed that the received voice wave shifts 20ms from the<br>
&gt;&gt;&gt;&gt;&gt; original sound every few seconds, randomly back and forward. This<br>
&gt;&gt;&gt;&gt;&gt; skewing was always present, regardless of ITSP and time of day.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Then I moved the sending server to a XEN VM, and the waves appeared<br>
&gt;&gt;&gt;&gt;&gt; almost perfectly synchronized (there was a 5ms skew in one test, and I<br>
&gt;&gt;&gt;&gt;&gt; guess it&#39;s related to transcoding buffer, as the sound was obviously<br>
&gt;&gt;&gt;&gt;&gt; transcoded).<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; The effect was always visible with a 30-second sample, and I also made<br>
&gt;&gt;&gt;&gt;&gt; additional tests with 2-minute samples.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; It would also be interesting to test this from a VmWare VM. If someone<br>
&gt;&gt;&gt;&gt;&gt; wants to run such a test, feel free to contact me directly.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; cheers,<br>
&gt;&gt;&gt;&gt;&gt; stan<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; _________________________________________________________________________<br>
&gt;&gt;&gt;&gt;&gt; Professional FreeSWITCH Consulting Services:<br>
&gt;&gt;&gt;&gt;&gt; <a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
&gt;&gt;&gt;&gt;&gt; <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Official FreeSWITCH Sites<br>
&gt;&gt;&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt;&gt;&gt;&gt; <a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
&gt;&gt;&gt;&gt;&gt; <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; FreeSWITCH-users mailing list<br>
&gt;&gt;&gt;&gt;&gt; <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
&gt;&gt;&gt;&gt;&gt; <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
&gt;&gt;&gt;&gt;&gt; UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
&gt;&gt;&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; _________________________________________________________________________<br>
&gt;&gt;&gt;&gt; Professional FreeSWITCH Consulting Services:<br>
&gt;&gt;&gt;&gt; <a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
&gt;&gt;&gt;&gt; <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Official FreeSWITCH Sites<br>
&gt;&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt;&gt;&gt; <a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
&gt;&gt;&gt;&gt; <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; FreeSWITCH-users mailing list<br>
&gt;&gt;&gt;&gt; <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
&gt;&gt;&gt;&gt; <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
&gt;&gt;&gt;&gt; UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
&gt;&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; _________________________________________________________________________<br>
&gt;&gt;&gt; Professional FreeSWITCH Consulting Services:<br>
&gt;&gt;&gt; <a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
&gt;&gt;&gt; <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Official FreeSWITCH Sites<br>
&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt;&gt; <a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
&gt;&gt;&gt; <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; FreeSWITCH-users mailing list<br>
&gt;&gt;&gt; <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
&gt;&gt;&gt; <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
&gt;&gt;&gt; UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; _________________________________________________________________________<br>
&gt;&gt; Professional FreeSWITCH Consulting Services:<br>
&gt;&gt; <a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
&gt;&gt; <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
&gt;&gt;<br>
&gt;&gt; Official FreeSWITCH Sites<br>
&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt; <a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
&gt;&gt; <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
&gt;&gt;<br>
&gt;&gt; FreeSWITCH-users mailing list<br>
&gt;&gt; <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
&gt;&gt; <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
&gt;&gt; UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br>
_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
</div></div></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div></div></div><br></div></div>
<br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div></div></div><br></div></div>
<br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div></div></div><br></div></div>
<br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div></blockquote></div><br></div>