<p dir="ltr">Hi Tony,</p>
<p dir="ltr">This is, in fact, exactly what I'm doing. Once I do the cookie exchange, I rate limit based on IP using the normal token bucket networking stuff.</p>
<p dir="ltr">The issue is that, like DTLS and IKE, I'm using UDP, so IPs can be spoofed. The goal of this is to prevent IP spoofing in a way superior to TCP/SCTP and DTLS/IKE. Then, once I've attributed an IP address, I do the rate limiting.</p>
<p dir="ltr">Jason</p>
<div class="gmail_quote">On Jan 9, 2016 8:38 PM, "Tony Arcieri" <<a href="mailto:bascule@gmail.com">bascule@gmail.com</a>> wrote:<br type="attribution"><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">On Sat, Jan 9, 2016 at 11:34 AM, Tony Arcieri <span dir="ltr"><<a href="mailto:bascule@gmail.com" target="_blank">bascule@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 dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>There's something a lot simpler you can do though... you can detect the attack, and rate limit your responses by IP address.</div></div></div></div></blockquote><div><br></div><div>That is to say:</div><div><br></div><div>We have an attack detector. It sees a flood coming from IP address X.</div><div><br></div><div>We now flip on a rate limiter for IP address X. We pick a limit... say N requests per second, and if IP address X sends more than N requests per second, we simply drop them. </div></div><div><br></div>-- <br><div>Tony Arcieri<br></div>
</div></div>
</blockquote></div>