Bagaimana membuat sistem waktu seragam yang murah tetapi dapat diandalkan di perusahaan

Saat ini, tidak setiap spesialis dapat mengklasifikasikan server waktu yang akurat sebagai perangkat yang secara teknis rumit. Ada banyak artikel di Internet tentang cara membuat server NTP perangkat keras Anda sendiri. Namun demikian, solusi yang digunakan dalam aplikasi industri dan ditawarkan oleh produsen global hampir tidak dapat disebut sebagai anggaran. Apakah mungkin untuk mengoptimalkan biaya ini tanpa mengorbankan kualitas dan keandalan subsistem waktu presisi di perusahaan?



Untuk apa waktu yang tepat?



Di antara fungsi-fungsi yang dimungkinkan oleh server waktu, kita dapat memberi nama formasi yang benar dari kronologi peristiwa dalam sistem kontrol untuk memelihara log yang sesuai, log, informasi pengarsipan, tren bangunan, grafik, dll.



Dalam sistem pengawasan video, server waktu menyediakan pengikatan rekaman video yang diambil ke waktu astronomi. Selain itu, perangkat ini memungkinkan Anda membandingkan informasi secara akurat dari berbagai sistem informasi di perusahaan. Misalnya, dapat berupa sistem pengawasan video dan sistem keamanan, seperti ACS, sistem perlindungan relai dan sistem telemekanik independen, dll.



Sejumlah protokol pertukaran informasi menggunakan stempel waktu secara langsung sebagai bagian dari paket data yang dikirimkan. Protokol ini termasuk IEC-101/104, yang digunakan dalam sistem telemekanik modern.



Salah satu persyaratan penting untuk sejumlah aplikasi industri adalah persyaratan keamanan informasi yang mengecualikan akses Internet untuk menjalankan fungsi sinkronisasi waktu.



Karena kesederhanaannya dan sejumlah alasan historis untuk memecahkan masalah sinkronisasi waktu, protokol yang paling banyak digunakan adalah NTP. Selain server, arsip dan stasiun operator sistem kontrol, pengontrol dan panel HMI, peralatan jaringan sistem komunikasi (sakelar terkelola, router, dll.) Dapat bertindak sebagai klien NTP di suatu perusahaan.



Protokol NTP



Protokol waktu jaringan (NTP) adalah protokol jaringan untuk menyinkronkan jam dalam sistem komputer melalui jaringan data yang dialihkan dengan jeda variabel (latensi). Popularitas protokol yang tinggi disebabkan oleh pengembangan aktif sistem berbasis Ethernet. Salah satu keuntungan utama dari protokol ini adalah kemampuannya untuk mengirimkan cap waktu secara langsung melalui jaringan data, yang menghilangkan kebutuhan untuk bus waktu terpisah, seperti dalam sistem 1PPS atau IRIG-B. Protokol dikembangkan pada tahun 1985 dan merupakan salah satu protokol Internet tertua yang digunakan saat ini.



NTP memberikan akurasi waktu yang dapat diterima untuk sebagian besar aplikasi. Protokol dapat mendukung waktu dengan akurasi puluhan milidetik di Internet dan hingga 0,2 ms di jaringan lokal dalam kondisi ideal. Jalur data asimetris dan kemacetan jaringan dapat menyebabkan kesalahan 100 md atau lebih.



NTP menyinkronkan perangkat ke Waktu Universal Terkoordinasi (UTC). Dalam hal ini, protokol memperhitungkan munculnya lompatan kedua sebagai akibat dari rotasi Bumi yang tidak rata, tetapi tidak mengirimkan informasi apa pun tentang zona waktu lokal atau waktu musim panas.



Struktur sistem



NTP menggunakan sistem hierarki sumber waktu yang akurat. Setiap tingkat hierarki disebut Stratum (lapisan, lapisan) dan diberi nomor mulai dari 0 untuk jam referensi di bagian atas hierarki. Server waktu pada lapisan N disinkronkan dari server pada tingkat N-1. Angka N mewakili jarak dari jam referensi dan digunakan untuk mencegah siklus selama sinkronisasi. Stratum tidak selalu menjadi ukuran kualitas atau keandalan. Misalnya, Anda dapat menemukan sumber waktu pada lapisan 3 yang memiliki kualitas lebih tinggi daripada sumber waktu pada lapisan 2.



Stratum 0



Jam referensi pada Stratum 0 adalah sistem navigasi satelit (GLONASS, GPS, dll.), Jam atom, atau pemancar radio. Sekali per detik, mereka menghasilkan sinyal pulsa (1PPS) yang memicu interupsi dan menghasilkan cap waktu pada perangkat yang terhubung. Perangkat lapisan 0 juga dikenal sebagai jam referensi. Server NTP tidak dapat memposisikan dirinya sendiri dalam sistem sebagai Stratum 0. Jika bidang Stratum diatur ke 0 dalam paket data, ini menunjukkan lapisan yang tidak ditentukan.





