ทำไมเราไม่ซิงค์เวลากับ Public NTP Server

ทำไมเราไม่ซิงค์เวลากับ Public NTP Server

การติดตั้ง NTP Server ภายในองค์กร เพื่อทำหน้าที่เป็นตัวอ้างอิงเวลา (Time Reference) ให้กับอุปกรณ์ต่างๆ ภายในเครือข่ายนั้น เป็นสิ่งที่ควรทำเป็นอย่างยิ่ง เนื่องจากเราสามารถควบคุมเวลาของอุปกรณ์ภายในเครือข่ายของเราเอง ให้มีค่าเวลาที่เท่ากัน แต่นั่นไม่ได้หมายความว่าจะตรงกับเวลา UTC เนื่องจากคอมพิวเตอร์เซิร์ฟเวอร์เวลาที่เราติดตั้งขึ้นมาใช้งานเองนั้น ส่วนใหญ่จะใช้คอมพิวเตอร์เซิร์ฟเวอร์ทั่วๆ ไป ติดตั้งระบบปฎิบัติการ Linux แล้วก็ติดตั้งเซอร์วิสให้บริการเวลา ซึ่งตัวกำเนิดสัญญาณนาฬิกาที่ใช้ในเครื่องเซิฟเวอร์นั้นมีคุณภาพต่ำ มีค่าความคลาดเคลื่อนสูง ถึงแม้ว่าเราจะให้เซิร์ฟเวอร์เวลาของเรา ไปซิงค์เวลากับเซิร์ฟเวอร์เวลาสาธารณะ Public NTP Server ที่ใช้นาฬิกาที่มีความแม่นยำมากที่สุดในโลก หรือสถาบันมาตรวิทยาแห่งประเทศไทย NIMT ซึ่งมีเวลาอะตอมมิก (Cesium clock) ที่สามารถสอบเทียบเวลากลับไปยังมาตรฐานเวลาโลกได้แล้วก็ตาม ก็ยังมีความคลาดเคลื่อนอยู่มาก

ซิงค์เวลากับ Public NTP Server แล้วยัง Error เพราะอะไร?

ซิงค์เวลากับ Public NTP Server แล้วยัง Error เพราะอะไรนั้น มีสาเหตุมาจากการปรับเทียบเวลา Time Synchronization กับ Public NTP Server ผ่านเครือข่ายอินเตอร์เน็ตได้อย่างสมบูรณ์แบบนั้นเป็นไปไม่ได้ เรื่องจากระบบเครือข่ายอินเตอร์เน็ต นั้นเป็นระบบ packet switching ประกอบไปด้วย สวิตช์ เราเตอร์ และโครงสร้างพื้นฐานเครือข่ายอื่นๆ ซึ่งมี Latency Time สูง ทำให้เวลาในการเข้าถึงข้อมูลมากน้อยต่างกันไปขึ้นอยู่กับจำนวน Hop นั้นหมายความว่า โอกาสที่จะได้ค่าเวลาที่ถูกต้อง และค่าแก้เวลา (Correction time) ที่เกิดจากระบบอินเตอร์เน็ตที่ถูกต้องนั้น เป็นไปไม่ได้ ถ้าต้องการความเที่ยงตรงของเวลาในระดับมิลลิวินาที จนถึงนาโนวินาที

ตัวอย่างปัญหา ถ้าเวลาในระบบไม่เท่ากัน

ถ้าเวลาในระบบไม่เท่ากันแล้ว ลองนึกภาพตามดูว่าถ้าคุณมี Log Server อยู่ 10 เครื่อง แต่ละเครื่องมีการเก็บข้อมูลการใช้งานของ User ถ้า Log Server ทั้งหมด มีการใช้ Public NTP server นั่นแปลว่าเวลาของ Log Server ทั้ง 10 เครื่อง จะไม่เท่ากัน ซึ่งนั่นเป็นสาเหตุที่ทำให้ลำดับเหตุการณ์ที่ถูกบันทึกลงใน Log server แต่ละเครื่องไม่สอดคล้องกัน ทำให้การวิเคราะห์ปัญหาทำได้ยาก ยิ่งถ้าเป็นปัญหาเกี่ยวกับเรื่องของเงินๆ ทองๆ ยิ่งน่ากลัว สมมุติว่ามีบริษัทในตลาดหลักทรัพย์ กำลังเปิดซื้อขายหุ้นเป็นวันแรก หรือ IPO ซึ่งมีนักลงทุนรอที่จะซื้อหรือขายเป็นจำนวนมากในช่วงเปิดตลาด ถ้า Servers ที่ใช้งานอยู่ทั้งหมดนั้นมีเวลาที่ไม่ซิงโครไนซ์ซึ่งกันและกันแล้ว การจัดการกับการคำสั่งซื้อขาย ระดับ 1,000 -10,000 ต่อวินาทีนั้น ไม่สามารถจัดการเรื่องลำดับว่าของใครมาก่อน มาหลังได้แน่นอน

วิธีแก้ปัญหาเวลาเครื่องเซิฟเวอร์ ไม่ตรงกันได้อย่างไร?

วิธีแก้ปัญหาเวลาเครื่องเซิฟเวอร์ ไม่ตรงกันได้อย่างไรนั้น สามารถทำได้โดยการติดตั้ง NTP Server ที่มีระดับ Stratum-1 เช่น ELPROMA NTP Server ภายในองค์กร เพื่อทำหน้าที่เป็นตัวอ้างอิงเวลา (Time Reference) ให้กับอุปกรณ์ต่างๆ ภายในเครือข่ายนั้น แทนที่จะให้เครื่องเซิฟเวอร์ และอุปกรณ์ภายในเครือข่ายไปอ้างอิงเวลากับ Public NTP Server ก็ย้ายให้มาอ้างอิงเวลากับ Private NTP Server ของเราเอง ซึ่งจะมีเวลาที่มีความเที่ยงตรงในระดับ Stratum-1 เพราะ ELPROMA NTP Server อย่างรุ่น NTS-PICO3 หรือ NTS-3000 นั้นอ้างอิงเวลาจากระบบดาวเทียมนำร่อง GNSS อย่างเช่น GPS, GLONASS ซึ่งมีความเที่ยงตรงในระดับ Stratum-0 เพราะใช้ตัวกำเนิดสัญญาณนาฬิกา OSC ที่เป็นซีเซี่ยม (Cesium clock) หรือบางทีจะเรียกว่านาฬิกาอะตอม Atomic Clock

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

Allow All
Manage Consent Preferences
  • คุกกี้ที่จำเป็น
    Always Active

    ประเภทของคุกกี้มีความจำเป็นสำหรับการทำงานของเว็บไซต์ เพื่อให้คุณสามารถใช้ได้อย่างเป็นปกติ และเข้าชมเว็บไซต์ คุณไม่สามารถปิดการทำงานของคุกกี้นี้ในระบบเว็บไซต์ของเราได้

  • คุกกี้เพื่อการวิเคราะห์

    คุกกี้ประเภทนี้จะทำการเก็บข้อมูลการใช้งานเว็บไซต์ของคุณ เพื่อเป็นประโยชน์ในการวัดผล ปรับปรุง และพัฒนาประสบการณ์ที่ดีในการใช้งานเว็บไซต์ ถ้าหากท่านไม่ยินยอมให้เราใช้คุกกี้นี้ เราจะไม่สามารถวัดผล ปรับปรุงและพัฒนาเว็บไซต์ได้

Save