今天閏秒發(fā)生了什么?2000個網(wǎng)絡中斷
7 月 1 日,周三,全球時鐘增加一秒時間,也就是我們所說的閏秒。這多出的“1 秒”是增加在 6 月 30 日午夜。由于北京處于東八時區(qū),所以是在 7 月 1 日 7:59:59 后面增加 1 秒,因此今天出現(xiàn)了 7:59:60 的特殊現(xiàn)象。據(jù)悉,這是自 1972 年啟用閏秒以來的第 26 次增加閏秒。離我們最近的一次閏秒,出現(xiàn)在 2012 年。
為什么會多出 1 秒呢?由于潮汐等地質(zhì)作用,地球的自轉(zhuǎn)速度并非恒定。每隔一段時間,目前世界范圍內(nèi)通用的協(xié)調(diào)世界時(UTC)會與依據(jù)地球圍繞太陽運動計算的平太陽日(Mean Solar Time)和世界時(UT1)出現(xiàn)很小的偏差。因此需要對 UTC 增加或減少一秒來消除這個偏差。
閏秒對我們普通人日常生活不會造成影響,但是它會影響到網(wǎng)絡。據(jù)報道,閏秒導致世界許多地區(qū)的網(wǎng)絡中斷,不過,這些網(wǎng)絡都很迅速的恢復服務。網(wǎng)絡性能管理公司 Dyn 的互聯(lián)網(wǎng)分析主任 Doug Madory 稱,在世界標準時(UTC)午夜剛過,大約有 2000 個網(wǎng)絡突然短暫中斷。其中 50% 受影響網(wǎng)絡位于巴西,那里的網(wǎng)絡服務供應商使用普通類型的路由器,這些路由器未做好應對添加閏秒的準備。
Doug Madory 說,大多數(shù)網(wǎng)絡迅速恢復,只需要重啟路由器即可。分布式網(wǎng)絡數(shù)據(jù)庫——互聯(lián)網(wǎng)國際路由表(global routing table)包括 50 萬個網(wǎng)絡,因此受影響的網(wǎng)絡還不到 0.5%。
上一次閏秒,也就是 2012 年閏秒那天也出現(xiàn)了 Linux 系統(tǒng)問題、部分網(wǎng)站宕機、航班延誤的情況。這是最近十年只有三次閏秒,很多開發(fā)者不熟悉這個概念,也不知道如何應對,因此在編寫一些對通訊依賴較多的程序時沒有意識到閏秒可能帶來的影響,埋下隱患。2012 年一些著名網(wǎng)站和公司受到影響,大多是一些由局部 bug 引發(fā)的系統(tǒng)級問題。不過當年出現(xiàn)問題并引起關注的程序,基本可以認為都已經(jīng)修復了相關 bug。
每隔數(shù)年,閏秒就會被添加一次,以確保世界標準時與太陽時間同步。由于地球自轉(zhuǎn)減慢,導致兩個時間之間的差距加大。自從 1971 年以來,已經(jīng)添加過 26 次閏秒。一般情況下,出現(xiàn)閏秒的時間都會提前至少六個月公布,讓 IT 工作者們做好準備。有些新編寫的考慮不全的程序也許會出錯,但是絕大部分專業(yè)系統(tǒng)在設計時就考慮了閏秒,減少閏秒帶來的影響。