• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

H3C vEPC3200核心网 特性手册(E3127P01)-5W101

07-NTP

本章节下载 07-NTP  (281.59 KB)

docurl=/cn/Service/Document_Software/Document_Center/LTE/Catalog/Core_Network/H3C_vEPC3200/Configure/Operation_Manual/H3C_vEPC3200_TX(E3127)/202108/1436624_30005_0.htm

07-NTP


1 NTP

1.1  NTP简介

在大型的网络中,如果依靠管理员手工配置来修改网络中各台设备的系统时间,不但工作量巨大,而且也不能保证时间的精确性。NTP(Network Time Protocol,网络时间协议)可以用来在分布式时钟服务器和客户端之间进行时钟同步,使网络内所有设备的时间保持一致,并提供较高的时间同步精度。NTP采用的传输层协议为UDP,使用的UDP端口号为123。

说明

这里的“分布式”指的是运行NTP的设备,既可以与其他设备的时间同步,又可以作为时钟服务器为其他设备提供时钟同步。

 

1.1.1  NTP应用场合

NTP主要应用于需要网络中所有设备的时间保持一致的场合,比如:

·              需要以时间作为参照依据,对从不同设备采集来的日志信息、调试信息进行分析的网络管理系统。

·              对设备时间一致性有要求的计费系统。

·              多个系统协同处理同一个比较复杂的事件的场合。此时,为保证正确的执行顺序,多个系统的时间必须保持一致。

1.1.2  NTP基本工作原理

NTP的基本工作原理如图1-1所示。Device A和Device B通过网络相连,Device A和Device B的时间不同,需要通过NTP实现时间的自动同步。为便于理解,作如下假设:

·              在Device A和Device B的时间同步之前,Device A的时间设定为10:00:00 am,Device B的时间设定为11:00:00 am。

·              Device B作为NTP服务器,即Device A与Device B的时间同步。

·              NTP报文从Device A到Device B、从Device B到Device A单向传输所需要的时间均为1秒。

·              Device B处理NTP报文所需的时间是1秒。

图1-1 NTP基本工作原理图

 

Device A和Device B时间同步的工作过程如下:

(1)      Device A发送一个NTP报文给Device B,该报文带有它离开Device A时的时间戳,该时间戳为10:00:00 am(T1)。

(2)      当此NTP报文到达Device B时,Device B在NTP报文上增加该报文到达Device B时的时间戳,该时间戳为11:00:01 am(T2)。

(3)      当此NTP报文离开Device B时,Device B再在NTP报文上增加该报文离开Device B时的时间戳,该时间戳为11:00:02 am(T3)。

(4)      当Device A接收到该响应报文时,Device A的本地时间为10:00:03 am(T4)。

至此,Device A可以根据上述时间戳计算两个重要的参数:

·              NTP报文的往返时延Delay = (T4 – T1) – (T3 – T2) = 2秒。

·              Device A相对Device B的时间差Offset = ((T2 – T1) + (T3 – T4)) / 2 = 1小时。

这样,Device A就能够根据这些信息来设定自己的时间,使之与Device B的时间同步。

以上内容只是对NTP工作原理的一个粗略描述,详细内容请参阅相关的协议规范。

1.1.3  NTP网络结构及时钟层数

NTP通过时钟层数来定义时钟的准确度。时钟层数的取值范围为1~16,取值越小,时钟准确度越高。层数为1~15的时钟处于同步状态;层数为16的时钟处于未同步状态。

图1-2 NTP网络结构

 

图1-2所示,实际网络中,通常将从权威时钟(如原子时钟)获得时间同步的NTP服务器的层数设置为1,并将其作为主时间服务器,为网络中其他设备的时钟提供时间同步。网络中的设备与主时间服务器的NTP距离,即NTP同步链上NTP服务器的数目,决定了设备上时钟的层数。例如,从主时间服务器获得时间同步的设备的时钟层数为2,即比主时间服务器的时钟层数大1;从时钟层数为2的时间服务器获得时间同步的设备的时钟层数为3,以此类推。

为了保证时间的准确性和可靠性,可以为一台设备指定多个时间服务器,设备根据时钟层数等参数进行时钟过滤和选择,从多个时间服务器中选择最优的时钟,与其同步。设备选中的时钟称为参考时钟。时钟优选过程的详细介绍,请参阅相关的协议规范。

