Network Time Protocol (NTP)
พัฒนาโดย David L. Mills แห่ง University of Delaware ตั้งแต่ปี 1985เป็น protocol สำหรับการเข้าจังหวะเวลาบนระบบเครือข่ายแบบ packet-switchedรับส่งข้อมูลแบบ UDP บน port 123 ออกแบบมาเพื่อลดผลกระทบของการคลาดเคลื่อนทางเวลา
NTP(NetworkTimeProtocol)เปนโพรโตคอลที่ใชในการติดตอระหวางเครื่องใหบริการเวลา(time server)และเครื่องขอเขาใชบริการ(client)ซึ่งการขอเทียบเวลาจากเครื่องที่ขอเขาใชบริการมายังเครื่องใหบริการนี้จะเกิดขึ้นอยูตลอดเวลา จึงจําเปนจะตองอาศัยการทํางานของ daemon ที่ชื่อ ntpd หรือ Network Time Protocol Daemon (Daemon เปนโพรเซสในระบบรูปแบบหนึ่ง มีลักษณะการทํางานแตกตางจากโพรเซสทั่วไปคือ หลังจากที่ถูกผูใชสั่งใหเริ่มตนทํางานในครั้งแรกแลวโพรเซสdaemonจะสามารถทํางานตอเองไดโดยอัตโนมัติเมื่อไดรับการเรียกใชหรือรองขอจากระบบ)
ntpd (Network Time Protocol Daemon) คืออะไร
ntpdเปนdaemonในระบบที่ทําหนาที่ตั้งและปรับแตงคาเวลาระหวางเครื่องคอมพิวเตอรใหตรงกันตามมาตรฐานเวลาของเครือขายอินเทอรเน็ต อาศัยการอางอิงคาเวลาจากเครื่องใหบริการ time server การทํางานของ ntpd เปนไปตามโพรโตคอล NTP โดยเวอรชันที่ใชงานในปจจุบัน(1พฤศจิกายน2544)คือเวอรชัน4ซึ่งสามารถใชงานรวมกับเวอรชัน 3, 2และ1ไดจุดเดนที่สําคัญของntpdเวอรชันนี้คือการเก็บคาเวลาใชการเก็บแบบเลขทศนิยมไมรูจบขนาด 64บิตทําใหมีความละเอียดในการเก็บคาเวลาถึง232พิโควินาที(10-12)ความละเอียดในระดับดังกลาวนี้สามารถรองรับการทํางานของหนวยประมวลผลที่มีความเร็วในระดับกิกะเฮิรตซและเครือขายที่ทํางานในระดับกิกะบิต (gigabin LAN) ได รายละเอียดที่จะกลาวถึงตอไปนี้จะอธิบายถึงขั้นตอนการทํางานของ ntpd และวิธีในการเรียกใชงานดานเครื่องขอเขาใช้บริการ
ntpd ทํางานอยางไร
หนาที่ของ ntpd คือทําการแลกเปลี่ยนขอมูลกับเครื่องใหบริการภายในชวงเวลาที่กําหนดไว โดยในการแลกเปลี่ยนครั้งแรกนั้น ntpd จะตองแลกเปลี่ยนขอมูลกับเครื่องใหบริการจํานวนหลายๆ เครื่องเพื่อใหคาเวลาที่คํานวณไดเปนคาที่ถูกตองที่สุด ดังนั้นเพื่อปองกันไมใหมีขอมูลใน
สวนนี้ออกไปสูเครือขายจํานวนมาก จึงตองมีการตั้งคาดีเลยเริ่มตนไวมากกวา 16 วินาที ซึ่งปกติ
แลวจะถูกตัวโปรแกรมตั้งไวที่ 64 วินาที แตก็สามารถเปลี่ยนแปลงคาดีเลยเริ่มตนนี้ไดตามตองการ โดยใชคียเวิรด iburst รวมกับคําสั่ง server
server ในสวนของการตั้งคาออปชันการทํางาน
ระบบปฏิบัติการและฮารดแวรที่ใชงานอยูในปจจุบัน สวนใหญอาศัยชิป (chip) time-of-year (TOY) สําหรับจัดการเรื่องคาเวลาของเครื่องคอมพิวเตอรขณะที่ปดเครื่อง หลังจากที่เครื่องถูกเปดใชงาน ชิปตัวนี้จะทําหนาที่ตั้งคาเวลาใหกับระบบปฏิบัติการ ถาเครื่องมีการติดตอไปยังเครื่องใหบริการ time server เพื่อรับคาเวลามาใชงาน ระบบปฏิบัติการก็จะนําคาที่ไดรับไปปรับคาเวลาที่เก็บในชิปใหทุกครั้ง ในกรณีที่เวลาที่ปรากฏบนชิปกับเวลาที่ตองการปรับเปลี่ยนมีคาแตกตางกันมากกวา 1000 วินาทีหรือ 16.6นาทีntpdจะคิดวามีความผิดปกติเกิดขึ้นและจะหยุดการทํางานพรอมกับสงขอความไปเตือนไปเก็บไวในล็อกไฟลของระบบ เพื่อแจงใหผูดูแลระบบทราบ และใหผูดูแลระบบทําการตรวจสอบแกไขปญหานี้ดวยตนเอง อยางไรก็ตาม ผูใชสามารถเลือกใชออปชัน -g เพื่อใ ห ntpd ปรับแกเวลาบนชิปตามคาที่ไดรับมา จากเครื่องใหบริการไดเลยโดยไมสนใจความแตกตางกันนี้ และเมื่อตั้งคาเวลาเสร็จแลว ntpd จะหยุดการทํางานทันทีเพื่อปองกันไมใหฮารดแวรไดรับความเสียหายในสภาวะการทํางานปกตินั้นntpdจะปรับเปลี่ยนคาเวลาทีละนอยลงจนกระทั่งมาตรฐานการนับเวลา(timescale)ที่ใชในเครื่องไมมีความจําเปนตองปรับเปลี่ยนอีกตอไป สําหรับในเครือขายที่มีเครื่องคอมพิวเตอรจํานวนมากนั้น อาจจะมีคาดีเลยจากการกระตุกไดมากถึง 3 วินาที เมื่อรวมกับคาดีเลย อื่นๆ แลวก็อาจจะมีคาดีเลยที่คอนขางมาก ดังนั้น ntpd จะไมพิจารณาคา offset ที่มากกวา 128 มิลลิวินาที (10 -3) เวนเสียแตวาจะมีคา offset ที่นอยกวา 128 มิลลิวินาที (10 -3) หรือมากกวา 900 วินาที โดยจะตั้งคา step ของ นาฬิกา ใหเทากับคา offset ของตัวอยางที่ไดรับถัดมา โดยไมสนใจวาจะมีคาเทาใด
ดังนั้นจะพบวาไมบอยนักที่จะพบคาoffsetมากกวา128มิลลิวินาที(10-3)แตในบางโปรแกรมนั้นคา offset นี้ถือวามากเกินไป ไมสามารถยอมรับได เราก็สามารถตั้งคาออปชันเปน -x เพื่อใหนาฬิกา –x ไมตองทําการstepเพิ่มขึ้นโดยจะอาศัยการเหวี่ยงคาเพื่อหาคาที่ใกลเคียงใหมากที่สุด (slew corrections)
การที่จะใชออปชัน -x นั้น จะตองพิจารณาอยางถี่ถวน คาอัตราการเหวี่ยงสูงสุดที่เปนไปไดคือ -x 500 สวนตอหนึ่งลาน (PPM) ซึ่งผลที่ตามมาคืออาจจะใชเวลาประมาณ 2000 วินาทีในการหาคาที่สามารถยอมรับได
Frequency Discipline
ลักษณะการทํางานของ ntpd ครั้งแรกจะขึ้นอยูกับไฟลที่กําหนดความถี่ (frequency)
(มักจะเปนไฟลชื่อ /etc/ntp.drift หรือ /etc/ntp/drift) วามีอยูหรือไม โดยไฟลนี้จะบรรจุขอมูลลาสุดของ clockfrequencyerrorในกรณีที่ntpdถูกเรียกใชงานขึ้นมาและไมพบไฟลntp.driftการทํางานจะเขาสูโหมด พิเศษที่ตั้งไวเพื่อปรับเขา สู clock oscillator time และ frequency error โดยจะใชเวลาประมาณ 15 นาที หลังจากนั้นคาเวลาและความถี่จะถูกปรับใหเปนคาปกติและ ntpd จะเขาสูโหมดปกติ ซึ่งคาเวลาและ ความถี่จะถูกปรับตั้งใหสัมพันธกับเครื่องใหบริการตอไปหลังจากหนึ่งชั่วโมงไฟลที่กําหนดความถี่จะถูกสรางขึ้นและคาความถี่ปจจุบันก็จะถูกบันทึกเก็บไว จากนั้นถา ntpd ถูกเรียกใชงานใหมอีกครั้งและมีไฟลที่กําหนดความถี่นี้อ ยู คา ntpd frequency จะปรับใหเทากับไฟ ล ntp.drift นี้และเขาสูโหมดปกติตอไป
โหมดการทํางานของ ntpd
ntpd สามารถทํางานไดหลายโหมด ไดแ ก symmetric active /passive , client /server , broadcast /multicast และ manycast โดยปกติจะปรับคานาฬิกาไปเรื่อยๆ จนกระทั่งถึงจุดความ
แมนยําสูงสุด (ultimate precision) โดยจะพิจารณาจากการเปลี่ยนแปลงของคาความถี่ อยางไรก็ตาม ntpd สามารถทํางานในลักษณะone-timemodeไดเมื่อคาเวลาถูกตั้งโดยเปรียบเทียบจากเครื่องใหบริการภายนอกและใชคาความถี่จากคาความถี่ในครั้งกอน สวนการทํางานแบบmulticast/broadcastหรือmanycastนั้นตัวเครื่องขอใชบริการจะคํานวณหาคาที่ถูกตองและปรับเปลี่ยนคาเองโดยอัตโนมัติ
โดยปกติแลว ntpd จะถูกเรียกใชงานในโหมดตอเนื่อง (continuous) โดยตัว state machine เองจะติดตอกับเครื่องใหบริการ time server ในคาบเวลา (interval) ที่กําหนดไว และจะนํามาคํานวณหาเวลาที่ถูกตองเอง โดยปกติแลวคาบเวลาชวงแรกกําหนดไวที่ 64 วินาทีและจะเพิ่มขึ้นเปนลําดับจนถึง 1024 วินาที ในบางครั้งที่เครื่องใหบริการไมสามารถติดตอกันได คาคาบเวลาที่กําหนดไวสามารถเพิ่มขึ้นสู 1024 วินาทีไดโดยทันที
ในบางครั้ง ntpd อาจจะไมไดถูกเรียกใชงานแบบตอเนื่อง โดยอาจจะสั่งใ ห ntpdate เริ่มทํางานใน ntpdate เวลาที่กําหนดไวไดใน crontab แตโปรแกรม ntpdate นี้อาจจะไมมีความสามารถเพียงพอในการคํานวณหาคาความผิดพลาด ดังนั้นออปชัน -q จึงถูกนํามาใ ช เมื่อมีการใชออปชันนี้ ntpd จะหยุดการทํางาน หลัง -q จากการตั้งเวลาในครั้งแรก จากนั้นกระบวนการในการตั้งเวลาจะเหมือนกับโหมดตอเนื่อง โดยทั่วไปแอพลิเคชันจะกําหนดคา iburst เพื่อใหสามารถติดตอและตั้ง
คาไดภายใน 1 นาที ในกรณีที่เกิน 2 นาทีแลวยังไม iburst สามารถติดตอได ntpdate เองก็จะหยุดการทํางานไปเอง ntpdate ในระบบ Solaris, Tru64, Linux, FreeBSD นั้นเราสามารถเรียกใชงาน ntpd ในโหมดตอเนื่องในครั้งแรก จากนั้นก็จะมีการบันทึกคา frequency offsetโดยอาจจะใชเวลาเปนหลายชั่วโมงแลวใหหยุดการทํางานของntpdหลังจากนั้นก็สามารถเรียกใชงานใน one-time mode ไดตามที่ตองการ (เพราะมีไฟลที่กําหนดความถี่แลว)
Poll Interval Control
ในการลดความระยะของคาบเวลาลงนั้นจะทําใหคาเวลาที่ไดมีความแมนยํามากขึ้น แตก็ทําใหการใชงานเครือขายสูงขึ้น คาที่สามารถปรับเปลี่ยนไดคือคาเริ่มตนต่ำสุด (default minimum) ใหเปน 64 วินาทีและคาเริ่มตนสูงสุด (default maximum) ใหเปน 1024 วินาที โดยใชคําสั่ง tinker minpoll เพื่อตั้ง tinker minpol คาคาบเวลา โดยคาต่ำสุดที่เปนไปไดคือ 16 วินาที แตในบางระบบปฏิบัติการไมสนับสนุนการทํางานที่ตั้งคาคาบเวลาใหต่ำกวา 64 วินาที
ในการทํางานปกติเมื่อคาclockdisciplineมีความเสถียรแลวคาคาบเวลาจะเพิ่มทีละขั้นจากคาต่ำสุดไปเปนคาสูงสุด
ออปชันที่นิยมใชงานกับคําสั่ง ntpd
-a \ ใหทํางานในโหมด authentication (คาเริ่มตน)
-A \ ยกเลิกการทํางานในโหมด authentication
-C conffile \ อานคา configuration จากไฟลที่กําหนด
-d \ ใหทํางานในโหมด debug
-D level \ ระบุระดับการ debug
-f driftfile \ ระบุไฟลที่กําหนดความถี่ (frequency)
-g \ ใชในกรณีที่คาความแตกตางของเวลาที่เครื่องกับเครื่องใหบริการ
มากกวา 1000 วินาที และตองการให ntpd ทําการปรับคา
(เสร็จแลวก็จะหยุดการทํางาน)
-k keyfile \ ระบุไฟลที่บรรจุ NTP authentication keys
-l logfile \ ระบุ logfile (ตามปกติจะเก็บไวที่ log ของระบบ)
-L \ คอยรับคาจาก virtual IPs
-m \ ปรับคาเวลาโดยใช NTP multicast (224.0.1.1)
-n \ don't fork
-p pidfile \ ระบุชื่อไฟลที่ตองการใหเก็บคา process id
-q \ จบการทํางานหลังจากไดตั้งคาเวลาครั้งแรกเสร็จสิ้นแลว
-r broadcastdelay \ ระบุ default delay สําหรับ broadcast
-s statsdir \ ระบุไดเรกทอรีสําหรับเก็บสถิติ
-t key \ เพิ่มคา key number ลงในรายการของ trusted key
-v variable
-V variable \ เพิ่มคาตัวแปรของระบบ
-x \ ปกติแลวคาเวลาจะแกวงตัวไปมาถาคา offset ต่ำกวาคา step threshold
(128 มิลลวินาที (10 -3)) และคาเวลาจะเปน step ถาอยูในชวงของ
threshold ออปชันนี้ใชเพื่อให้เกิดการทํางานในโหมดแกวงตัวเทานั้น
ถา step threshold เปนศูนย คา offset จะเปนแบบ step โดยไมสนใจ
-x ออปชัน ปกติแลวอัตราการแกวงตัวถูกจํากัดไวที่ 0.5 มิลลิวินาที
(10-3) ตอวินาที ซึ่งใน 1 วินาที ของการปรับปรุงจะตองใชเวลาถึง
2000 วินาที ซึ่งจะเสียเวลานานมาก
ไฟลที่ใชในการกําหนดคาการทํางานของ ntpd
โดยปกติแลว ntpd จะทํางานโดยการอานคาจากไฟ ล ntp.conf เพื่อตรวจสอบแหลงที่ใชในการ เทียบคาเวลา และโหมดการทํางาน ซึ่งจะมีประโยชนสําหรับการทํางานแบบ broadcast/multicast client ปกติแลวไฟลนี้จะเก็บไวที่ /etc/ntp.confคําสั่งและออปชันจริงๆของไฟลที่ใชกําหนดคาการทํางาน นั้นมีคอนขางเยอะจึงจะอธิบายเฉพาะสวนที่ทํางานในเครื่องขอใชบริการเทานั้นโดยจะไมกลาวถึงการทํางานในโหมด multicast /broadcast/manycast และไมกลาวถึงสวนของการเขารหัสดวย เนื่องจากไมจําเปน
ตอการใชงานจริง สําหรับรายละเอียดของการกําหนดคาการทํางานใหกับ ntpd นี้ไดอธิบายไวในบท "การติดตั้งและการใชงานโปรแกรมเทียบเวลา"
ทั้งนี้ออปชันที่ตองปรับแตงของ ntpd นั้นมี 6 กลุมดวยกันคือออปชันเกี่ยวกับการ Authentication ออปชันเกี่ยวกับการ Monitoring ออปชันเกี่ยวกับการควบคุมการเขาใชงาน
ออปชันเกี่ยวกับ Reference Clock ออปชันปลีกยอยอื่นๆ และออปชันที่ใชกําหนดคาการทํางาน ทั่วไป ซึ่งจะกลาวถึงในบทตอไป
การติดต่อและการใช้งานโปรแกรมเทียบเวลา
โปรแกรมสําหรับเทียบเวลาที่มีใชงานในปจจุบันมีมากมายในรูปแบบของซอฟตแวรเพื่อใชในระบบ มีทั้งชนิดที่จําหนายและเปนซอฟตแวรฟที่ผูใชแตละคนสามารถเลือกใชไดตามระบบปฏิบัติการที่ใช้งาน และตามความตองการแบงไดเปนโปรแกรมสําหรับเครื่องใหบริการtimeserverและโปรแกรมสําหรับเครื่องขอใชบริการ ในบทนี้จะเนนถึงโปรแกรมในสวนของเครื่องขอใชบริการ ซึ่งแตละโปรแกรมอาศัยหลักการทํางานของ NTP (Network Time Protocol) ตามที่ไดอธิบายไวในบทที่ผานมาทั้งสิ้น
ขั้นตอนการทํางานหลักของโปรแกรมเทียบเวลาโดยทั่วไปประกอบดวยการถามเวลาจากเครื่องให้บริการการรับคาเวลาจากเครื่องใหบริการมาเปรียบเทียบกับเวลาในเครื่องขณะนั้น และการปรับแกคาเวลาในเครื่องการทํางานดังกลาวนี้จะเกิดขึ้นเปนรอบๆหลังจากที่ปรับแกคาเวลาในเครื่องแตละครั้งเสร็จแลว โปรแกรมจะรอชั่วขณะเพื่อที่จะเริ่มถามเวลาจากเครื่องใหบริการอีกครั้งโดยอัตโนมัติ
Network Time Protocol Daemon (ntpd)
เป็นdaemonที่ใช้ในการเทียบเวลากับเครื่องให้บริการทำการตั้งและปรับแต่งค่าเวลาให้ตรงกับเวลามาตรฐานบนเครือข่ายอินเทอร์เน็ตเทียบเวลาจากเครื่องให้บริการผ่านโปรโตคอล ntpทำงานโดยการรับเวลาจากเครื่องให้บริการแล้วคำนวณเวลาที่ถูกต้องเพื่อปรับเวลาให้เครื่องที่ขอใช้บริการ
ntpdate
เป็นคำสั่งบน Linux ที่ใช้ตั้งค่าเวลาผ่าน protocol ntpรูปแบบ # ntpdate 192.168.1.1
ต้องเรียกใช้เองทุกครั้งเมื่อต้องการตั้งเวลา หรือ ใช้ใน crontab ความน่าเชื่อถือและความถูกต้องน้อย
ntpd ดีกว่า
การตั้งค่า ntpd
ไฟล์ที่ใช้กำหนดค่าของ ntpd คือ /etc/ntp.conf ntpd เป็น daemon หลังจากแก้ไฟล์แล้วต้อง restart ใหม่โดยใช้คำสั่ง/etc/rc.d/init.d/ntpd restart ควรให้ ntpd เริ่มทำงานตอนบูทเครื่องโดยใช้คำสั่ง /sbin/chkconfig ntpd on
Global Positioning System
พัฒนาโดย กระทรวงกลาโหม ของอเมริกา ใช้เพื่อระบุพิกัดที่ตั้งและการเคลื่อนย้ายตำแหน่งทั่วโลกมีสองระดับคือ ระดับที่ประชาชนทั่วไปใช้ และระดับที่เข้ารหัสเพื่อใช้ในการทหารรับค่าเวลาจากดาวเทียมหลายดวง ซึ่งดาวเทียวแต่ละดวงจะมีค่าเวลาที่ได้จาก atomic clock แล้วมาปรับเป็นค่าเวลาที่ถูกต้องกระทรวงกลาโหม อเมริกา กำหนดให้ GPS ทั่วไปต้องมีความคลาดเคลื่อนของเวลาไม่เกิน 340 นาโนวินาที
GPS (Global Positioning System) เปนอุปกรณที่ใชในการรับสัญญาณจากดาวเทียม เพื่อรับคาเวลาและพิกัดที่ตั้ง ไดแ ก คาละติจูด (latitude) คาลองจิจูด (longitude) และคาแอลติจูด (altitude) ที่ถูก ตองมาใชงาน ขอมูลที่ไดรับจากดาวเทียมนี้มีความเที่ยงตรงมาก เนื่องจากอาศัยหลักการโคจรรอบโลกที่ แนนอนของดาวเทียมในการคํานวณ ซึ่งดาวเทียมเหลานี้จะเคลื่อนที่รอบโลกตลอดเวลาในความเร็วคงที่ 2 รอบในแตละวัน ทําใหขอมูลที่ไดจากอุปกรณ GPS สามารถบอกผูใชงานไดถึงตําแหนงที่อ ยู ณ จุดใดๆ บนพื้นโลก ความเร็วในการเคลื่อนที่และคาเวลา
ระบบการทํางานของอุปกรณ GPS
อุปกรณ GPS ถูกพัฒนาขึ้นโดยกระทรวงกลาโหม (Department of Defense) ประเทศสหรัฐอเมริกา ในชวงทศวรรษ 1970 - 1979 ใชงบประมาณหนึ่งหมื่นลานเหรียญ และยังคงพัฒนาเรื่อยมาจนถึงปจจุบัน มีจุดประสงคในการบอกพิกัดที่ตั้งและการเคลื่อนยายตําแหนงทั่วโลก เพื่อใชงานในกองทัพของสหรัฐอเมริกา อยางไรก็ตาม อุปกรณ GPS ยังไดถูกนําไปใชประโยชน
อย่างกวางขวางโดยหนวยงานอื่นๆ และประชาชนทั่วไป โดยมีระดับการใชงานอยู 2 ระดับคือ ระดับที่เปดใหประชาชนทั่วไปสามารถเขาใชงานได และระดับที่มีการเขารหัสขอมูลเพื่อใชในทางการทหาร สัญญาณของ GPS นี้เปดใหผูใชทั่วไปใชงานไดโดยอิสระ ไมจํากัดจํานวนผูเขาใชในแตละครั้ง ทั้งยังไมมีคาใชจายในการขอใชงานดาวเทียม ซึ่งการใชงานทั้งหมดนี้ถูกควบคุมและจัดการโดยกองทัพของประเทศสหรัฐอเมริกา
วัตถุประสงคสําคัญที่ทําใหเกิดเทคโนโลยีของอุปกรณ GPS คือ เพื่อใหทราบขอมูลพิกัดที่อยูและเวลาที่ถูกตองเที่ยงตรงโดยอาศัยขอมูลจากดาวเทียมแตละดวงที่ทําการประกาศคาเวลาและคาพิกัดของตัวเองออกมาอยางตอเนื่องตลอดเวลาอางอิงจากนาฬิกาชนิด atomic และขอมูลตําแหนงที่ตั้งซึ่งเก็บไวภายในดาวเทียม ตัวอุปกรณ GPS เปนตัวทําหนาที่ในการรับสัญญาณขอมูล
เหลานี้มาใ ช สําหรับสวนของการหาตําแหนงของผูใชวาอยูในพิกัดใดนั้น ตัวอุปกรณ GPS จํา
เปนจะตองไดรับสัญญาณขอมูลจากดาวเทียมอยางนอย 3 ดวงและนําขอมูลทั้งหมดที่ไดมาคํานวณหาพิกัดที่ถูกตอง
ดาวเทียมที่ใชในงาน GPS
ดาวเทียมที่ใชในงาน GPS เปนดาวเทียมที่ถูกออกแบบขึ้นมาโดยเฉพาะใหโคจรอยูในอวกาศเพื่อทําหนาที่ในการสงกระจายสัญญาณในลักษณะเดียวกันกับการสงคลื่นวิทยุ
ตามทฤษฎีแลว ระบบที่สมบูรณสําหรับใชงานจะประกอบดวยดาวเทียมจํานวน 24 ดวงโคจรรอบโลกโดยใชเวลารอบละ 12 ชั่วโมง เหนือพื้นโลกประมาณ 12,000 ไมล แตในการใชงานจริงจะมีดาวเทียมมากกวานั้นเพื่อใหดาวเทียมใหมทํางานทดแทนดาวเทียมเกาไดตลอดเวลา ทิศทางการโคจรของดาวเทียมแตละดวงจะมีเสนทางที่แนนอน ทุกๆ 24 ชั่วโมงโดยประมาณ (เร็วขึ้นวันละ 4 นาที) ดาวเทียมเหลานี้จะถูกปรับแตงคาการโคจรใหเหมาะสม มีสถานีที่ภาคพื้นดินทํา
หนาที่ในการตรวจดูและจัดการดาวเทียมทั้งหมดใหสามารถทํางานไดอยางถูกตอง ดาวเทียมเหลานี้จะเคลื่อนที่ทั้งในแบบ 2 มิติและ 3 มิติครอบคลุมทุกพื้นที่บนพื้นโลกตลอด 24 ชั่วโมง (ตามรูปที่ 3 และ 4) นั่นคือ จะมีแนวระนาบของดาวเทียมอยู 6 แนว ในแตละแนวจะมีดาวเทียมอยู 4 ดวงกระจายตัวกันโดยมีระยะหางเทากัน (แตละดวงหางกัน 60 องศา) และทํามุม 55 องศากับแนว
เสนศูนยสูตร แนวการโคจรดังกลาวนี้สงผลใหไมวาผูใชงานอยูที่ตําแหนงใดก็ตาม จะไดรับคาจากดาวเทียม 5-8 ดวง
สวนควบคุมระบบ GPS
เพื่อใหการทํางานของระบบและคาที่ไดรับจากอุปกรณ GPS เปนไปอยางถูกตอง จึงจํา
เปนจะตองมีการควบคุมการทํางานของดาวเทียมที่ใชงาน โดยสวนควบคุมนี้ประกอบดวยสถานีติดตามภาคพื้นดินที่กระจายตัวอยูตามจุดตางๆ บนพื้นโลก
สถานีภาคพื้นดินหลักที่ทําหนาที่ควบคุมและตรวจดูการทํางานของดาวเทียม GPS ตั้งอยูที่ฐานทัพอากาศ Schriever (หรือที่รูจักกันในชื่อฐานทัพอากาศ Folcon) รัฐโคโลราโด สถานีภาคพื้นดินเหลานี้จะตรวจคาสัญญาณทั้งหมดที่ไดรับมาจากรูปแบบการโคจรของดาวเทียมแตละดวง แลวนําไปคํานวณหาเพื่อปรับแตงคาการโคจรและคาเวลาที่ถูกตองในแตละชวงเวลาของดาวเทียมดวงนั้นๆ ออกมา โดยสถานีภาคพื้นดินหลักจะทําหนาที่เปนผูสงคาที่ตองการปรับแตงนี้ใหกับดาวเทียม สงผลใหคาที่ดาวเทียมสงมายังอุปกรณ GPS มีความถูกตองเที่ยงตรงอยูตลอดเวลา
สวนที่เกี่ยวของกับผูใชอุปกรณ GPS
องคประกอบที่จําเปนสําหรับผูใชงานระบบ GPS คืออุปกรณที่ใชรับสัญญาณจากดาวเทียม GPS (อุปกรณ GPS) และตําแหนงที่จะสามารถติดตอกับดาวเทียม GPS ได อุปกรณ GPS มีหนาที่ในการแปลงสัญญาณที่ไดรับจากดาวเทียมใหอยูในรูปของคาพิกัดที่อ ยู ความเร็วและ
คาเวลา ซึ่งอุปกรณ GPS จําเปนจะตองไดรับคาสัญญาณจากดาวเทียม 4 ดวง ถาหากผูใชตองการ
คาพิกัดตําแหนงทั้ง 4 มิติ (แกน X แกน Y แกน Z และคา T) คือ คาละติจูด คาลองจิจูด คาแอลติจูด และคาเวลา ผูใชจึงสามารถนําอุปกรณ GPS ไปใชไดกับการเดินทาง การหาตําแหนง การใช
เปนจุดอางอิงคาเวลา และการทําวิจัยอื่นๆ ตัวอยางการใช
งานอุปกรณ GPS ไดแก่
• นักเดินทางนิยมใชอุปกรณ GPS บอกคาตําแหนงแบบ 3 มิติ ซึ่งสามารถใชงานไดทั้งบนเรือ เครื่องบิน ยานพาหนะอื่นๆ บนทองถนน รวมไปถึงการเดินเทา
• ใชอุปกรณ GPS ในการระบุพิกัดตําแหนงที่ถูกตองเพื่ออางอิงถึงที่อ ยู ที่ตั้ง หรือความสัมพันธระหวางแตละสถานที่ สําหรับงานสํารวจ งานธรณีวิทยา การศึกษาเกี่ยวกับความเปลี่ยนแปลงของพื้นผิวโลก เปนตน
• ประโยชนของอุปกรณ GPS ที่นําไปใชอยางกวางขวางอีกขอหนึ่ง คือ ใชเปนจุด
อางอิงเวลา โดยอาศัยนาฬิกาที่มีความเที่ยงตรงสูงของตัวดาวเทียม ซึ่งไดรับการควบคุมจากสถานีภาคพื้น ดินอีกชั้นหนึ่งผูใชนิยมนําคาสัญญาณเวลาหรือคาความถี่ที่เที่ยงตรงนี้ไปใชทั้งในสวนของการสังเกตดูดวงดาวงานดานสื่อสารโทรคมนาคมและใชเปนมาตรฐานในหองทดลอง
• งานวิจัยอื่นๆ ที่อาศัยสัญญาณ GPS ในการตรวจสอบคาชั้นบรรยากาศ
ขอมูลพิกัด ความเร็วและคาเวลาที่ไดรับจากระบบ GPS
คาตําแหนงในแกนXแกนYและแกนZที่ไดรับจากดาวเทียมGPSจะถูกแปลงใหอยูในรูปของพิกัดทางภูมิศาสตร คือคาละติจูดคาลองจิจูดคาแอลติจูดซึ่งอุปกรณGPSจะคํานวณหาระยะหางระหวางตัวอุปกรณกับดาวเทียมดวยการวัดและเปรียบเทียบคาความแตกตางที่เกิดขึ้นของคาที่ใชสงและคาที่ไดรับ เมื่อนําคาที่ไดนี้จากดาวเทียมอยางนอย 3 ดวงมาผานกระบวนการคํานวณจะไดคาพิกัดดังกลาวนี้ออกมา
คาความคลาดเคลื่อนที่ไดรับจากอุปกรณ GPS
ในการใชงานสวนของผูใชอุปกรณ GPS โดยทั่วไปไมวาจะอยู ณ ตําแหนงใดบนพื้นโลก กระทรวงกลาโหม ประเทศสหรัฐอเมริกา ซึ่งเปนหนวยงานที่กําหนดมาตรฐานการใชงานอุปกรณ GPS ไดกําหนดใหคาสัญญาณที่ไดรับจากดาวเทียมจะใหคาขอมูลที่คลาดเคลื่อนไมเกินขอบเขต
ตอไปนี้
• คาในแนวระดับ คลาดเคลื่อนไมเกิน 100 เมตร
• คาในแนวดิ่ง คลาดเคลื่อนไมเกิน 156 เมตร
• คาเวลา คลาดเคลื่อนไมเกิน 340 นาโนวินาที (10 -9)
เนื่องจากความสามารถทั้งหมดที่ไดกลาวมานี้เอง ทําใหอุปกรณ GPS ไดรับการเชื่อถือจากผูใช้งานทั่วโลก ในการนํามาใชเพื่ออางอิงคาเวลาในงานตางๆ ที่ตองการความถูกตองเที่ยงตรงสูง โดยเฉพาะใชในการตั้งเวลาเครื่องใหบริการตางๆ ทั้งนี้ เวลาที่ไดรับจากอุปกรณ GPS ไดรับการยอมรับวามีมาตรฐานเดียวกันทั่วโลก และถือเปนอุปกรณที่ดีที่สุดอันหนึ่งที่ใชในการบอกคาเวลา
Stratum
การติดตอกันระหวางเครื่องคอมพิวเตอรและเครือขายนั้นเครื่องคอมพิวเตอรทุกเครื่องจําเปนจะตองมีจังหวะการทํางานที่เขากันได เพื่อทําใหการสงขอมูลไปมาระหวางกันเปนไปไดอยางราบรื่นขอมูลที่ไดรับครบถวนถูกตองการที่จะใหสัญญาณการทํางานแกเครื่องคอมพิวเตอรทุกเครื่องใหตรงกันไดนั้นจําเปนที่เครื่องทุกเครื่องจะตองมีคาเวลาของเครื่องที่ตรงกัน หมายความถึงเวลา1วินาทีในทุกๆเครื่องจะตองเทากัน(ตามความเปนจริงแลวเครื่องคอมพิวเตอรทุกเครื่องจะมีนาฬิกาในตัวเองอยู และสามารถทํางานไดโดยไมตองอาศัยการเทียบคาจากที่อื่นผูใชงานเพียงทําการตั้งคาเวลาเริ่มตนใหถูกตองเทานั้นก็สามารถใชงานได แตนาฬิกาที่อยูในเครื่องคอมพิวเตอรแตละเครื่องนี้ไมสามารถเชื่อถือได100%)ความตองการดังกลาวนี้เอง ทําใหเกิดการคิดคนสรางจุดอางอิงเวลาขึ้นเพื่อใชเปนมาตรฐานเพื่อใหเครื่องคอมพิวเตอรทุกเครื่องมาเทียบเวลาในเครื่องจากจุดนี้และนําเอาคาที่ไดรับไปปรับใชกับนาฬิกาของเครื่องแทน ในทางปฏิบัติจริงการตั้งจุดอางอิงเวลาพื่อใชเปนมาตรฐานเพียงจุดเดียวไมสามารถทําไดเนื่องจากเครื่องคอมพิวเตอรบางเครื่องอาจจะอยูหางจากจุดเทียบเวลามากทําใหการสงขอมูลที่ใชเทียบเวลาอาจใชระยะเวลามากเกินไป คาที่ไดมีโอกาสคลาดเคลื่อนสูงทําใหจําเปนตองสรางจุดอางอิงเวลาที่เปนมาตรฐานนี้ขึ้นมาหลายจุดและเพื่อใหทุกจุดไดรับคาเวลาที่ตรงกันและเชื่อถือไดจึงไดนําเอาอุปกรณ GPS(ไดกลาวถึงในหัวขอที่แลว)มาใชงานกับการเทียบเวลาใหเครื่องคอมพิวเตอรซึ่งเครื่องคอมพิวเตอรที่ไดรับคาเวลาโดยตรงจากอุปกรณGPSจะไดรับการยอมรับใหเปนจุดอางอิงเวลาที่เปนมาตรฐาน และให้เครื่องคอมพิวเตอรเครื่องอื่นๆมาเทียบเวลาจากเครื่องนี้ในทางเทคนิคจะเรียกเครื่องคอมพิวเตอรที่ใชในการอางอิงเวลาที่เปนมาตรฐานนี้วา
ความรูเบื้องตนเกี่ยวกับ Stratum
ในการใชงานจริงเกี่ยวกับเรื่องการเทียบเวลานั้น บางหนวยงานอาจไมมีอุปกรณ GPS เปน
ของตนเองทําใหไมสามารถสรางจุดอางอิงเวลามาตรฐานของตนเองขึ้นมาเองไดเครื่องคอมพิวเตอรในหนวยงานเหลานี้สามารถเทียบเวลาใหกับนาฬิกาในเครื่องไดโดยใชงานจุดอางอิงเวลามาตรฐานของหนวยงานอื่นที่มีอยูแลว แตการทําลักษณะนั้นไมสะดวกตอการใชงานแนวทางแกไขคือใหหนวยงานเหลานั้นตั้งเครื่องให้บริการขึ้นมา 1เครื่องทําหนาที่เทียบเวลาจากเครื่องคอมพิวเตอรที่เปนจุดอางอิงเวลามาตรฐานของหนวยงานอื่นที่รับคาจากอุปกรณ GPSโดยตรงแลวใหเครื่องคอมพิวเตอรเครื่องอื่นๆในหนวยงานนั้นเทียบเวลาจากเครื่องใหบริการที่ตั้งขึ้นมาแทน
จากการทํางานในรูปแบบดังกลาวนี้เองทําใหการเทียบคาเวลาเพื่อนํามาใชตั้งเปนคานาฬิกาในเครื่องคอมพิวเตอรเครื่องใดๆอาจจะไมไดนําคามาจากจุดอางอิงเวลาที่เปนมาตรฐานโดยตรงแตเปนการอางอิงผานเครื่องใหบริการอีกทีหนึ่งในทางเทคนิคกําหนดใหเรียกเครื่องใหบริการเทียบเวลาที่ไดรับคาเวลาจากอุปกรณ GPSซึ่งรับคาตรงมาจากดาวเทียมวาStratum1และถือวาStratum1นี้ใหคาเวลาที่เที่ยงตรงสูงสุดในการใชงานสวนเครื่องใหบริการเทียบเวลาที่ใชการรับคาเวลามาจากเครื่องที่เปน Stratum 1 วา Stratum 2 และหากมีเครื่องใหบริการเทียบเวลาใดใชการรับคาเวลามาจากเครื่องที่เปน Stratum 2 ก็จะเรียกเครื่องนั้นวา Stratum 3 และเรียงตอไปตามลําดับ ทําใหลักษณะการใหบริการของระบบ Stratum นี้เปนลําดับขั้นเรียงไปเรื่อยๆ โดยถาหากเปน Stratum x ที่คา x นอยกวาก็จะถือวามีความเที่ยงตรงสูงกวา ซึ่งในการใชงานจริง คาเวลาที่ยอมรับวาสามารถใชงานไดจริงจะตองเปนคาที่ไดรับจากการเทียบเวลาจากเครื่องใหบริการเวลาที่เปน Stratum 1, 2, 3 และ 4 เทานั้น ถ้ามากกวานี้จะไมไดรับการยอมรับ มาตรฐานดังกลาวนี้ถูกกําหนดโดยหนวยงาน American National Standards Institute (ANSI) ซึ่งไดตีพิมพไวในเอกสารชื่อ "Synchronization Interface Standards for Digital Network"
(ANSI/T1.101-1987) ขึ้นเผยแพรในป 1987 และไดปรับปรุงอีกครั้งเมื่อป 1998 เอกสารดังกลาวนี้ กําหนดความสามารถพื้นฐานและขอมูลที่จําเปนอื่นๆ เกี่ยวกับ Stratum ที่จะนํามาใชงานในระบบ
คาความคลาดเคลื่อนของเวลาที่อาจไดรับจากการใชงาน Stratum
นาฬิกาที่ไดรับคาเวลาจากระบบ Stratum นี้ถือวามีความเที่ยงตรงสูงมาก เนื่องจากการทํางานของระบบ Stratum จะมีขอกําหนดอยางชัดเจนวา เครื่องใหบริการที่จะจัดเปน Stratum ไดจะตองมีความสามารถในการจัดการกับคาเวลาที่ไดในระดับใดบาง
การทํางานของ Stratum 1 ระบบจะทําการตรวจสอบคาเวลาจากอุปกรณ GPS และปรับคานาฬิกาใหเครื่องดวยความถี่ของการปรับคาแตละครั้งที่สูงมาก ถาใชงาน Stratum 1 โดยที่ตัวเครื่องไมไดรับการตรวจสอบคาเวลาและปรับคานาฬิกาเลยเปนเวลา 72 วัน จะเกิดคา Slip ขึ้น 1 ครั้ง นั่นคือ เวลาที่ไดรับจะคลาดเคลื่อนไป 1 วินาที เมื่อเวลาผานไป 576,000 วัน (1577 ป) หรือในแตละวันนาฬิกาที่ใชจะคลาดเคลื่อนไป 0.0000017 วินาที (1.7 ไมโครวินาที (10 -6))
สวนStratum2ระบบจะทําการตรวจสอบคาเวลาจากStratum1และปรับคานาฬิกาใหเครื่องดวยความถี่ของการปรับคาแตละครั้งนอยกวา Stratum 1 ทําใหคาความคลาดเคลื่อนที่เกิดขึ้นสูงกวา อยางไรก็ตาม ถาใชงาน Stratum 2 โดยที่ตัวเครื่องไมไดรับการตรวจสอบคาเวลาและปรับคานาฬิกาเลยเปนเวลา 7 วัน จะเกิดคา Slip ขึ้น 1 ครั้ง นั่นคือ เวลาที่ไดรับจะคลาดเคลื่อนไป 1 วินาที เมื่อเวลาผานไป 56,000 วัน (153 ป 117 วัน) หรือในแตละวันนาฬิกาที่ใชจะคลาดเคลื่อนไป 0.000018 วินาที (18 ไม โครวินาที (10 -6))
สําหรับ Stratum 3 ระบบจะทําการตรวจสอบคาเวลาจาก Stratum 2 และนําคาที่ได
ไปปรับคานาฬิกาในเครื่องถานําไปใชงานโดยที่ตัวเครื่องไมไดรับการตรวจสอบคาเวลาและปรับคานาฬิกาเลยเปนเวลา 6 นาที จะเกิดคา Slip ขึ้น 1 ครั้ง นั่นคือ เวลาที่ไดรับจะคลาดเคลื่อนไป 1 วินาที เมื่อเวลาผานไป 48,000 นาที (800 ชั่วโมง หรือ 33 วันกับ 8 ชั่วโมง) หรือในแตละวันนาฬิกาที่ใชจะคลาดเคลื่อนไป 0.03 วินาที สวน Stratum 4 นั้น ระบบจะทําการตรวจสอบคาเวลาจาก Stratum 3 และนําคาที่ไดไปปรับ คานาฬิกาในเครื่อง โดยที่คาความคลาดเคลื่อนของเวลาที่เกิดขึ้นไมไดกําหนดไว แตยังอยูในระดับที่ ANSI ยอมรับได แตไมอนุญาตใหนําไปใชเทียบเวลาสําหรับเครื่องใหบริการอื่นๆ อีก
วิธีการในการนําเอาคาเวลาจากระบบ Stratum ไปใชงานและวิธีการเทียบเวลาจาก Stratum ระดับที่สูงกวาในระบบเครือขายคอมพิวเตอร จะทําโดยอาศัยโพรโตคอลชื่อ NTP (Network Time Protocol) และใชหลักการของเครื่องใหบริการและเครื่องขอใชบริการ ตามที่จะกลาวถึงในบทตอไป
ระดับชั้นของเครื่องเทียบเวลาเครื่องที่เทียบเวลาจาก GPS จะเรียกว่า stratum 1 ถือว่ามีเที่ยงตรงสูงมากเครื่องที่เทียบเวลาจาก stratum 1 ถัดมาจะเรียกว่า stratum 2, stratum 3, stratum 4,5,6… ไปเรื่อย ๆ แต่เวลาที่ใช้งานได้จริงจะต้องเทียบกับเครื่องที่เป็น stratum 1,2,3 และ 4 เท่านั้นจึงจะได้รับการยอมรับจาก ANSI
Stratum 1 เกิด slip 1 ครั้ง ทุก 72 วัน หรือเวลาจะคลาดเคลื่อน 1 วินาที ทุก 1,557 ปี
Stratum 2 เกิด slip 1 ครั้ง ทุก 7 วัน หรือเวลาจะคลาดเคลื่อน 1 วินาที ทุก 153 ปี 117 วัน
Stratum 3 เกิด slip 1 ครั้ง ทุก 6 นาที หรือเวลาจะคลาดเคลื่อน 1 วินาที ทุก 33 วัน 8 ชั่วโมง
Stratum 4 ไม่ได้ระบุค่าความคลาดเคลื่อน ไม่สามารถให้บริการเทียบเวลาได้อีก
Atomic Clock
พัฒนาโดย National Institute of Standards and Technology (NIST)มีความแม่นยำสูงมาก เชื่อว่าคลาดเคลื่อน 1 วินาทีใน 1 ล้านปีใช้หลักการ Quantum Mechanics หาความถี่การสั่นพ้องโดย Atomic resonator ระบุในหน่วย SI ว่า 1 วินาที เท่ากับการสั่นพ้องของอะตอมของธาตุซีเซียม 133 9,192,631,770 ครั้ง