Menjaga Masa dengan Protokol Masa Rangkaian
Dicatat oleh Richard N Williams on April 30th, 2012
Apabila ia datang untuk penyegerakan masa rangkaian, Protokol Masa Rangkaian (NTP) adalah protokol perisian yang paling banyak digunakan. Sama ada untuk menyimpan rangkaian beratus-ratus atau ribuan mesin yang diselaraskan, atau menyimpan mesin tunggal yang berjalan benar, NTP menawarkan penyelesaiannya. Tanpa NTP, dan Pelayan NTP, banyak tugas yang kami lakukan di internet, dari membeli-belah ke perbankan dalam talian, tidak mungkin.
Penyegerakan sangat penting untuk rangkaian beroperasi melalui internet. Tanpa penyegerakan, akan ada kekacauan. Bayangkan menerima e-mel daripada seseorang lima minit sebelum dihantar atau memindahkan wang kepada pengguna yang mesinnya mengatakan wang yang ditinggalkan sebelum ia tiba.
Masa Universal yang diselaraskan
Untuk mengelakkan semua masalah ini, satu skala masa sejagat digunakan di seluruh internet, yang sama tidak kira apa zon waktu mesin berada. Masa Universal yang diselaraskan (UTC) dikawal oleh jam atom, jadi sangat tepat dan stabil.
Untuk rangkaian komputer untuk menerima UTC, mereka menggunakan pelayan NTP, yang menerima sumber masa daripada sama ada rangkaian GPS (Sistem Kedudukan Global), penghantaran radio, atau dari internet sendiri. Setelah diterima, terserah kepada NTP untuk mengambil sumber waktu induk dan mengedarkannya di sekitar rangkaian untuk memastikan sinkronisinya.
Protokol Masa Rangkaian Dijelaskan
NTP adalah salah satu protokol tertua dalam pengkomputeran. Ia bermula sejak ketika internet masih di peringkat awal, tetapi ia telah diubah suai dan disesuaikan untuk memastikan ia masih relevan. Pada asasnya, NTP adalah algoritma yang direka untuk menentukan masa pada komputer individu dan membandingkannya dengan sumber waktu UTC. Jika NTP mendapati dan percanggahan, ia menyesuaikan jam pada peranti yang menyinggung untuk memastikan ia sepadan. NTP melakukan ini dengan ketepatan sedemikian rupa sehingga rangkaian seribu mesin boleh disegerakkan dalam beberapa milisaat satu sama lain.
NTP mengamalkan sistem hierarki. Daripada mempunyai setiap peranti pada rangkaian yang ditandai dengan pelayan NTP dan sumber waktu UTC, protokol tersebut membolehkan mesin-mesin yang paling dekat dengan pelayan, untuk digunakan sebagai rujukan kepada mesin yang lebih rendah. Ini menghalang kemasukan lalu lintas ke pelayan NTP dan membolehkan satu peranti untuk mengekalkan penyegerakan dalam rangkaian beratus-ratus atau bahkan beribu-ribu peranti.
Leap Seconds
Salah satu cabaran terbesar NTP menghadapi menggunakan UTC sebagai sumber masa adalah bahawa masa universal ini kadang kala diselaraskan untuk mengekalkan hubungannya dengan putaran Bumi. Kerana planet ini semakin sedikit melambatkan, jam atom yang mengatur UTC adalah moiré akurat bahawa planet itu sendiri, jadi sesekali sekali ditambah satu atau dua kali setahun untuk memastikan tidak ada hanyut dari siang ke malam (walaupun proses demikian akan mengambil masa berjuta-juta tahun).
Perubahan tambahan ini dikenali sebagai Melompat saat dan dikenal pasti dalam isyarat yang dihantar kepada kebanyakan pelayan NTP. Apabila NTP menemui lompatan kedua ditambahkan, ia secara automatik menyesuaikan semua peranti pada rangkaian dengan mengulangi sesaat. Kegagalan untuk menyesuaikan diri untuk detik-detik lompat ini akan menyebabkan rangkaian secara beransur-ansur hanyut dari UTC dan menjadi tidak selari dengan seluruh komuniti internet.