2016-10-25 26 views

回答

0

我將用一個例子來說明如何做到這一點。

讓你的機器M提前一個時鐘服務器S x = 50ms。這個工作是讓M找出這50ms。進一步假定網絡延遲是d = 10ms。

  • 在時間千M認爲時間分別爲1050它發送1050出來S.
  • 在時間1010 S收到的消息,併發送回1010
  • 在時間1020小號認爲它的當前時間的時間分別爲1070,和它接收到包含1010

現在m組兩個方程中的消息:

  • (1050-X)+ d = 1010 //中號發送(1050-x)的消息;延遲到達S。
  • 1070-x = 1010 + d // M在1070-x處接收消息,該消息是1010加延遲d。

通過求解這些方程,M知道它的時鐘超前了x = 50ms。