一种实现网络设备与时间服务器同步的方法

文档序号:7867440阅读:228来源:国知局
专利名称:一种实现网络设备与时间服务器同步的方法
技术领域
本发明涉及通信与互联网技术领域,尤其涉及一种实现网络设备与时间服务器同步的方法。
背景技术
目前,随着网络技术和网络设备的发展,无论是设备还是网络协议都需要支持更加智能化的功能,尤其是在网络时钟同步方面,要求更加精准,即网络必须能够提供精确的时钟信息,才能够得到更加准确和高质量的网络服务。
现有技术中,主要采用NTP (Network Time Protocol)技术来解决目前互联网的时钟同步问题;其中,NTP是由美国特拉华大学的戴维 米尔斯(David L. Mills)教授开发,主要是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等)做同步化,具有能提供闻精准度的时间校正(LAN上与标准间差小于I晕秒,WAN上与标准间差为几十毫秒),且可由加密确认的方式来防止恶毒的协议攻击等优点, 所以已经成为目前全球互联网上公认的时钟同步工具。
随着网络在不停的发展,相应的网络设备也在不停的更新,以适应更加合理化和智能化的网络进程;虽然,现有的NTP已经实现了网络时钟同步,但其不够智能化,只能够在客户端已经获取到服务地址的情况下才能进行时钟同步的信息交互过程,若没有人为在客户端预设服务端的地址,则客户端就无法完成时间同步。基于此,在客户端没有预设网络中任何一台服务器地址的情况下,能够主动的动态获取到服务器地址,进而进行网络设备和时间服务器的同步过程,已经成为当前亟待解决的技术难题。发明内容
针对现有的系统中存在的上述问题,现提供一种能够实现不用在网络设备上预设服务器地址的情况下,通过网 络设备广播的方式向网络中发送发现消息,以获取网络中时间服务器的地址,进而实现网络设备时间同步的过程。
本发明的目的是通过下述技术方案实现的
本发明提供了一种实现网络设备与时间服务器同步的方法,其中,包括以下步骤
一网络设备在没有获取服务器地址的前提下以广播方式向服务器发送discover 报文;
接收到所述discover报文的部分服务器发送offer报文至所述网络设备;
若所述网络设备没有接收到offer报文,则重新以广播方式向服务器发送 discover报文,直至该网络设备接收到由部分服务器发送的offer报文;
若所述网络设备接收到offer报文,则选择最先发送offer报文的服务器为目的服务器,并向所述目的服务器发送request报文,继续时间同步过程。
上述的实现网络设备与时间服务器同步的方法,其中,还包括
所述目的服务器接收到所述request报文后,向所述网络设备发送携带确认报文;所述网络设备接收到所述确认报文后,向所述目的服务器发送NTP报文;所述目的服务器接收到所述NTP报文后,发送响应报文至所述网络设备。上述的实现网络设备与时间服务器同步的方法,其中,还包括所述目的服务器接收到所述request报文后,向所述网络设备发送ACK消息;所述网络设备接收到所述ACK消息后,向所述目的服务器发送SynReq报文;所述目的服务器接收到所述SynReq报文后,向所述网络设备发送响应response(SynResp)消息。 上述的实现网络设备与时间服务器同步的方法,其中,所述服务器和所述网络设备在发送一个信息后,并于接收下一个信息前,一直处于等待状态。上述的实现网络设备与时间服务器同步的方法,其中,接收到discover报文的服务器为安装有TCP/IP协议的主机。上述的实现网络设备与时间服务器同步的方法,其中,发送offer报文的服务器均为时间服务器,且均以单播的方式向所述网络设备发送数据。上述的实现网络设备与时间服务器同步的方法,其中,所述网络设备与所有所述服务器均设置在同一局域网内。上述的实现网络设备与时间服务器同步的方法,其中,所述网络设备以广播的方式向目的服务器发送request报文。综上所述,本发明一种实现网络设备与时间服务器同步的方法,网络设备通过广播的方式查询到时间服务器地址,以进一步实现网络设备和服务器之间的时间同步,省去了在网络设备上预设时间服务器地址步骤,提高了网络及设置在该网络中网络设备时间同步的自主能动性和智能化。


