Learn F5 Technologies, Get Answers & Share Community Solutions Join DevCentral


Questions and Answers

Loading... Loading...

Hi All,

Need your help to get answers for below 2 queries on rateclass implementation on LTM V 11.2


Q1] I have a virtual server 'A' on which I have a irule to redirect traffic to 2 other virtual servers 'B' and 'C' based on HTTP URI.
   On virtual server 'B' and 'C' , I have applied basic rateclass with base and ceiling rate of 50 Kbps and 800 Kbps respectively on Virtual Server B and

Virtual Server C.
   The traffic is getting to virtual servers 'B' and 'C' as required with iRule on server 'A' based on HTTP URI, however the rate class on 'B' and 'C' are    

not actually working to limit the bandwidth as required. Is there anything missing in the implementation?

Q2] Is the rateclass used to limit session per TCP Connection or rateclass actually limits the sum total of all sessions on VIP to rateclass?
 

Many Thanks in Advance

 

Regards

rajeshramhit@gmail.com


6 Answer(s):

1) Are you actually doing a HTTP redirect?
2) Per connection I believe.
Thanks Steve for your response

1) I am switch on HTTP::uri with virtual command to send traffic to different Virtual Server B or C

2) Do you mean that every TCP connection on the rate limited Virtual Server is getting bandwidth limited to rateclass applied? If Yes, then it actually doesnt solve the very purpose for which I am actually working on. I want to separate customers based on certain strings in URI and then limit each customer/client users to certain bandwidth so that my internet pipe is not choked by any single client users alone.

Any thoughts on alternatives for 2.

Regards
Rajesh
Thanks Steve for your response

1) I am using switch on HTTP::uri with virtual command to send traffic to different Virtual Server B or C

2) Do you mean that every TCP connection on the rate limited Virtual Server is getting bandwidth limited to rateclass applied? If Yes, then it actually doesnt solve the very purpose for which I am actually working on. I want to separate customers based on certain strings in URI and then limit each customer/client users to certain bandwidth so that my internet pipe is not choked by any single client users alone.

Any thoughts on alternatives for 2.

Regards
Rajesh
OK, I thought I'd read up on this just to be sure. It's still not 100% clear from this: http://support.f5.com/kb/en-us/products/big-ip_ltm/manuals/product/tmos-concepts-11-3-0/tmos_rateshaping.html?sr=26769961 - "A rate class defines the throughput limitations and packet scheduling method that you want the BIG-IP system to apply to all traffic that the rate class handles".

So, I read that as;
1) If you apply the RC via a Packet Filter (and nothing else) anything that matches is handled by the specified RC (it applies to all matching flows)
2) If you apply the RC via a VS (and nothing else) anything that uses that VS is handled by the specified RC (it applies to all combined flows handled by the VS)
3) If you apply the RC via an iRule (and nothing else) anything you specify in the iRule to use the RC does (this could be a single connection or a source subnet or whatever)

So, in your case I'd suggest go for 3) if you can identify the clients easily (by source IP hopefully). Hope this makes sense.
Hi Steve,

Actually we have hosting on internet so its not easy to identify the client ips given that most of the users are now mobile. The overall purpose for this project is to fit this in a charge back mechanism for client so that they guaranteed certain bandwidth and with some minimum burst size. so if on a VIP we set a RC of say 1 Mbps and say there are 10 concurrent users then each should get 100 Kbps for download but if users reduce to 5 then dynamically there bandwidth should increment to 200 Kbps. But this is not seem to be happening. If I set RC of 1Mbps all the users connecting to the VIP are getting a maximum of 1Mbps from the results I see.

I need to read through once again the complete artificat you have shared in the link. Will get back

Regards
Rajesh
Hmmm. That probably explains my initial thoughts that it was per connection. Hopefully someone else can comment. Regarding the client identification, what else could be used to uniquely ID a client? Hostname, URI, referrer?

Your answer:

You must be logged in to reply. You can login here.