pmc - Man Page

PTP management client

Synopsis

pmc [ -f config-file ] [ -2 | -4 | -6 | -u ] [ -b boundary-hops ] [ -d domain-number ] [ -i interface ] [ -s uds-address ] [ -t transport-specific-field ] [ long-options ] [ -v ] [ -z ] [ command ] ...

Description

pmc is a program which implements a PTP management client according to IEEE standard 1588. The program reads from the standard input or from the command line actions specified by name and management ID, sends them over the selected transport and prints any received replies. There are three actions supported: GET retrieves the specified information, SET updates the specified information and CMD (or COMMAND) initiates the specified event.

By default the management commands are addressed to all ports. The TARGET command can be used to select a particular clock and port for the subsequent messages.

Command help can be used to get a list of supported actions and management IDs.

Options

-f config-file

Read configuration from the specified file. No configuration file is read by default.

-2

Select the IEEE 802.3 network transport.

-4

Select the UDP IPv4 network transport. This is the default transport.

-6

Select the UDP IPv6 network transport.

-u

Select the Unix Domain Socket transport.

-b boundary-hops

Specify the boundary hops value in sent messages. The default is 1.

-d domain-number

Specify the domain number in sent messages. The default is 0.

-i interface

Specify the network interface. The default is /var/run/pmc.$pid for the Unix Domain Socket transport and eth0 for the other transports.

-s uds-address

Specifies the address of the server's UNIX domain socket. The default is /var/run/ptp4l.

-t transport-specific-field

Specify the transport specific field in sent messages as a hexadecimal number. The default is 0x0.

-h

Display a help message.

-v

Prints the software version and exits.

-z

The official interpretation of the 1588 standard mandates sending GET actions with valid (but meaningless) TLV values. Therefore the pmc program normally sends GET requests with properly formed TLV values. This option enables the legacy option of sending zero length TLV values instead.

Long Options

Each and every configuration file option (see below in sections Program Options and Port Options) may also appear as a "long" style command line argument. For example, the transportSpecific option may be set using either of these two forms:

--transportSpecific 1   --transportSpecific=1

Option values given on the command line override values in the global section of the configuration file (which, in turn, overrides default values).

Configuration File

The configuration file is divided into sections. Each section starts with a line containing its name enclosed in brackets and it follows with settings. Each setting is placed on a separate line, it contains the name of the option and the value separated by whitespace characters. Empty lines and lines starting with # are ignored.

The global section (indicated as [global]) sets the global program options as well as the default port specific options. Other sections are port specific sections and they override the default port options. The name of the section is the name of the configured port (e.g. [eth0] ).

Program Options

domainNumber

The domain attribute of the local clock. The default is 0.

Port Options

network_transport

Select the network transport. Possible values are UDPv4, UDPv6 and L2. The default is UDPv4.

ptp_dst_mac

The MAC address to which PTP management messages should be sent. Relevant only with L2 transport. The default is 01:1B:19:00:00:00.

transportSpecific

The transport specific field. Must be in the range 0 to 255. The default is 0.

Management Ids

ANNOUNCE_RECEIPT_TIMEOUT

CLOCK_ACCURACY

CLOCK_DESCRIPTION

CURRENT_DATA_SET

DEFAULT_DATA_SET

DELAY_MECHANISM

DOMAIN

GRANDMASTER_SETTINGS_NP

LOG_ANNOUNCE_INTERVAL

LOG_MIN_PDELAY_REQ_INTERVAL

LOG_SYNC_INTERVAL

NULL_MANAGEMENT

PARENT_DATA_SET

PORT_DATA_SET

PORT_DATA_SET_NP

PORT_HWCLOCK_NP

PORT_PROPERTIES_NP

PORT_SERVICE_STATS_NP

PORT_STATS_NP

PRIORITY1

PRIORITY2

SLAVE_ONLY

TIMESCALE_PROPERTIES

TIME_PROPERTIES_DATA_SET

TIME_STATUS_NP

TRACEABILITY_PROPERTIES

UNICAST_MASTER_TABLE_NP

USER_DESCRIPTION

VERSION_NUMBER

Warning

Be cautious when the same configuration file is used for both ptp4l and pmc.  Keep in mind that values specified in the configuration file take precedence over their default values. If a certain option which is common to ptp4l and pmc is specified to a non-default value in the configuration file (e.g. for ptp4l), then this non-default value applies also for pmc. This might be not what is expected.

To avoid securely these unexpected behaviour, different configuration files for ptp4l and pmc are recommended.

See Also

ptp4l(8)

Referenced By

ptp4l(8).

February 2023 linuxptp