Previous Next

Guls Byte

Currently Being Moderated

FAST 09: Congestion aware NFS paper

Posted by Ajay Gulati on Apr 2, 2009 2:01:32 PM

This paper was presented by Alexandros from NetApp. The main idea is to adaptively schedule asynchronous requests in order to favor synchronous ones to improve application's performance. For example, when the server is congested, the clients would delay asynchronous writes, read-ahead and send only the reads, metadata requests to the server. This obviously requires the client to consume more memory to keep those dirty pages for longer interval. To handle the pressure on other resources, authors propose a mechanism that can look at utilization of all resources, assign a cost to them and compare those to make such decisions.

The main issue is deciding the cost of an operation based on multiple resources.
They use a previously known result which says that increasing the price exponentially with increase in utilization of a resource leads to a competitive ratio of (log k), where k is the ratio of benefit obtained by and offline vs an online algorithm. They use the pricing function that takes a number K_i per resource and utilization u_i to compute the price. The price is computed for each resource based on its utilization and the highest value is used to depict the current bottleneck. The price calculated by server is sent to clients as part of FSSTAT call. The prices are computed every second and FSSTAT is send along with every tenth read/write request. This is a non-blocking call and doesn't impact clients' performance.
Finally they showed using both micro-benchmarks and real apps that this can lead to about 20% better performance.

 

Here is something to chew : Can we extend this mechanism to provide prioritization among different clients, in terms of proportionate shares or weights?  

http://www.usenix.org/events/fast09/tech/full_papers/batsakis/batsakis.pdf

1,635 Views Tags: storage, fast, nfs, congestion, netapp


Apr 3, 2009 4:21 PM irfan irfan    says:

Here is something to chew : Can we extend

this mechanism to provide prioritization among

different clients, in terms of proportionate shares or weights?

 

That's a very interesting question. My guess is yes.

 

Shouldn't one just do a proportional weight on the price of the resource?

 

Apr 8, 2009 4:01 PM Ajay Gulati Ajay Gulati    says in response to irfan:

That seem plausible, but it's not quite clear if the particular pricing function the authors are using can be easily modified to make prices proportional to the weights of clients. First the current competitive ratio may not hold and second, proportional pricing may or may not lead to proportional sharing of resources. It may cause strict priority among clients because clients with higher shares may always win the pricing battle. This is my current intuition, will look more deeply and try to design an example to test your proposal.

Ajay Gulati

Ajay Gulati

Member since: Jan 22, 2009

Tech previews of breakthroughs in computing technologies with focus on resource management, storage technologies and virtualization

View Ajay Gulati's profile

Actions

Bookmarked By (0)