複製鏈接
請複製以下鏈接發送給好友

DAYTIME

鎖定
DAYTIME這種時間傳輸協議廣泛的被運行MS-DOS和類似的操作系統的小型計算機使用,該協議不指定固定的傳輸格式,只要求按照ASCII標準發送數據。
外文名
DAYTIME
英文原義
Daytime Protocol
中文釋義
日期查詢協議
廣泛使用
操作系統的小型計算機

目錄

DAYTIME服務

在程序開發語言中,daytime服務的端口號是通過網絡數據庫函數getserverbyname()確定的,這個函數返回的是關於網絡服務方面的資料,它們和主機資料差不多。程序會先嚐試連接指定主機信息數據庫裏的地址,如果成功就讀取daytime服務返回的信息,該信息是一個表示UNIX時間和日期的字符串。如果測試平台是Linux桌面操作系統,修改“/etc/xinetd.d/daytime”文件,將此文件中兩個disable的值由yes改為no,再重啓計算機即可運行daytime服務。

DAYTIME協議

Daytime協議(RFC867 Daytime Protocol)
本RFC規範了一個ARPA Internet community上的標準。在ARPA Internet上的所有主機應當採用和實現這個標準。
一個有用的測量和調試工具就是daytime服務。它的作用就是返回當前時間和日期,格式是字符串格式。
* 基於TCP的daytime服務
daytime服務是基於TCP的應用,服務器在TCP端口13偵聽,一旦有連接建立就返回ASCII形式的日期和時間(接收到的任何數據被忽略),在傳送完後關閉連接。
* 基於UDP的daytime服務
daytime服務也可以使用UDP協議,它的端口也是13,不過UDP是用數據報傳送當前時間的。接收到的數據被忽略。
* Daytime格式
對於daytime沒有特定的格式,建議使用ASCII可打印字符,空格和回車換行符。daytime應該在一行上。
下面是兩種流行的格式:
一種流行的格式是:Weekday, Month Day, Year Time-Zone
例子:Tuesday, February 22, 1982 17:37:43-PST
另一種流行的格式用於SMTP中:dd mmm yy hh:mm:ss zzz
例子:02 FEB 82 07:59:01 PST
注意:對於機器來説,有用的時間採用了時間協議(Time Protocol RFC-868)
接下來我們用VB程序實現通過RFC867協議設置我們自己的計算機系統時間,為使程序簡化,程序未進行日期校正,只進行時間校正。在FORM1中添加1個Winsock控件,將下面代碼剪貼到FORM1的代碼窗體中即可:
Option Explicit
'採用RFC867 Daytime協議獲取標準時間例程
中科院國家授時中心,採用北京時間
'時間格式:Mon Jul 26 09:58:57 2004
美國標準技術院,採用格靈威時間
'時間格式:53212 04-07-26 02:00:12 50 0 0 488.3 UTC(NIST) *
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)