Optimal algorithms and crb for reciprocity calibration in massive Mimo