在某些网络中,例如无法与外界通信的孤立网络,网络中的设备无法与权威时钟进行时间同步。此时,可以从该网络中选择一台时钟较为准确的设备,指定该设备与本地时钟进行时间同步,即采用本地时钟作为参考时钟,使得该设备的时钟处于同步状态。该设备作为时间服务器为网络中的其他设备提供时间同步,从而实现整个网络的时间同步。

1.1.4  NTP的工作模式

NTP支持以下几种工作模式:

·              客户端/服务器模式。

·              对等体模式。

·              广播模式。

·              组播模式。

vEPC核心网中的时钟同步指的是客户端/服务器模式的时钟同步。NTP客户端上需要指定NTP服务器的地址,NTP客户端向NTP服务器发送NTP时间同步报文,NTP服务器收到报文后会自动工作在服务器模式,并回复应答报文,其中,NTP客户端能够同步NTP服务器的时钟,NTP服务器无法同步客户端的时钟。

1.1.5  协议规范

与NTP相关的协议规范有:

·              RFC 1305:Network Time Protocol (Version 3) Specification, Implementation and Analysis。

·              RFC 5905:Network Time Protocol Version 4: Protocol and Algorithms Specification

1.2  NTP配置限制和指导

当前版本vEPC仅支持做主时间NTP服务器。

用户可以通过以下任意方法修改vEPC的系统时间:

·              修改vEPC所在Docker容器的系统时间。

·              修改服务器的系统时间。

需要注意的是,修改Docker容器或服务器的系统时间后,必须重启vEPC。

1.3  NTP典型配置举例

1.3.1  配置vEPC Host为主时间NTP服务器

1. 组网需求

vEPC网络为用户内部网络,不能通过Internet获取准确时钟。组网环境如图1-3所示,为了保证vEPC网络中所有设备能够具有相同的时钟,将vEPC Host配置为主时间NTP服务器,网络中的其他设备为NTP客户端。要求:

·              vEPC Host的本地时钟作为vEPC网络的参考时钟。

·              其他设备仅通过vEPC Host同步本地时钟。

2. 组网图

图1-3 配置vEPC Host为主时间NTP服务器组网图

 

3. 配置限制和指导

·              必须保证NTP服务器和NTP客户端的路由可达,否则,NTP客户端无法同步NTP服务器的时钟。

·              NTP协议使用UDP端口123,配置时钟同步前必须开放NTP服务器和NTP客户端的UDP端口123。

·              本举例中的vEPC Host和NTP客户端 1为运行H3Linux Release 1.0.0及以上内核版本的服务器,对于其他Linux服务器的NTP配置,可能稍有差异,具体请查看对应版本的Linux NTP配置操作指导。

·              组网中的NTP客户端 2可以是交换机、路由器、防火墙、BBU、RRU等其他网络设备,关于这类设备配置NTP时钟同步的详细步骤,请参见各产品配套版本的配置指导。

4. 配置步骤

(1)      按照图1-3配置各设备接口的IP地址,并确保路由可达,具体配置过程略。

(2)      配置vEPC Host作为NTP服务器。

a.   登录H3Linux操作系统,其中,缺省的用户名和密码分别为admin和admin@vEPC3200。

localhost login:admin

passwrod:

b.   进入H3Linux的root用户视图,其中,缺省的root用户Password为root@vEPC3200。

[admin@localhost ~]$ su

Password:

[root@localhost admin]#

c.   切换到/etc目录,备份原有“ntp.conf”。

[root@localhost admin]# cd /etc

[root@localhost etc]# cp -p ntp.conf bak.ntp.conf

d.   查看原有“ntp.conf”和备份后的“bak.ntp.conf”。

[root@localhost etc]# ll | grep ntp.conf

-rw-r--r--   1 root root      2000 Apr 12  2017 bak.ntp.conf

-rw-r--r--.  1 root root      2000 Apr 12  2017 ntp.conf

其中,“bak.ntp.conf”为备份后的NTP配置文件,“ntp.conf”为原NTP配置文件。

e.   切换到root目录。

[root@localhost etc]# cd

[root@localhost ~]#

f.    创建NTP日志路径和NTP日志文件。

[root@localhost ~]# mkdir /var/log/ntp

[root@localhost ~]# touch /var/log/ntp/ntp.log

g.   修改“ntp.conf”缺省配置。

