在程序开发语言中,daytime服务的
端口号是通过网络
数据库函数getserverbyname()确定的,这个函数返回的是关于网络服务方面的资料,它们和主机资料差不多。程序会先尝试连接指定主机信息数据库里的地址,如果成功就读取daytime服务返回的信息,该信息是一个表示
UNIX时间和日期的字符串。如果测试平台是
Linux桌面操作系统,修改“/etc/xinetd.d/daytime”文件,将此文件中两个
disable的值由yes改为no,再重启计算机即可运行daytime服务。
Daytime协议(RFC867 Daytime Protocol)
本RFC规范了一个ARPA Internet community上的标准。在ARPA Internet上的所有
主机应当采用和实现这个标准。
daytime服务是基于TCP的应用,服务器在
TCP端口13侦听,一旦有连接建立就返回
ASCII形式的日期和时间(接收到的任何数据被忽略),在传送完后关闭连接。
daytime服务也可以使用UDP协议,它的端口也是13,不过UDP是用
数据报传送当前时间的。接收到的数据被忽略。
接下来我们用VB程序实现通过RFC867协议设置我们自己的计算机系统时间,为使程序简化,程序未进行日期校正,只进行时间校正。在FORM1中添加1个
Winsock控件,将下面代码剪贴到FORM1的代码
窗体中即可: