CN109194432B - 一种kvm下多虚拟机时间同步系统 - Google Patents

一种kvm下多虚拟机时间同步系统 Download PDF

Info

Publication number
CN109194432B
CN109194432B CN201810917948.1A CN201810917948A CN109194432B CN 109194432 B CN109194432 B CN 109194432B CN 201810917948 A CN201810917948 A CN 201810917948A CN 109194432 B CN109194432 B CN 109194432B
Authority
CN
China
Prior art keywords
ptp
time
time synchronization
interface
kvm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810917948.1A
Other languages
English (en)
Other versions
CN109194432A (zh
Inventor
王浩
余新胜
宣志祥
于楠
张南
顾燕飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CETC 32 Research Institute
Original Assignee
CETC 32 Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CETC 32 Research Institute filed Critical CETC 32 Research Institute
Priority to CN201810917948.1A priority Critical patent/CN109194432B/zh
Publication of CN109194432A publication Critical patent/CN109194432A/zh
Application granted granted Critical
Publication of CN109194432B publication Critical patent/CN109194432B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Electric Clocks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供了一种KVM下多虚拟机时间同步系统,其特征在于,包括:输入模块:其用于接收PTP服务器端发过来的同步报文;处理模块:进行PTP网卡对时协议处理;输出模块:为虚拟机提供时间同步后台守护进程(chronyd)获取宿主机系统时间。本发明将PTP高精度对时系统的使用从单机环境扩展到多虚拟机间的时间同步,解决了虚拟机采用NTP时间同步精度在毫秒级别精度差的问题,为高性能计算和云服务等时间要求严格的服务提供准确时间保障。

Description

一种KVM下多虚拟机时间同步系统
技术领域
本发明涉及网络通信系统领域,尤其涉及到一种KVM下多虚拟机时间同步系统。
背景技术
PTP的典型应用领域是测量和控制系统、工业自动化、电力系统以及分布式运动控制系统。时间统一,是分布在不同位置的设备和系统协同工作的基础。PTP是精确网络时钟同步协议,当网卡硬件支持PTP的时候,能达到微秒级的对时精度,比NTP要更加的精确。但是虚拟化环境,希望运行在宿主机上的所有的虚拟机能从宿主机获取高精度的时间,这引入了KVM下多虚拟机间PTP高精度时间同步,KVM下多虚拟机时间同步系统是指KVM虚拟化宿主机通过IEEE1588精确时间同步PTP协议获取精确的系统时间,KVM之上的多个虚拟机通过和宿主机系统时间快速同步,从而达到精确对时的功能,。目前KVM通过PCIe直通的方式一个虚拟机只能绑定一个网卡,该网卡不能为其他虚拟机使用,所以不能使用PTP网卡的硬件时钟直接来为多个虚拟机提供时间同步。chrony是开源的,它能保持系统时钟与时钟服务器同步,让时间保持精确。chronyd是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步,它确定计算机增减时间的比率,并对此进行补偿。
发明内容
针对现有技术中的缺陷和应用上的需求,本发明提供一种KVM下多虚拟机时间同步系统,本发明将PTP协议引入云操作系统中,实现高精度时间同步。本发明提出宿主机的系统时间通过硬件PTP对时得到微秒级别的精度,然后多个虚拟机通过chronyd同步软件和系统调用(hypercal)方式和宿主机进行同步,可以得到微秒级的同步精度,该方法适用于Linux和vxWorks系统。
本发明是根据以下技术方案实现的:
一种KVM下多虚拟机时间同步系统,其特征在于,包括:
输入模块:其用于接收PTP服务器端发过来的同步报文;
处理模块:进行PTP网卡对时协议处理;
输出模块:为虚拟机chronyd提供系统调用接口获取宿主机系统时间。
上述技术方案中,所述输入模块包括RJ45接口和10/100/1000Mb的物理层PHY芯片,通过媒体独立接口或者千兆以太网接口与Intel PTP网卡相连,用于和远端PTP主设备收发报文的物理链路;网络驱动作为TCP/IP报文的收发接口,同时为对时协议栈提供读写硬件时间戳寄存器配置接口。
上述技术方案中,所述处理模块根据IEEE1588V2实现的PTP协议栈的linuxptp,包括linuxptp:ptp4l和linuxptp:phc2sys,其中linuxptp:ptp4l实现边界时钟和普通时钟,将PTP硬件时钟和远端主时钟进行同步,其中PTP配置为从模式和UDP4层报文传输;linuxptp:phc2sys实现系统时间和网卡时间的同步。
上述技术方案中,所述输出模块是ptp_kvm.ko,作为内核驱动模块,用于获取宿主机实时时间的函数接口,在KVM虚拟化ptp驱动和hypercal系统调用下,在一个主机上的所有虚拟机都将PTP网卡时间作为时间源。
由于采用了上述技术方案,与现有技术相比,本发明具有如下的有益效果:
本发明将PTP高精度对时系统的使用从单机环境扩展到多虚拟机间的时间同步,解决了虚拟机采用NTP时间同步精度在毫秒级别精度差的问题,为高性能计算和云服务等时间要求严格的服务提供准确时间保障。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明的一种KVM下多虚拟机时间同步系统的框架图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
本发明在Linux系统上利用linuxptp开源IEEE1588V2软件和chrony时间同步工具搭建先用linuxptp:ptp4l同步网卡时间,然后用linux:phc2将网卡时间同步给系统时间,虚拟机中chronyd工具以/dev/ptpx作为时间源进行同步,利用系统调用hypercall访问宿主机的系统时间,整个软件流程实现了高精度的时间同步,可以达到微秒级别的对时精度。
如图1所示,本发明的一种KVM下多虚拟机时间同步系统,包括:
输入模块:其用于接收PTP服务器端发过来的同步报文;
处理模块:进行PTP网卡对时协议处理;
输出模块:为虚拟机chronyd提供系统调用接口获取宿主机系统时间。
其中,输入模块包括RJ45接口和10/100/1000Mb的物理层PHY芯片,通过媒体独立接口或者千兆以太网接口与Intel PTP网卡相连,用于和远端PTP主设备收发报文的物理链路;网络驱动作为TCP/IP报文的收发接口,PTP驱动为对时协议栈提供读写硬件时间戳寄存器配置接口。PTP网络驱动是通用Linux网卡驱动,例如ixgbe.ko;支持硬件PTP,可以用“ethtool –T eth0”来检查网卡eth0是否支持该PTP功能。
其中,处理模块根据IEEE1588V2实现的PTP协议栈的linuxptp,包括linuxptp:ptp4l和linuxptp:phc2sys,其中linuxptp:ptp4l实现边界时钟和普通时钟,将PTP硬件时钟和远端主时钟进行同步,,其中PTP配置为从模式和UDP4层报文传输;linuxptp:phc2sys实现系统时间和网卡时间的同步。系统实时时钟就是系统时钟,它的时钟源就是主板的晶振。
其中,输出模块是ptp_kvm.ko,作为内核驱动模块,用于获取宿主机实时时间的函数接口,在KVM虚拟化ptp驱动和hypercal系统调用下,在一个主机上的所有虚拟机都将PTP网卡时间作为时间源,即通过添加参考时钟/dev/ptpx到chrony配置文件且配通过命令chronyc sourcesp配置ptp设备为时间同步源。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

Claims (2)

1.一种KVM下多虚拟机时间同步系统,其特征在于,包括:
输入模块:其用于接收PTP服务器端发过来的同步报文;
处理模块:进行PTP网卡对时协议处理;
输出模块:为虚拟机chronyd提供系统调用接口获取宿主机系统时间;
所述处理模块是根据IEEE1588V2实现的PTP协议栈的linuxptp,l inuxptp包括linuxptp:ptp41和linuxptp:phc2sys,其中linuxptp:ptp41实现边界时钟和普通时钟,将PTP硬件时钟和远端主时钟进行同步,其中PTP配置为从模式和UDP4层报文传输;linuxptp:phc2sys实现系统时间和网卡时间的同步;
所述输出模块是ptp_kvm.ko,作为内核驱动模块,用于获取宿主机实时时间的函数接口,在KVM虚拟化ptp驱动和hypercal系统调用下,在一个主机上的所有虚拟机都将PTP网卡时间作为时间源。
2.根据权利要求1所述的一种KVM下多虚拟机时间同步系统,其特征在于,所述输入模块包括RJ45接口和10/100/1000Mb的物理层PHY芯片,通过媒体独立接口或者千兆以太网接口与Intel PTP网卡相连,作为和远端PTP主设备收发报文的物理链路;网络驱动作为TCP/IP报文的收发接口,同时为对时协议栈提供读写硬件时间戳寄存器配置接口。
CN201810917948.1A 2018-08-13 2018-08-13 一种kvm下多虚拟机时间同步系统 Active CN109194432B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810917948.1A CN109194432B (zh) 2018-08-13 2018-08-13 一种kvm下多虚拟机时间同步系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810917948.1A CN109194432B (zh) 2018-08-13 2018-08-13 一种kvm下多虚拟机时间同步系统

Publications (2)

Publication Number Publication Date
CN109194432A CN109194432A (zh) 2019-01-11
CN109194432B true CN109194432B (zh) 2020-04-07

Family

ID=64921143

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810917948.1A Active CN109194432B (zh) 2018-08-13 2018-08-13 一种kvm下多虚拟机时间同步系统

Country Status (1)

Country Link
CN (1) CN109194432B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110377106B (zh) * 2019-06-21 2021-01-19 湖南麒麟信安科技股份有限公司 一种时统卡虚拟化方法、系统及介质
CN112904932A (zh) * 2021-05-08 2021-06-04 鹏城实验室 时钟同步方法、板卡、计算机存储介质及终端设备
CN113489563B (zh) * 2021-07-02 2023-08-15 广州市品高软件股份有限公司 一种虚拟机的时钟同步方法和云平台
CN113672031A (zh) * 2021-09-07 2021-11-19 西安超越申泰信息科技有限公司 一种时间同步方法、装置、计算机设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104901844A (zh) * 2015-05-13 2015-09-09 国家计算机网络与信息安全管理中心 基于pcie的高精度时间戳获取方法、装置及网卡
CN106972904A (zh) * 2016-11-21 2017-07-21 深圳信息职业技术学院 一种时钟同步的方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090089078A1 (en) * 2007-09-28 2009-04-02 Great-Circle Technologies, Inc. Bundling of automated work flow

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104901844A (zh) * 2015-05-13 2015-09-09 国家计算机网络与信息安全管理中心 基于pcie的高精度时间戳获取方法、装置及网卡
CN106972904A (zh) * 2016-11-21 2017-07-21 深圳信息职业技术学院 一种时钟同步的方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
集群服务器 时间同步 - Chrony;未来战士;《博客园》;20160401;第1-3页 *

Also Published As

Publication number Publication date
CN109194432A (zh) 2019-01-11

Similar Documents

Publication Publication Date Title
CN109194432B (zh) 一种kvm下多虚拟机时间同步系统
US11609598B2 (en) Network card, time synchronization methods and devices, and computer storage media
US10908941B2 (en) Timestamping data received by monitoring system in NFV
CN103634092A (zh) Cpu集群中的高精度定时器
US10892840B2 (en) Method and apparatus for TDMA slot synchronization and calibration of master and slave
EP3934132A1 (en) Clock queue with arming and/or self-arming features
EP4113296A3 (en) Methods and systems for providing a distributed clock as a service
CN113489563B (zh) 一种虚拟机的时钟同步方法和云平台
CN112395231B (zh) 一种多处理器间的数据延迟时间计算方法及装置
CA3014595C (en) Method and apparatus for tdma slot synchronization and calibration of master and slave
US20220357763A1 (en) Network Adapter Providing Isolated Self-Contained Time Services
US20230300068A1 (en) Synchronization in Distributed Communication Systems
Herber et al. Design and evaluation of a low-latency avb ethernet endpoint based on arm soc
CN109274451B (zh) 一种时间获取方法、装置和设备
US11075858B2 (en) A664 synch network design
CN115733572A (zh) 基于精确时间协议的时钟同步方法、电子装置及存储介质
CN112583513A (zh) 云平台时钟授时方法及系统
CN117792558B (zh) 用于集成高精度时间的方法、装置、设备和介质
CN113691342A (zh) 一种用于虚拟化平台时间同步的方法及系统
US20230341889A1 (en) Virtual precision time protocol clock devices for virtual nodes
Hu et al. Research and Implementation of Hardware Timestamp Based on IEEE1588 Protocol
EP4335184A1 (en) Providing a clock value to a client device
Gruber Time Sensitive Networking
Shafera et al. Network Acceleration and Time Synchronization for Data Acquisition Systems using Commodity Networks and Operating Systems
Neville-Neil Time is an Illusion. Lunchtime doubly so.-Ford Prefect to Arthur Dent in" The Hitchhiker’s Guide to the Galaxy", by Douglas Adams

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant