Muuum - stratum
 

หน้าหลัก
การบ้าน
=> Resume (ประวัติส่วนตัว)
=> DSI
=> Centralized Log Server
=> stratum
=> ข่าว ICT
=> พระราชบัญญัติ
=> PS
=> Sniffer
=> HACK
แสดงความคิดเห็น

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 ครั้ง

Today, there have been 1 visitors (1 hits) on this page!
This website was created for free with Own-Free-Website.com. Would you also like to have your own website?
Sign up for free