A clock synchronization method, wherein the method is executed by a receiver and comprises: obtaining a common reference clock signal, wherein a frequency of the common reference clock signal is f n; and determining B t according to the common reference clock signal and Mr d ( t -1), wherein B t = mod ∑ n = 0 t − 1 Mr d n, 2 p, t is a positive integer, and Mr d is a preset initial value of frequency offset information at the receiver; when C t obtained by means of calculation according to Mr d ( t - 1) is less than or equal to a threshold, determining that Mr d ( t - 1) is a target Mr d, wherein C t = B t - A t, A t is comprised in a residual time stamp RTS packet that is sent by a transmitter and that is received by the receiver last time, and A t = mod ∑ n = 0 t M d n, 2 p; M d ( n) is frequency offset information, and M d ( n) = M q ( n) - M nom; M q ( n) is a quantity, determined by the transmitter within an n th RTS period, of rising edges of the common reference clock signal; M nom is a reference quantity, obtained by the transmitter, of clock periods of the common reference clock signal within the n th RTS period; P is a bit width of a counter in the transmitter; the counter in the transmitter is configured to record the quantity M q (n), in the transmitter within the n th RTS period, of rising edges of the common reference clock signal; and n is a positive integer; performing frequency division on the common reference clock signal by using the target Mr d as a frequency dividing coefficient, to obtain a first clock signal, wherein a frequency of the first clock signal is f sN; and performing frequency multiplication processing on the first clock signal, to obtain a service clock signal, wherein a frequency of the service clock signal is f s, f s = f sN ×N, and N is a multiplication factor. obtaining a common reference clock signal, wherein a frequency of the common reference clock signal is f n; and determining B t according to the common reference clock signal and Mr d ( t -1), wherein B t = mod ∑ n = 0 t − 1 Mr d n, 2 p, t is a positive integer, and Mr d is a preset initial value of frequency offset information at the receiver; when C t obtained by means of calculation according to Mr d ( t - 1) is less than or equal to a threshold, determining that Mr d ( t - 1) is a target Mr d, wherein C t = B t - A t, A t is comprised in a residual time stamp RTS packet that is sent by a transmitter and that is received by the receiver last time, and A t = mod ∑ n = 0 t M d n, 2 p; M d ( n) is frequency offset information, and M d ( n) = M q ( n) - M nom; M q ( n) is a quantity, determined by the transmitter within an n th RTS period, of rising edges of the common reference clock signal; M nom is a reference quantity, obtained by the transmitter, of clock periods of the common reference clock signal within the n th RTS period; P is a bit width of a counter in the transmitter; the counter in the transmitter is configured to record the quantity M q (n), in the transmitter within the n th RTS period, of rising edges of the common reference clock signal; and n is a positive integer; performing frequency division on the common reference clock signal by using the target Mr d as a frequency dividing coefficient, to obtain a first clock signal, wherein a frequency of the first clock signal is f sN; and performing frequency multiplication processing on the first clock signal, to obtain a service clock signal, wherein a frequency of the service clock signal is f s, f s = f sN ×N, and N is a multiplication factor.