An Information-Theoretic Approach for Reliable Distributed Storage Systems