时间计算机网络论文基于CS的时间同步服务器的实现

cs服务器  时间:2021-01-30  阅读:()

武汉理工大学

计算机网络 课程论文题 目 基于C/S的时间同步服务器的实现

作 者

学 院

专 业

学 号

指 导

教 师 李方敏

二〇一六年四月十一日

武汉理工大 学信息工程学院课程论文诚信声

本人声明所呈交的课程论文是本人在指导老师的指导下独立开展工作所取得的成果成果不存在知识产权争议除文中已经注明引用的内容外本课程论文不含任何其他个人或集体已经发表或创作过的作品成果。对本文工作做出重要贡献的个人和集体均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。

本科课程论文作者签名

二〇一六年四月十一日

摘要

计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备通过通信线路连接起来在网络操作系统 网络管理软件及网络通信协议的管理和协调下实现资源共享和信息传递的计算机系统。本次计算机网络的论文题目为基于C/S的时间同步服务器的实现。时间服务器是在局域网中作为发布统一时间的服务器它利用电脑网络把时间信息传递给用户。参照现有的时间服务器的原理以及效果实现一个时间服务器的服务端和客户端。服务器端开放指定的端口发布时间 到网络中其他客户端从网络中获取该时间并将本地时间与之同步。本次设计以VisualStudio 2010为开发平台从选题背景方案论证过程论述结果分析和结论总结五方面来论述本次设计的观点的过程。

关键词时间同步 客户端 服务端 TCP/I P

目录

一选题背景. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

1.1 问题提出. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

1.2软件使用. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

1.3预期目标. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

二方案论证. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

三过程论述. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3.1相关原理. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3.2设计过程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3.3算法流程图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

四结果分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

五结论总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

附录一程序源代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

致谢. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

课程论文成绩评定表. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

计算机网络论文《基于C/S的时间同步服务器的实现》

一选题背景

1.1问题提出

对于一个由计算机组成的系统中其中各个节点计算机都有自己的额

系统时间计算机网络控制系统中各子系统时间段额一致性是网络控制系统中的核心问题之一 它的准确性对网络控制系统的实时性和准确性有重大影响。但是由于在运行中受到设计缺陷、环境温度变化、电磁干扰、负载等多种因素的影响 计算机的时钟大多是不精确的随着时间的

推移这种误差逐渐累积时间的偏差将越来越大。在一些重要 的应用中(如实时数据采集、监控、工业控制网络以及电信 等) 时间的准确性要求更为严格和苛刻 因此时间同步变得尤为重要并且实现一个精确地系统时间变得更加重要。时间同步的实现方法常见的有硬件和软件的

方法硬件同步是通过各仿真节点都连入专用的时钟信号线来完成的它的精度相对来说比较高但成本也高 操作相对比较复杂软件同步方法是完全利用软件来完成分布式系统中各时钟的 同步。对于软件同步的方法 目前常用的 时间协议有NTP协议、 SNTP协议以及PT P协议等。对于这些时间同步协议的一般实现方法是通过计算机网络等方式通讯实现的但是由于计算机网络的 一些潜在的威胁如偶然或恶意的原因遭到破环、更改、泄露是网络系统不能连续可靠性的正常运行从而导致时间同步系统不能正常的运转。 由于资源和时间有限本次基于C /S的时间同步服务器的实现先采用软件的方法来实现。

1.2软件使用

基于C/S的时间同步服务器的实现运用Vis ualStudio2010来实现。Visua l Studi o2010是微软公司推出的开发环境是目前最流行的Windows平台应用程序开发环境。Visual Studi o 2010的C++编译器现在支持lam bda表达式、右值引用 rvalu erefe rence s 、编译时断言 compile- timea ssert ions  、表达式类型发现expre ssion typed iscov ery和C++0X标准的 自动类型d educt ion。VisualStudio2010的C++编译器有一

种模式可以向后兼容V isual Studi o2008的 工具和类库。这会给开发者的个人升级提供很大的方便即使团队中有其他人还不想切换到VisualStudio2010。在Visua lStudi o的任何版本中都可以创建和使用文本模板无需任何其他组件。在引入了预处理文本模板的Visua l Studi o2010 中从应用程序生成任何类型的文本文件已变得更加容易。还通过

1

计算机网络论文《基于C/S的时间同步服务器的实现》