Struktur logis dari sistem sinkronisasi berdasarkan NTP



Stratum 1



Lapisan ini berisi perangkat yang waktu sistemnya disinkronkan dalam beberapa mikrodetik dari jam referensi. Server waktu di tingkat ini dapat bekerja dalam mode peer-to-peer dengan server Stratum 1 lainnya untuk redundansi dan verifikasi akurasi. Mereka juga disebut server waktu primer.



Stratum 2



Ini adalah perangkat yang melakukan sinkronisasi melalui jaringan dari server Tier 1. Seringkali perangkat Tier 2 mengumpulkan beberapa server Tier 1. Komputer Stratum 2 juga dapat peer-to-peer dengan komputer Stratum 2 lainnya untuk menyediakan waktu yang lebih stabil dan dapat diandalkan untuk semua perangkat dalam peer group. node.



Jumlah lapisan teoritis maksimum adalah 15; Stratum 16 digunakan untuk menunjukkan bahwa perangkat tidak sinkron. Mekanisme NTP pada setiap perangkat dalam sistem berinteraksi untuk membuat jalur terpendek ke server Stratum 1 untuk semua klien. Ini meminimalkan akumulasi latensi dalam transmisi data dan meningkatkan akurasi waktu. Algoritme untuk membangun pohon rentang dengan panjang jalur minimum didasarkan pada algoritme Bellman-Ford.



Stempel waktu



NTP awalnya menggunakan stempel waktu 64-bit, terdiri dari porsi 32-bit untuk detik dan porsi 32-bit untuk sepersekian detik, yang memberikan garis waktu yang akan bergulir setiap 32 detik (136 tahun) dan memberikan resolusi teoritis 2 -32 detik (233 picoseconds). Hitung mundur dimulai pada 1 Januari 1900, sehingga epoch pertama akan berakhir pada 7 Februari 2036.



Versi terbaru dari protokol NTPv4 memperkenalkan format waktu 128-bit: 64 bit untuk detik dan 64 bit untuk sepersekian detik, yang memberikan garis waktu lebih dari 584 miliar tahun dan resolusi 0,05 attoseconds. Selain itu, bidang nomor era 32-bit diperkenalkan, yang bahkan menghilangkan masalah teoretis dari akhir setiap era.



Algoritma sinkronisasi jam



Klien NTP mengumpulkan satu atau lebih server secara teratur. Dengan melakukan itu, ini menghitung offset waktu dan penundaan perjalanan pulang pergi. Offset waktu θ adalah perbedaan waktu absolut antara jam server dan klien dan ditentukan oleh rumus:







Penundaan pulang pergi δ didefinisikan sebagai waktu sinyal ditransmisikan melalui jalur komunikasi dari klien ke server dan sebaliknya. Ini adalah waktu yang dibutuhkan untuk mengirim sinyal, ditambah waktu yang diperlukan untuk mengkonfirmasi bahwa sinyal telah diperoleh dengan: di







mana t 0 - tandai waktu klien untuk mengirimkan paket permintaan,

t 1 - stempel waktu menerima paket permintaan server,

t 2 - waktu server label untuk transmisi paket respon,

t 3- cap waktu klien menerima paket respons.





Algoritme untuk menghitung offset waktu dan penundaan bolak-balik



Nilai yang dihitung dari θ dan δ dilewatkan melalui filter dan dilakukan analisis statistik. Pencilan dari sampel total akan dibuang dan bias waktu diperkirakan berdasarkan nilai yang tersisa. Mengetahui offset waktu dan penundaan perjalanan pulang pergi, klien menyesuaikan waktunya sendiri untuk mencapai θ sama dengan nol.



Sinkronisasi yang akurat dicapai ketika rute masuk dan keluar antara klien dan server simetris, yaitu memiliki latensi yang sama. Jika rutenya asimetris, maka ada bias sistematis setengah perbedaan antara waktu paket dikirim dari klien ke server dan kembali.



Mekanisme transmisi



Dalam kebanyakan kasus, protokol NTP menggunakan model operasi klien-server klasik, di mana klien mengirim permintaan dan setelah beberapa saat menerima respons dari server. Namun, protokol dapat bekerja dalam sistem peer-to-peer, di mana dua peer melihat satu sama lain sebagai sumber waktu potensial. Mode operasi ini juga disebut simetris. Untuk komunikasi jaringan, NTP menggunakan protokol UDP, secara default bekerja pada port 123. Untuk transmisi data, berbagai mekanisme dapat digunakan - unicast, broadcast, multicast dan manycast.



Mode unicast



NTP paling sering menggunakan mode Unicast untuk transfer data. Dalam mode ini, data ditransfer dari satu perangkat jaringan ke perangkat lainnya satu per satu. Paket unicast menggunakan alamat spesifik perangkat yang tujuan paketnya adalah alamat IP. Modus