图1为本发明实施例中网络设备与服务器之间的交互过程示意图;图2为本发明实施例中网络设备与服务器之间的交互流程示意图;图3为本发明实施例中网络设备与服务器之间的交互的所有报文的格式示意图。
具体实施例方式下面结合附图对本发明的具体实施方式
作进一步的说明图1为本发明实施例中网络设备与服务器之间的交互过程示意图,图2为本发明实施例中网络设备与服务器之间的交互流程示意图,图3为本发明实施例中网络设备与服务器之间的交互的报文格式。如图1-2所示,一种实现网络设备与时间服务器同步的方法,应用于同一网络中如设定的同一局域网内,没有预先设定对应的时间服务器地址的网络设备在进行时间同步时首先,网络设备端以广播方式定时向局域网中发送发现服务器的discover报文后,处于等待状态;其中,该局域网中的所有安装有T CP /1P协议的主机均会接收到该discover 报文。
其次,收到网络设备端发送的discover报文的所有服务器均会以单播的方式向发送上述discover报文的网络设备发送一个offer报文后,也设置为等待状态;其中,发送 offer报文的服务器均为时间服务器。
然后,若网络设备端在预设的时间内没有接收到offer报文,则会重新以广播方式再次向局域网发送发现服务器的discover报文后,设置为等待状态,直至接收到offer 报文为止;若网络设备端接收到offer报文则终止发送discover报文信息,并选择最先发送offer报文的服务器为目的服务器(若只接收到一个offer报文则直接以发送该offer 报文的服务器为目的服务器),并以单播的方式向目的服务器发送request报文,即表示该服务器已经被网络设备端(客户端)选中,后续会以该服务器提供的时间为基准进行时间同止 /J/ O
之后,目的服务器接收到request报文后,向网络设备发送一个ACK确认信息,即表示该目的服务器已经和网络设备建立链接,并通知网络设备端可以发送时间同步的请求信息以实现网络设备的时间同步过程。
最后,网络设备在收到目的服务器发送的ACK消息后,发送一个时间同步请求的 SynReq报文(时间同步请求消息)给目的服务器,目的服务器在接收到SynReq报文后回应一个相应response消息,进而完成网络设备与该目的服务器之间时间同步过程。
进一步的,上述网络设备在确定了目的服务器之后,除网络设备以广播的方式发送request报文至目的服务器外,与该目的服务器之间的数据交换均以单播的方式进行。
具体的,本实施例一种实现网络设备与时间服务器同步的方法,主要分为发现阶段、响应阶段、选择阶段、确认及同步阶段。
发现阶段为网络设备寻找时间服务器的阶段;由于NTP机制的网络设备是需要预设时间服务器的IP地址的,其不能够自主的发现和学习时间服务器的IP地址,所以当网络设备上没有预设对应时间服务器的IP地址时,网络设备就会通过广播的方式发送发现时间服务器的Discover报文,虽然网络中连接的每一台安装有TCP/IP协议的主机都会接受至IJ这种广播消息,但只有时间服务器才会做出响应。
响应阶段为时间服务器响应网络设备的阶段;如果该局域网中有时间服务器,则所有收到discover消息的时间服务器会以单播方式向网络设备端发送回复消息(offer报文);而如果局域网中没有时间服务器,即在一定时间段内网络设备没有收到时间服务器的回复消息,该网络设备会自动重新退回到发现阶段步骤。
选择阶段为网络设备端选择一个时间服务器并以其为基准,准备进行网络设备精准校时的阶段;由于可能会收到不止一个时间服务器的回复报文,所以网络设备端会选择最先到达的回复报文的时间服务器作为目的服务器,并以广播的方式回复一个request报文至目的服务器,该request报文中包含上述目的时间服务器的信息,即收到的第一个回复报文的时间服务器的相关信息;其中,网络设备之所以以广播方式回复一个request报文至目的服务器和其他发送offer报文的服务器,是为了通知其他的时间服务器该网络设备将选择该目的服务器进行网络设备精准校时。
确认及同步阶段为确认网络设备与目的服务器之间建立链接并进行时间同步的阶段;由于只有被选中的时间服务器(目的服务器)才会对接收到的request报文做出响应,即该目的服务器向网络设备端发送一个ACK报文来告知网络设备端可以与其开始进行网络设备精准校时;网络设备在收到目的服务器发送的ACK消息后,会发送一个时间同步请求的SynReq报文至目的服务器,且目的服务器在收到来自网络设备端的SynReq报文后, 会回复一个响应报文(SynResp报文)至网络设备,当网络设备端收到SynResp报文后会通过相应的时间同步算法实现精准校时。
图3为本发明实施例中网络设备与服务器之间的交互的所有报文的格式示意图; 上述的各种报文数据均采用如图3所示的报文格式,该报文格式中具体含义为
* LI Leap Year Indicator,跳跃指不器;
* VN Version Number,版本号;
* Mode :模式;
* Stratum :层级;
* Poll :Poll Interval,有符号整数表示连续信息间的最大间隔;
* Precision :有符号整数表示本地时钟精确度;
* Root Delay :有符号固定点序号表示主要参考源的总延迟,很短时间内的位15 到16间的分段点;
* Root Dispersion :无符号固定点序号表不相对于主要参考源的正常差错;
* Reference Identifier :识别特殊参考源。
综上所述,本发明一种实现网络设备与时间服务器同步的方法,通过网络设备广播的方式向网络中发送发现消息,以获取网络中时间服务器的地址,以进一步实现网络设备和服务器之间的时间同步,省去了在网络设备上预设时间服务器地址步骤,使得网络设备时间的管理和维护更加简洁,同时提高了网络及设置在该网络中网络设备时间同步的自主能动性和智能化。
通过说明和附图,给出了具体实施方式
的特定结构的典型实施例,基于本发明精神,还可作其他的转换。尽管上述发明提出了现有的较佳实施例,然而,这些内容并不作为局限。
对于本领域的技术人员而言,阅读上述说明后,各种变化和修正无疑将显而易见。 因此,所附的权利要求书应看作是涵盖本发明的真实意图和范围的全部变化和修正。在权利要求书范围内任何和所有等价的范围与内容,都应认为仍属本发明的意图和范围内。
权利要求
1.一种实现网络设备与时间服务器同步的方法,其特征在于,包括以下步骤一网络设备在没有获取服务器地址的前提下以广播方式向服务器发送discover报文;接收到所述discover报文的部分服务器发送offer报文至所述网络设备;若所述网络设备没有接收到offer报文,则重新以广播方式向服务器发送discover报文,直至该网络设备接收到由部分服务器发送的offer报文;若所述网络设备接收到offer报文,则选择最先发送offer报文的服务器为目的服务器,并向所述目的服务器发送request报文,继续时间同步过程。
2.根据权利要求1所述的实现网络设备与时间服务器同步的方法,其特征在于,还包括所述目的服务器接收到所述request报文后,向所述网络设备发送携带确认报文; 所述网络设备接收到所述确认报文后,向所述目的服务器发送NTP报文;所述目的服务器接收到所述NTP报文后,发送响应报文至所述网络设备。
3.根据权利要求1所述的实现网络设备与时间服务器同步的方法,其特征在于,还包括所述目的服务器接收到所述request报文后,向所述网络设备发送ACK消息;所述网络设备接收到所述ACK消息后,向所述目的服务器发送SynReq报文;所述目的服务器接收到所述SynReq报文后,向所述网络设备发送响应response (SynResp)消息。
4.根据权利要求1-3中任意一项所述的实现网络设备与时间服务器同步的方法,其特征在于,所述服务器和所述网络设备在发送一个信息后,并于接收下一个信息前,一直处于等待状态。
5.根据权利要求1所述的实现网络设备与时间服务器同步的方法,其特征在于,接收到discover报文的服务器为安装有TCP/IP协议的主机。
6.根据权利要求1所述的实现网络设备与时间服务器同步的方法,其特征在于,发送 offer报文的服务器均为时间服务器,且均以单播的方式向所述网络设备发送数据。
7.根据权利要求1所述的实现网络设备与时间服务器同步的方法,其特征在于,所述网络设备与所有所述服务器均设置在同一局域网内。
8.根据权利要求1所述的实现网络设备与时间服务器同步的方法,其特征在于,所述网络设备以广播的方式向目的服务器发送request报文。
全文摘要
本发明涉及通信与互联网技术领域,尤其涉及一种能够实现不用在网络设备上预设服务器地址的情况下,通过网络设备广播的方式向网络中发送发现消息,以获取网络中时间服务器的地址,以进一步实现网络设备和服务器之间的时间同步,省去了在网络设备上预设时间服务器地址步骤,提高了网络及设置在该网络中网络设备时间同步的自主能动性和智能化。
文档编号H04J3/06GK103023596SQ20121051281
公开日2013年4月3日 申请日期2012年12月4日 优先权日2012年12月4日
发明者刘莎, 杨海涛, 马时新, 崔鹏 申请人:上海斐讯数据通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1