NTP协议之旅
NTP協議之旅
- What---啥是NTP
- Why---為什么需要NTP
- How---NTP實現原理
- Do---NTP實戰
- 使用HCL 華三模擬器進行NTP配置
- 抓包分析
What—啥是NTP
??NTP是在分布式網絡中,進行時鐘同步的協議,其具有較高的時間同步精度。所使用的傳輸層協議為UDP,使用端口號為123。
Why—為什么需要NTP
- 分布式網絡中,設備數量多,使用NTP同步時間,節省網管工作量。
- 計費系統對時間一致性有要求,計費不準會出事。
- 多個系統之間按照時間順序處理負責事務,時間保持同步是基礎。
總之許多業務和日常生活中,許多地方都離不開NTP協議。
How—NTP實現原理
如上圖,NTP協議報文交互一共需要發送兩個報文,攜帶的時間信息:
根據t1,t2,t3,t4這4個時刻,下面來介紹如何計算出Server和Client的時間差offset。
進而Client端根據這個算出的offset來更新本地時間,做到與Server同步。
如上圖,
設Server和Client之間的時間差為offset,在Client端請求報文發送時刻為T1時,此時Server端時間為T1’,則有方程:① T1 + offset = T1’。
設報文在Client和Server傳輸途中花費的時間為delay,報文到達Server時間為T2,則有方程:②T1’ + delay = T2。
同理在Server的響應報文返回時,Server的時間和Client的時間差仍然是offset,在T3時刻從Server發回的報文對應Client端時間為T3’,則有方程:③T3’ + offset = T3。
響應報文在線路上傳遞時間仍然為delay(這里應該有個假設,請求報文的響應報文花費的時間delay相同),則有方程:④T3’ + delay = T4。
方程組中有4個已知數T1,T2,T3,T4以及4個等式,可以解出offset和delay的值。
重要的是offset,獲得了offset便知道了Client的時間與Server的時間差。
Client根據這個時間差就可以調整自己的時間了。
Do—NTP實戰
使用HCL 華三模擬器進行NTP配置
抓包分析
總結
- 上一篇: 回望2019,互联网产品发展只剩焦虑?
- 下一篇: 12.14黄金白银实时行情分析,黄金原油