siaran



Modus ini nyaman dalam kasus di mana sejumlah kecil server NTP melayani banyak klien. Dalam mode ini, server secara berkala mengirimkan paket menggunakan alamat subnet siaran. Klien yang dikonfigurasi untuk melakukan sinkronisasi dengan cara ini menerima paket siaran server dan melakukan sinkronisasi dengannya.



Mode ini memiliki sejumlah fitur. Pertama, mode Siaran memberikan akurasi waktu yang lebih rendah daripada Unicast. Kedua, paket siaran hanya dapat dikirim dalam subnet yang sama. Selain itu, disarankan untuk menggunakan metode otentikasi untuk melindungi dari penyusup.



Mode multicast Mode multicast



bekerja dengan cara yang sama seperti Broadcast. Perbedaannya adalah bahwa bukan alamat subnet siaran, tetapi alamat grup multicast digunakan untuk mengirimkan paket. Klien dan server diberi alamat IP multicast yang mereka gunakan untuk sinkronisasi waktu. Hal ini memungkinkan untuk menyinkronkan grup mesin yang terletak di subnet berbeda, asalkan router yang menghubungkannya mendukung IGMP dan dikonfigurasi untuk mengirimkan lalu lintas multicast.



Manycast Mode Mode



ini baru untuk versi terbaru (v4) dari protokol NTP. Mode Manycast berfungsi sebagai mode Multicast hanya dengan alamat IP server NTP yang tidak diketahui. Dengan mengirim pesan Multicast, klien mencari jaringan server Manycast, menerima sampel waktu dari masing-masing, dan memilih tiga server "terbaik" yang akan disinkronkan. Jika terjadi kegagalan salah satu server, klien secara otomatis memperbarui daftarnya.



Klien dan server yang beroperasi dalam mode Manycast juga menggunakan alamat grup multicast untuk mengirimkan sampel waktu. Klien dan server yang menggunakan alamat yang sama membentuk satu asosiasi. Jumlah asosiasi ditentukan oleh jumlah alamat multicast yang digunakan.



Versi protokol



Sejak kemunculannya pada tahun 1985, protokol tersebut mulai berkembang secara aktif dan pada tahun 1992 telah mengubah empat versi (dari NTPv0 ke NTPv3). Setiap versi baru menambahkan fungsionalitas dan mengoptimalkan pekerjaannya, tetapi membiarkan format data tidak berubah dan menjaga versi yang berbeda tetap kompatibel satu sama lain. Versi keempat terakhir dari protokol ini bertanggal 2010. NTP terus berkembang hingga saat ini, pekerjaan sedang dilakukan untuk menciptakan solusi yang secara teknis mirip dengan PTP (Precision Time Protocol) yang lebih akurat.



SNTP



Bersamaan dengan NTPv3 pada tahun 1992, versi protokol yang lebih sederhana diperkenalkan - SNTP (Simple NTP). SNTP menggunakan transmisi dan format presentasi yang sama dengan NTP. Pada saat yang sama, SNTP tidak memperhatikan algoritme server, tetapi menyederhanakan algoritme klien. Itulah mengapa protokol paling sering digunakan dalam sistem dan perangkat tertanam yang tidak memerlukan akurasi tinggi.



Perbedaan antara NTP dan SNTP terletak pada metode penentuan server optimal untuk sinkronisasi dan metode koreksi waktu. Ini adalah cara NTP memungkinkan klien menggunakan algoritme persimpangan matematika (versi algoritme Marzullo yang didesain ulang) untuk memilih beberapa server terbaik di jaringan dan menyesuaikan waktunya dengan lancar. SNTP menggunakan satu server NTP yang telah ditentukan untuk sinkronisasi, sementara yang lain hanya dapat menjadi cadangan jika terjadi kehilangan komunikasi dengan perangkat utama. Dalam hal ini, klien yang menggunakan SNTP dapat menyesuaikan waktu hanya dalam lompatan setelah menerima respons dari server.



Diagram khas dari sistem sinkronisasi dan kekurangannya



Secara tradisional, sistem waktu di fasilitas industri dibangun atas dasar server NTP yang terdiri dari head unit yang dipasang di kabinet yang sama dengan peralatan jaringan dan antena jarak jauh yang dipasang di luar ruangan dan dihubungkan ke server menggunakan kabel koaksial. Pada saat yang sama, head unit memiliki beberapa antarmuka jaringan (Ethernet atau RS-232/485) untuk menghubungkan klien dalam satu atau beberapa jaringan.





Sistem Waktu Presisi Khas



