Hi Guys,

Have we given thought about other IO scheduling algorithms like mclock 
algorithm [1], used by vmware for their QOS solution.
Plus another point to keep in mind here is the distributed nature of the 
solution. Its easier to think of a brick
controlling the throughput for a client or a tenant. But how would this work in 
collaboration and scale with all the
bricks together, what I am talking about is Distributed QOS.

Regards,
Joe

[1] http://www.gluster.org/community/documentation/index.php/File:Qos.odp

----- Original Message -----
From: "Venky Shankar" <vshan...@redhat.com>
To: "Raghavendra Gowdappa" <rgowd...@redhat.com>
Cc: "Gluster Devel" <gluster-devel@gluster.org>
Sent: Thursday, September 10, 2015 12:16:41 PM
Subject: Re: [Gluster-devel] FOP ratelimit?

On Thu, Sep 3, 2015 at 11:36 AM, Raghavendra Gowdappa
<rgowd...@redhat.com> wrote:
>
>
> ----- Original Message -----
>> From: "Emmanuel Dreyfus" <m...@netbsd.org>
>> To: "Raghavendra Gowdappa" <rgowd...@redhat.com>, "Pranith Kumar Karampuri" 
>> <pkara...@redhat.com>
>> Cc: gluster-devel@gluster.org
>> Sent: Wednesday, September 2, 2015 8:12:37 PM
>> Subject: Re: [Gluster-devel] FOP ratelimit?
>>
>> Raghavendra Gowdappa <rgowd...@redhat.com> wrote:
>>
>> > Its helpful if you can give some pointers on what parameters (like
>> > latency, throughput etc) you want us to consider for QoS.
>>
>> Full blown QoS would be nice, but a first line of defense against
>> resource hogs seems just badly required.
>>
>> A bare minimum could be to process client's FOP in a round robin
>> fashion. That way even if one client sends a lot of FOPs, there is
>> always some window for others to slip in.
>>
>> Any opinion?
>
> As of now we depend on epoll/poll events informing servers about incoming 
> messages. All sockets are put in the same event-pool represented by a single 
> poll-control fd. So, the order of our processing of msgs from various clients 
> really depends on how epoll/poll picks events across multiple sockets. Do 
> poll/epoll have any sort of scheduling? or is it random? Any pointers on this 
> are appreciated.

I haven't come across any kind of scheduling for picking events for
sockets. Routers use synthetic throttling for traffic shaping. Most
commonly used technique is by using TBF (token bucket filter) to
"induce" latency for outbound traffic. Lustre had some work[1] done
for QoS along the lines of TBF.

HTH.

[1]: http://cdn.opensfs.org/wp-content/uploads/2014/10/7-DDN_LiXi_lustre_QoS.pdf

>
>>
>> --
>> Emmanuel Dreyfus
>> http://hcpnet.free.fr/pubz
>> m...@netbsd.org
>>
> _______________________________________________
> Gluster-devel mailing list
> Gluster-devel@gluster.org
> http://www.gluster.org/mailman/listinfo/gluster-devel
_______________________________________________
Gluster-devel mailing list
Gluster-devel@gluster.org
http://www.gluster.org/mailman/listinfo/gluster-devel
_______________________________________________
Gluster-devel mailing list
Gluster-devel@gluster.org
http://www.gluster.org/mailman/listinfo/gluster-devel

Reply via email to