We develop an adaptive load distribution protocol for logical volume I/O workload in clustered storage systems. It exploits data redundancy among decentralized storage servers to dynamically route I/O workload on a per-request basis, offering short-term load balancing and improved I/O performance. Our protocol builds on tunable hashing techniques and is based purely on client logic. Therefore, it does not limit system scalability and requires no change to the existing infrastructure. It distributes the I/O requests of a client to storage servers selected adaptively by a decentralized tunable hashing scheme, and, applies different policies to read and write requests. It also makes no assumption about inter-server communication latency and thus is robust to different network configurations. It supports both replication and erasure coding data redundancy schemes. Experimental results show that our protocol performs closely to a centralized load-balancing algorithm and verify the robustn...
Changxun Wu, Randal C. Burns