<div dir="ltr">There are two buffers here. The kernel has a buffer and the Erlang VM has a buffer. You are setting the Erlang VMs buffers only. If the kernels buffer fills up, it drops packets, because it is allowed to do so with UDP (UDP is not reliable). Linux doesn't have too many easy ways to see this. But you can do netstat -c --udp -an and watch for large recv-q's.</div>

<div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jul 30, 2014 at 9:09 PM, Lee Sylvester <span dir="ltr"><<a href="mailto:lee.sylvester@gmail.com" target="_blank">lee.sylvester@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">Thanks.  How does that make a difference over setting it in the app, though?<div><br>

</div><div>Thanks,</div><div>Lee</div><div><div class="h5"><div><br></div><div><br><div><div>On 30 Jul 2014, at 20:06, Max Lapshin <<a href="mailto:max.lapshin@gmail.com" target="_blank">max.lapshin@gmail.com</a>> wrote:</div>

<br><blockquote type="cite"><div dir="ltr"><div class="gmail_extra">I've spent lot of time to make capturing of 600 mbit/s of udp traffic without loss.</div><div class="gmail_extra"><br></div><div class="gmail_extra">

Don't specify buffer size in erlang, use system variables.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div><div class="gmail_extra"><pre style="font-family:Menlo,Monaco,Consolas,'Courier New',monospace;font-size:13px;white-space:pre-wrap;padding:15px 30px;margin-top:0px;margin-bottom:30px;line-height:18.571430206298828px;color:rgb(51,51,51);word-break:break-all;word-wrap:break-word;border:1px solid rgb(191,191,191)">

<code style="font-family:Menlo,Monaco,Consolas,'Courier New',monospace;font-size:inherit;padding:0px;color:inherit;border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;background-color:transparent"><br>



sysctl -w net.core.rmem_max=1048576
sysctl -w net.core.rmem_default=1048576
sysctl -w net.ipv4.udp_mem="8388608 12582912 16777216"</code></pre></div></div>
</blockquote></div><br></div></div></div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>J.
</div>