پروتکل زمان شبکه Network Time Protocol یکی از پروتکل های کاربردی شبکه می باشد که جهت همگام سازی میان سیستم های رایانه ای شبکه استفاده می شود.

NTP چیست ؟

این واژه برگرفته از Network Time Protocol است. پروتکل NTP برای هماهنگ سازی ساعت در سیستم های رایانه ای مورد استفاده قرار می گیرد. این پروتکل قدیمی به منظور هماهنگی زمانی میان کاربران و کلاینت های شبکه های کامپیوتری استفاده می گردد و نقش مهمی در شبکه های کامپیوتری دارد. نصب و راه اندازی شبکه NTP ، از ناهماهنگی زمان بین سیستم ها و بروز اختلال ناشی از یکسان نبودن تایم سیستم ها در شبکه جلوگیری می کند. وجود کوچکترین اختلاف زمان میان سیستم ها می تواند مشکلات بزرگی را در شبکه بوجود بیاورد.

نمونه هایی از این مشکلات را می توان به اختلالات در تراکنش های مالی ، ایجاد داده هایی با نسخه های قدیمی ، خطا در سینک شدن داده ها میان سرورها و … اشاره کرد.

 

پروتکل زمان شبکه

عملکرد پروتکل زمان شبکه (NTP )

پروتکل های بی شماری در دنیای شبکه های کامپیوتری وجود دارند که دسترسی کاملی به ساعت جهانی اتمی  ( Atomic Clock ) و سرویس های جی پی اس GPS Clocks دارند. اگر این پروتکل وجود نداشته باشند ، امکان هماهنگ سازی زمانی بین سیستم ها وجود ندارد.

NTP Client  توسط  NTP Server  تقاضای تبادل زمان می کند. پس از تبادل زمان ، کاربر قادر خواهد بود مؤلفه های link delay و local offset  را به آسانی محاسبه نموده و تنظیم ساعت های لوکال خود را انجام دهد تا با ساعت سرور کاملاً تطابق داشته باشد.

برای تعیین ساعت اولیه در مدت زمان 5 الی 10 دقیقه به شش مبادله مورد نیاز می باشد و این یک دستورالعمل می باشد. بعد از هماهنگ سازی کلاینت ، NTP به صورت هر ده دقیقه به روزرسانی می شود.

پروتکل زمان شبکه قادر خواهد بود زمان را در حد میلی ثانیه بر روی اینترنت نگه دارد. تبادل time stamps  با استفاده از پروتکل  UPD بر روی پورت 123 صورت می گیرد. به علاوه می توان با پخش رادیویی یا انتقال داده ها و پیغام ها از یک سیستم رایانه ای مرکزی به سایر سیستم های رایانه ای جهت این موضوع استفاده کرد.

مراحل همگام سازی در پروتکل NTP

این پروتکل از ساعت هماهنگ جهانی که UTC نام دارد برای مچ کردن زمان سیستم ها استفاده می نماید. تبادل داده ها و اطلاعات میان سرور و کلاینت به صورت زیر می باشد.

کلاینت تقاضای NTP ( پروتکل زمان شبکه ) را به سرور فرستاده و زمان آن را تصدیق می نماید.

سرور با تأیید و تصدیق زمان پکیج ارسالی به تقاضای کلاینت پاسخ می دهد.

کاربر مجدداً زمان دریافت پکیج پاسخی را تصدیق می کند.

این مراحل به ظاهر پیچیده ، بسیار سریع و به آسانی انجام می شود. چنانچه تأخیری در این ارسال و دریافت ها بوجود بیاید ، timestamp این تأخیر و تفاوت میان زمان خود و زمان سرور را آنالیز می کند تا در صورت وجود خطا به تنظیم مجدد ساعت بپردازد.

 

پروتکل زمان شبکه

UTC چیست ؟

توضیح دادیم که پروتکل زمان شبکه از ساعت هماهنگی جهانی (UTC ) برای هماهنگی زمان سیستم های شبکه استفاده می کند. UTC مخفف Universal Time Coordinated است. ساعت هماهنگ جهانی به میزان 0.9 میلی ثانیه با ساعت گرینویچ اختلاف دارد.

در UTC ازGPS   ( سیستم موقعیت یاب جهانی ) و ابزارهای رادیویی که قیمت بسیار بالایی دارند ، استفاده می گردد. به دلیل آنکه تجهیزات و ابزارهای مورد استفاده در UTC بسیار گران می باشند ، به کارگیری آنها برای تمامی سیستم های رایانه ای مقدور نمی باشد. لذا ضرورت استفاده از پروتکل NTP مشخص می گردد.

ویژگی های مهم پروتکل زمان شبکه NTP

NTP  با استفاده از یک ساعت مرجع تمامی فرآیندهای هماهنگ سازی را انجام می دهد. تمامی ساعت ها و تایم ها با این زمان مچ و هماهنگ می شوند.

NTP کاملاً مقیاس پذیر و بسیار دقیق می باشد. برای نصب و راه اندازی شبکه همگام سازی ، ممکن است چندین ساعت مرجع وجود داشته باشند. هر گره شبکه می تواند داده ها و اطلاعات مربوط به زمان را در یک فرآیند سلسله مراتبی دو سویه یا یک سویه انتقال دهد.

NTP قادر خواهد بود ایرادات اتصالات موقت شبکه را رفع نماید.

پروتکل زمان شبکه NTP به صورت اتوماسیون و خودکار ، به جستجوی برترین منابع زمانی به منظور استفاده برای هماهنگ سازی می پردازد.