Jika Anda melihat solusi ini lebih dekat, Anda akan melihat beberapa kelemahan. Pertama, sistem seperti itu tidak memiliki redundansi penuh. Terlepas dari kenyataan bahwa head unit memiliki beberapa interface jaringan dan mampu memberikan waktu yang akurat di beberapa jaringan, kegagalan atau kegagalannya akan mengakibatkan hilangnya sumber waktu yang akurat di seluruh situs. Redundansi penuh dari head unit dalam solusi seperti itu akan membuat sistem sinkronisasi yang sudah mahal menjadi lebih mahal.



Kelemahan kedua adalah kebutuhan untuk memasang server waktu di kabinet. Ini bukan kerugian untuk proyek besar, tetapi untuk sistem kendali lokal kecil, ini bisa menjadi masalah serius.



Juga, kerugiannya termasuk kebutuhan untuk menggunakan antena jarak jauh dan kabel koaksial. Mengapa? Pertama-tama, biaya antena GPS / GLONASS berkualitas tinggi dengan kabel panjang dan perlindungan terhadap hewan pengerat dapat dengan mudah melebihi 10.000 rubel. pada harga 2020. Dalam hal ini, kabel koaksial memiliki panjang terbatas untuk memancarkan sinyal dari sistem satelit. Di atas 50 m, sinyal akan berkurang secara signifikan, yang merupakan faktor pembatas yang serius di gedung-gedung besar.



Kerugian utama dari pendekatan tradisional untuk pembuatan sistem sinkronisasi adalah biayanya yang tinggi (seringkali lebih dari 150.000 rubel), yang secara signifikan memengaruhi perkiraan tidak hanya proyek kecil, tetapi juga proyek yang cukup besar.



Bagaimana membuat sistem lebih murah dan lebih dapat diandalkan



Tren tanpa syarat dari teknologi modern adalah penciptaan perangkat elektronik yang lebih kompak dan ramah pengguna. Dalam hal ini, server waktu tidak terkecuali.



Seluruh solusi sinkronisasi, termasuk antena GPS / GLONASS, dapat dimasukkan ke dalam kotak kecil, seperti yang dilakukan di

FL TIMESERVER dari Phoenix Contact. Perangkat dibuat berdasarkan prinsip antena pintar, yaitu, secara langsung menggabungkan fungsionalitas server waktu dan antena penerima GPS / GLONASS. Desainnya adalah satu-satunya hal yang membedakannya dari solusi biasa.





FL TIMESERVER NTP server waktu



Seperti yang diperlihatkan oleh praktik, perangkat ini mampu menyediakan komunikasi dengan sistem satelit bahkan di dalam gedung, tetapi untuk penerimaan sinyal yang lebih andal, perangkat ini dapat dioperasikan dalam kondisi luar ruangan, karena dibuat dalam wadah dengan tingkat perlindungan debu dan kelembapan IP68 dan mampu beroperasi dalam kisaran suhu yang luas dari -40 hingga +70 C Dalam hal ini, server waktu dipasang sebagai antena konvensional, memiliki catu daya redundan dari sirkuit DC 24 V dan / atau melalui kabel Ethernet (PoE) dan didiagnosis menggunakan SNMP. Untuk pemasangan di luar ruangan, kelenjar kabel yang disegel digunakan untuk menjaga tingkat perlindungan debu dan kelembapan yang tinggi.



Dalam hal fungsionalitas, tidak ada perbedaan: perangkat dapat menerima stempel waktu dan data geolokasi dari sistem navigasi satelit (GLONASS, GPS) dan menyiarkan informasi ini ke klien di jaringan Ethernet.





Sistem waktu berdasarkan solusi Kontak Phoenix



Dengan solusi ini, sistem sinkronisasi sangat disederhanakan dan menghilangkan kerugian dari pendekatan tradisional. FL TIMESERVERhanya memiliki satu port Ethernet, tetapi jika Anda perlu menggunakan beberapa antarmuka, cukup hubungkan ke sakelar atau gunakan beberapa antena pintar. Dalam hal ini, kami mendapatkan cadangan server waktu yang lengkap, dan bukan hanya antarmuka jaringannya. Dalam hal ini, solusi akhir masih akan lebih murah daripada banyak analog yang ada. FL TIMESERVER dapat dipindahkan ke luar jaringan atau kabinet otomatisasi, menghemat ruang di dalamnya. Solusi ini tidak memerlukan antena terpisah, ini sudah ada di dalamnya dan kami dapat terhubung ke jaringan perusahaan dengan kabel Ethernet biasa. Pada gilirannya, ini memungkinkan Anda untuk memindahkan server waktu pada jarak hingga 100 m dari peralatan utama tanpa takut sinyalnya akan memudar. Keuntungan terpenting dari solusi semacam itu adalah urutan harga yang sama sekali berbeda.Biaya server satu kali kurang dari 300 euro, yang membuatnya nyaman untuk digunakan baik dalam proyek kecil maupun besar.



All Articles