Linux pmc 命令 - 管理 PTP 网络
介绍
pmc(英文全拼:PTP management client)是一个根据 IEEE 1588 标准实现的 PTP 管理客户端程序,可用于获取 ptp4l 的更详细信息。
pmc 从标准输入或命令行读取按名称和管理 ID(MANAGEMENT IDS)指定的操作。然后通过选定的传输发送操作,并列显收到的任何答复。支持三种操作:GET 检索指定的信息,SET 更新指定的信息,CMD(或 COMMAND)发起指定的事件。默认情况下,管理命令针对所有端口。
关于 PTP 详细介绍,请参考《PTP 精确时间协议》。
安装:
pmc 命令由 LinuxPTP 软件包提供,在 Debian/Ubuntu 系统上可以使用如下命令进行安装。
sudo apt install linuxptp
语法:
pmc [options] [commands]
选项:
网络传输选项
-2:使用 IEEE 802.3-4:使用 UDP IPV4(默认)-6:使用 UDP IPV6-u:使用本地 UDS(Unix Domain Socket)
其他选项
-b [num]:边界跳数(boundary hops),默认为 1。-d [num]:域名(domain number),默认0。-f [file]:从文件中读取配置。-i [dev]:要使用的网络接口设备,网络默认为 eth0,UDS 为/var/run/pmc.$pid。-s [path]:UDS 的服务器地址,默认为/var/run/ptp4l。-t [hex]:传输特定字段,默认 0x0。-z:使用 GET 操作发送零长度 TLV 值。-h:打印帮助信息。-v:打印版本信息。
命令:
pmc 支持 GET、SET、CMD 三种操作,操作后面带上管理 ID,指定需要操作的目标。支持的管理 ID 包括:
ANNOUNCE_RECEIPT_TIMEOUTCLOCK_ACCURACYCLOCK_DESCRIPTIONCURRENT_DATA_SETDEFAULT_DATA_SETDELAY_MECHANISMDOMAINGRANDMASTER_SETTINGS_NPLOG_ANNOUNCE_INTERVALLOG_MIN_PDELAY_REQ_INTERVALLOG_SYNC_INTERVALNULL_MANAGEMENTPARENT_DATA_SETPORT_DATA_SETPORT_DATA_SET_NPPRIORITY1PRIORITY2SLAVE_ONLYTIMESCALE_PROPERTIESTIME_PROPERTIES_DATA_SETTIME_STATUS_NPTRACEABILITY_PROPERTIESUSER_DESCRIPTIONVERSION_NUMBER
示例
获取本地 ptp4l 运行信息(CURRENT_DATA_SET)
sudo pmc -u -b 0 'GET CURRENT_DATA_SET'
获取本地 ptp4l 运行信息(TIME_STATUS_NP)
sudo pmc -u -b 0 'GET TIME_STATUS_NP'
