Iterative receiver algorithm for underwater acoustic communications