Software Defined Storage: Overcoming the Hardware Challenge