与生成系统的更好集成改进了对代码集成的支持从而使生成的源代码始终会在对源模型进行任何更改后保持更新。VisualStudio2010是一个功能强大的可视化软件开发工具。Visual Studio 2010对网络编程有socket支持WinIn et支持MAPI和ISAPI支持等。其中Windo ws Socke tsAPI是T CP/IP网络环境里也是Int ernet上进行开发最为通用的API。在TCP/IP网络通信环境下Socke t数据传输是一种特殊的I/O它也相当于 一种文件描述符具有一个类似于打开文件的函数调 用 Sock et() 。Socke t是面向客户/服务器模型而设计的针对客户和服务器程序提供不同的 Socke t系统调用 。客户随机申请一个So cket 相当于一个想打电话的人可以在任何一台入网 电话上拨号呼叫 系统为之分配一个Socket号 服务器拥有全局公认的 Socke t 任何客户都可以向它发出连接请求和信息请求 相当于一个被呼叫的电话拥有一个呼叫方知道的电话号码 。 Socke t利用客户/服务器模式巧妙地解决了进程之间建立通信连接的问题。服务器So cket半相关为全局所公认非常重要。读者不妨考虑一下两个完全随机的用户进程之间如何建立通信假如通信双方没有任何一方的So cket固定就好比打电话的双方彼此不知道对方的电话号码要通话是不可能的。

1.3预期目标

本次设计以Visua lStudi o2010为开发平台基于C/S的时间同步服务器的实现。时间服务器是在局域网 中作为发布统一时间的服务器它利用电脑网络把时间信息传递给用户。参照现有的 时间服务器的原理以及效果实现一个时间服务器的服务端和客户端。服务器端开放指定的端口发布时间到网络中其他客户端从网络中获取该时间并将本地时间与之同步。给出相关的原理、设计思想和设计过程画出时间同步服务器端与客户端的算法流程图 实现服务器端和客户端 并给出使用说明测试服务器端与客户端 写出测试结果。

二方案论证

Cl ien t/Serve r结构的关系数据库系统因为具有高性能、 高效率、开放、易扩充、可伸缩等优越的特性,所以得到了广泛的应用 。 在Cl ien t/Serv er结构的关系数据库应用 系统中 ,不乏这样的应用:要求用户在客户端中插入、修改数据时 ,要在数据库的相应表中记录这些数据插入、修改的时间以供统计分析使用。为了保证今后按时间进行的统计分析的准确性,各个客户端向数据库服务器DBMS提供的必须是统一的 时间。硬

2

计算机网络论文《基于C/S的时间同步服务器的实现》

件同步是通过各仿真节点都连入专用的时钟信号线来完成的它的精度相对来说比较高但成本也高 操作相对比较复杂软件同步方法是完全利用软件来完成分布式系统中各时钟的 同步。软件同步相对于硬件同步来说简单、快捷、方便、易用适合我们学生党来做计算机网络的相关研究效果比较好 所以此次试验采用Vi sualStudio2010为平台基于C/S的时间同步服务器的实现。

三过程论述

3.1相关原理

根据连接启动的方式以及本地套接字要连接的 目标套接字之间 的连接过程可以分为三个步骤服务器监听 客户端请求 连接确认。

 1 服务器监听 是服务器端套接字并不定位具体的客户端套接字而是处于等待连接的状态实时监控网络状态。

 2客户端请求 是指由客户端的套接字提出连接请求要连接的目标是服务器端的套接字。为此客户端的套接字必须首先描述它要连接的服务器的套接字 指出服务器端套接字的地址和端口号然后就向服务器端套接字提出连接请求。

 3连接确认是指当服务器端套接字监听到或者说接收到客户端套接字的连接请求 它就响应客户端套接字的请求建立一个新的线程把服务器端套接字的描述发给客户端一旦客户端确认了此描述连接就建立好了。而服务器端套接字继续处于监听状态继续接收其他客户端套接字的连接请求。

NTP的基本工作原理如下图所示。Devic eA和Dev ice B通过网络相连它们都有自 己独立的系统时钟需要通过N TP实现各自系统时钟的自动同步。为便于理解 作如下假设 

 在Devi ce A和Dev ice B的系统时钟同步之前 Devic e A的时钟设

定为10:00:00amDevic e B的时钟设定为1 1 :00:00am。

 Devic e B作为NT P时间服务器即Devi ce A将使自己 的时钟与Device B的时钟同步。

 NTP报文在Devi ce A和Dev ice B之间单向传输所需要的时间为1

秒。

3

计算机网络论文《基于C/S的时间同步服务器的实现》