[root@localhost ~]# vi /etc/ntp.conf

其他显示信息略……

h.   在配置脚本driftfile /var/lib/ntp/drift的下行添加NTP日志路径和NTP日志。

driftfile /var/lib/ntp/drift

statsdir /var/log/ntp

logfile /var/log/ntp/ntp.log

i.    注释掉缺省上层NTP服务器,配置server 127.127.1.0使本机作为网络中的时钟源,配置fudge 127.127.1.0 stratum 10使本机时钟层数为10。

# server 0.centos.pool.ntp.org iburst

# server 1.centos.pool.ntp.org iburst

# server 2.centos.pool.ntp.org iburst

# server 3.centos.pool.ntp.org iburst

server 127.127.1.0

fudge 127.127.1.0 stratum 10

说明

缺省的上层NTP服务器如下所示,仅需在每行开头添加“# ”即可注释掉该行脚本。

·          server 0.centos.pool.ntp.org iburst

·          server 1.centos.pool.ntp.org iburst

·          server 2.centos.pool.ntp.org iburst

·          server 3.centos.pool.ntp.org iburst

127.127.1.0为特殊的IP地址,配置时无需更改为其他IP地址。

 

j.    保存并退出vi编辑器,具体过程略。

k.   重新启用vEPC Host的NTP时钟同步服务。

[root@localhost ~]# systemctl restart ntpd.service

l.    查看时钟同步状态。

[root@localhost ~]# systemctl status ntpd.service

● ntpd.service - Network Time Service

   Loaded: loaded (/usr/lib/systemd/system/ntpd.service; disabled; vendor preset: disabled)

   Active: active (running) since Wed 2020-05-27 15:51:25 CST; 26min ago

  Process: 15995 ExecStart=/usr/sbin/ntpd -u ntp:ntp $OPTIONS (code=exited, status=0/SUCCESS)

 Main PID: 15999 (ntpd)

    Tasks: 1

   Memory: 2.1M

   CGroup: /system.slice/ntpd.service

           └─15999 /usr/sbin/ntpd -u ntp:ntp -g

 

May 27 15:51:25 localhost.localdomain systemd[1]: Starting Network Time Service...

May 27 15:51:25 localhost.localdomain systemd[1]: Started Network Time Service.

说明

仅当NTP时钟同步服务状态为active (running)时表明系统NTP时钟同步服务状态正常。

 

(3)      配置NTP时钟同步功能开机时自动启用。

a.   通过vi编辑器打开rc.local文件。

[root@localhost ~]# vi /etc/rc.local

#!/bin/bash

# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES

#

# It is highly advisable to create own systemd services or udev rules

# to run scripts during boot instead of using this file.

#

# In contrast to previous versions due to parallel execution during boot

# this script will NOT be run after all other services.

#

# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure

# that this script will be executed during boot.

 

touch /var/lock/subsys/local

echo 5242880 > /proc/sys/net/core/rmem_max

echo 5242880 > /proc/sys/net/core/wmem_max

setenforce 0

/root/vEPC3200_vEPC/prepare_dpdk.ksh &

systemctl start docker.service

cd /root/vEPC3200_vEPC/docker-static-ip/

/usr/bin/python  duration.py   /root/vEPC3200_vEPC/docker-static-ip/containers.cfg

systemctl start monitor_container.service

service licstomcat start

cpupower -c all frequency-set -g performance

modprobe vfio enable_unsafe_noiommu_mode=1

modprobe vfio-pci

bash /etc/docker/start_docker.sh

b.   在rc.local文件的最后添加如下配置,使NTP时钟同步功能开机时自动启用。

systemctl restart ntpd.service

systemctl enable ntpd.service

c.   保存并退出vi编辑器,具体过程略。

(4)      配置其他类型的网络设备同步vEPC Host的时钟,例如交换机、路由器、防火墙、BBU、RRU等,此类设备配置NTP时钟同步的详细步骤,请参见各产品配套版本的配置指导。

5. 验证配置

# 完成上述配置后,在NTP客户端 1上执行“ntpdate 192.168.1.239”命令同步vEPC Host主机的时钟。

[admin@localhost ~]$ su

Password:

[root@localhost admin]# ntpdate 192.168.1.239

19 Nov 14:10:57 ntpdate[3680]: adjust time server 192.168.1.239 offset 0.009137 sec

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们