<html><head><meta http-equiv="Content-Security-Policy" content="script-src 'self'; img-src * cid: data:;"><style id="outgoing-font-settings">#response_container_BBPPID{font-family: initial; font-size:initial; color: initial;}</style></head><body style="background-color: rgb(255, 255, 255); background-image: initial; line-height: initial;"><div id="response_container_BBPPID" style="outline:none;" dir="auto" contenteditable="false"> <div name="BB10" id="BB10_response_div_BBPPID" dir="auto" style="width:100%;"> I am not currently using any bandwidth limiting features so I can't comment on how it is done currently. However in the past I use the one built into Nginx and tested it with a download manager. My recollection is you could open more streams but the net effect was the download stayed at the same rate. I was impressed.</div><div name="BB10" id="BB10_response_div_BBPPID" dir="auto" style="width:100%;"><br></div><div name="BB10" id="BB10_response_div_BBPPID" dir="auto" style="width:100%;">I have gone to http2, so I don't know if the rate limiting features are still valid. </div>                                                                                                                                      <div name="BB10" id="response_div_spacer_BBPPID" dir="auto" style="width:100%;"> <br style="display:initial"></div> <div id="blackberry_signature_BBPPID" name="BB10" dir="auto">     <div id="_signaturePlaceholder_BBPPID" name="BB10" dir="auto"></div> </div></div><div id="_original_msg_header_BBPPID" dir="auto">                                                                                                                                             <table width="100%" style="background-color: white; border-spacing: 0px; display: table; outline: none;" contenteditable="false"><tbody><tr><td colspan="2" style="padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);">                           <div style="border-right: none; border-bottom: none; border-left: none; border-image: initial; border-top: 1pt solid rgb(181, 196, 223); padding: 3pt 0in 0in; font-family: Tahoma, "BB Alpha Sans", "Slate Pro"; font-size: 10pt;">  <div id="from"><b>From:</b> velychkovsky@gmail.com</div><div id="sent"><b>Sent:</b> November 11, 2019 10:50 AM</div><div id="to"><b>To:</b> nginx@nginx.org</div><div id="reply_to"><b>Reply-to:</b> nginx@nginx.org</div><div id="subject"><b>Subject:</b> Re: Per IP bandwidth limit</div></div></td></tr></tbody></table> <br> </div><!--start of _originalContent --><div name="BB10" dir="auto" style="background-image: initial; line-height: initial; outline: none;" contenteditable="false"><div dir="ltr"><span style="color:rgb( 28 , 30 , 41 );background:transparent;margin-top:0pt;margin-bottom:0pt">I have big data storage, some clients upload files to it, some download, some clients might upload a lot of small files in 100-200 parallel connections, but using only 20-30 mbit/s bandwidth, some clients can put big files in 10  parallel connections but using - 3Gbit/s bandwidth. The same situation with download. So, the first situation is normal behavior and I can't afford to limit connection number per IP, in the second case it's bandwidth overload, but I can't limit bandwidth per IP, because  <a href="</span><a style="background:transparent;margin-top:0pt;margin-bottom:0pt;color:rgb( 74 , 110 , 224 )" href="http://nginx.org/ru/docs/http/ngx_http_core_module.html#limit_rate" class="gmail-_e75a791d-denali-editor-page-rtfLink"><span style="background:transparent;margin-top:0pt;margin-bottom:0pt">http://nginx.org/ru/docs/http/ngx_http_core_module.html#limit_rate</span></a><span style="color:rgb( 28 , 30 , 41 );background:transparent;margin-top:0pt;margin-bottom:0pt">"> limit_rate</a> directive is working per request only.  In general case, I just need to limit bandwidth from 1 IP,  independently how many parallel TCP connections per IP used by client 10 or 100.</span><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">пн, 11 нояб. 2019 г. в 20:06, Peter Booth <<a href="mailto:peter_booth@me.com">peter_booth@me.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb( 204 , 204 , 204 );padding-left:1ex"><div>Why do you want to do this at all? <div>What is the real underlying problem that you are attempting to solve?</div><div><br></div><div><br><div><br><blockquote type="cite"><div>On Nov 11, 2019, at 8:29 AM, Kostya Velychkovsky <<a href="mailto:velychkovsky@gmail.com">velychkovsky@gmail.com</a>> wrote:</div><br><div><div dir="ltr"><div>I use Linux, and had a bad experience with Linux shaper (native kernel QoS mechanism - tc ), it consumed a lot of CPU and worked unstable. So I rejected the idea to keep using it. <br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">пн, 11 нояб. 2019 г. в 15:23, Christos Chatzaras <<a href="mailto:chris@cretaforce.gr">chris@cretaforce.gr</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb( 204 , 204 , 204 );padding-left:1ex"><br>
> On 11 Nov 2019, at 15:09, Kostya Velychkovsky <<a href="mailto:velychkovsky@gmail.com">velychkovsky@gmail.com</a>> wrote:<br>
> <br>
> Hello, is it the correct way to limit download/upload speed per client IP,  at the same time ignore how many connections it opens and request rate produced?<br>
> <br>
> I need just limit bandwidth for example  100 mbit/s per IP, and no matter it opens 1 connection or 100 simulation connections. <br>
> <br>
<br>
Maybe it's better to do this with firewall. For example in FreeBSD this can be done with IPFW + Dummynet.<br>
_______________________________________________<br>
nginx mailing list<br>
<a href="mailto:nginx@nginx.org">nginx@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx">http://mailman.nginx.org/mailman/listinfo/nginx</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><font size="2" face="monospace, monospace"><b>Best Regards </b></font><div><font size="2" face="monospace, monospace"><b><br></b></font></div><div><font size="2" face="monospace, monospace"><b>Kostiantyn Velychkovsky </b></font></div></div></div>
_______________________________________________<br>nginx mailing list<br><a href="mailto:nginx@nginx.org">nginx@nginx.org</a><br><a href="http://mailman.nginx.org/mailman/listinfo/nginx">http://mailman.nginx.org/mailman/listinfo/nginx</a></div></blockquote></div><br></div></div>_______________________________________________<br>
nginx mailing list<br>
<a href="mailto:nginx@nginx.org">nginx@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx">http://mailman.nginx.org/mailman/listinfo/nginx</a></blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><font size="2" face="monospace, monospace"><b>Best Regards </b></font><div><font size="2" face="monospace, monospace"><b><br></b></font></div><div><font size="2" face="monospace, monospace"><b>Kostiantyn Velychkovsky </b></font></div></div></div>
<!--end of _originalContent --></div></body></html>