图1NTP协议工作原理图

 Devic e A发送一个NTP报文给Devi ce B该报文带有它离开Device A时的时间戳该时间戳为 10:00:00amT1 。

 当此NTP报文到达D evice B时Devic e B加上自己 的时间戳该时间戳为 1 1 :00:01amT2。

 当此NTP报文离开D evice B时Devic e B再加上自 己的时间戳 该时间戳为 1 1 :00:02amT3。

 当 Devi ce A接收到该响应报文时  Devic e A 的本地时 间为

10:00:03amT4。

至此Devic e A已经拥有足够的信息来计算两个重要的参数  NTP报文的往返时延Delay =T4-T1  - T3-T2=2秒。

 Devic e A相对De vice B的时间差offse t= T2-T1 +T3-T4  /2=1小时。

3.2设计过程

在局域网中有很多应用软件为了协同工作需要保证客户机上时间统一方法是客户机从一个时间相对正确的服务器读取时间以此来校正本地时间。按照C/S模型建立 一个时间同步服务器此系统分为服务器端

4

计算机网络论文《基于C/S的时间同步服务器的实现》

Serve r 和客户端Cl ien t  分别对服务器端和客户端进行算法设计和软件编程使其各自都能进行编译 能够同时运行使其服务器 端Serve r 按照时间协议的要求进行正常运转 向客户端Cl ien t 发送时间同步请求此时客户端Cl ien t 正在等待服务器端Serve r 发来时间同步请求待客户端Cl ien t 收到请求之后按照相应的设计的算法进行时间同步。这就达到了 时间同步的 目的。

3.3算法流程图

5

青云互联:洛杉矶CN2弹性云限时七折,Cera机房三网CN2gia回程,13.3元/月起

青云互联怎么样?青云互联是一家成立于2020年6月份的主机服务商,致力于为用户提供高性价比稳定快速的主机托管服务,目前提供有美国免费主机、香港主机、香港服务器、美国云服务器,让您的网站高速、稳定运行。目前,美国洛杉矶cn2弹性云限时七折,美国cera机房三网CN2gia回程 13.3元/月起,可选Windows/可自定义配置。点击进入:青云互联官网青云互联优惠码:七折优惠码:dVRKp2tP (续...

UCloud新人优惠中国香港/日本/美国云服务器低至4元

UCloud优刻得商家这几年应该已经被我们不少的个人站长用户认知,且确实在当下阿里云、腾讯云服务商不断的只促销服务于新用户活动,给我们很多老用户折扣的空间不多。于是,我们可以通过拓展选择其他同类服务商享受新人的福利,这里其中之一就选择UCloud商家。UCloud服务商2020年创业板上市的,实际上很早就有认识到,那时候价格高的离谱,谁让他们只服务有钱的企业用户呢。这里希望融入到我们大众消费者,你...

HostNamaste$24 /年,美国独立日VPS优惠/1核1G/30GB/1Gbps不限流量/可选达拉斯和纽约机房/免费Windows系统/

HostNamaste是一家成立于2016年3月的印度IDC商家,目前有美国洛杉矶、达拉斯、杰克逊维尔、法国鲁贝、俄罗斯莫斯科、印度孟买、加拿大魁北克机房。其中洛杉矶是Quadranet也就是我们常说的QN机房(也有CC机房,可发工单让客服改机房);达拉斯是ColoCrossing也就是我们常说的CC机房;杰克逊维尔和法国鲁贝是OVH的高防机房。采用主流的OpenVZ和KVM架构,支持ipv6,免...

cs服务器为你推荐
软银赛富请问如何投资私募股权?在哪买?盗版win8.1升级win10win8.1能升级正版win10吗985和211哪个好高校是985一般专业还是211好专业?闪迪和金士顿哪个好u盘是金士顿好还是闪迪好?宝来和朗逸哪个好大众朗逸和宝来,哪个好点?炒股软件哪个好请问有什么好用的免费股票软件?手机音乐播放器哪个好哪种手机音乐播放器最好播放器哪个好播放器哪个好用空间登录页面怎样用网页登录到自己的QQ空间?dns服务器有什么用DNS服务器有什么做用
域名服务器的作用 中国域名交易中心 x3220 singlehop bbr godaddy支付宝 12306抢票攻略 小米数据库 天互数据 刀片服务器是什么 工信部icp备案号 789电视 网站木马检测工具 赞助 nerds 百度云1t 卡巴斯基破解版 双线机房 可外链的相册 国外免费云空间 更多