网络时间协议的研究与实现
【摘要】:
本文主要研究了网络时间协议(Network Time Protocol,NTP)的整体结构和相关问题,对协议中的关键部分——钟驯化模块,应用了新的算法,并加以实现。
文中首先介绍了网络时间协议的基本内容,对协议中的数据类型、结构、模型和运行模式等方面做了详细说明。接着分析了计算机时钟模型,包括早期的模糊球时钟模型和现在的Unix时钟模型,并建立了通用的本地钟数学模型。在模型基础上确定了两种锁相环模型,对网络时间协议存在的误差源及误差范围做了量化分析。文中还对网络时间协议中用到的算法如数据滤波、钟选择、钟合并和环路滤波等算法做了分析说明,其中对环路滤波算法即钟驯化算法做了详细研究,比较了几种不同类型的驯化算法的优缺点,用新的混合算法弥补了它们存在的缺点,并做了一定程度的改进。
为了使时钟服务器的时钟精度达到更高的精度,用传统的系统调用宋完成计算机时钟的调整和偏移会造成时钟精度的不稳定,并且增加了复杂性,因此需要在操作系统内核创造新的系统调用来完成时钟调整。本论文中在Unix内核中使用新的系统调用将驯化算法在内核中实现。这些新的系统调用对钟的时间和频率修正更有效,精度更高,这样就提高了时钟服务器的精度,可以为用户提供较高精度的时间源,以便满足各种时间要求。