A method of carrier recovery from a high speed optical signal received through an optical communications network. A stream of multi-bit digital samples of the optical signal is processed to generate a multi-bit estimate X′(n) of each one of a plurality of transmitted symbols. A phase of each symbol estimate X′(n) is rotated, and a respective symbol phase error Δφ(n) of the rotated symbol estimate determined.