このドキュメントで説明するソフトウェアは、Extended SupportまたはSustaining Supportのいずれかにあります。 詳細は、https://www.oracle.com/us/support/library/enterprise-linux-support-policies-069172.pdfを参照してください。
Oracleでは、このドキュメントに記載されているソフトウェアをできるだけ早くアップグレードすることをお薦めします。
システムでPTPサービスを構成するには:
linuxptpパッケージをインストールします。#
yum install linuxptp/etc/sysconfig/ptp4lを編集して、ptp4lデーモンの起動オプションを定義します。グランドマスター・クロックとスレーブ・クロックには1つのインタフェースのみを定義する必要があります。
たとえば、スレーブ・クロックのインタフェース
em1でハードウェア・タイム・スタンプを使用する場合は次のようにします。OPTIONS="-f /etc/ptp4l.conf -i em1 -s"
ハードウェア・タイム・スタンプのかわりにソフトウェア・タイム・スタンプを使用するには、-Sオプションを指定します。
OPTIONS="-f /etc/ptp4l.conf -i em1 -S -s"
ノート-sオプションは、クロックがスレーブとしてのみ動作するように指定します(
slaveOnlyモード)。 このオプションをグランドマスター・クロックや境界クロックには指定しないでください。グランドマスター・クロックでは、次のように-sオプションを省略します。
OPTIONS="-f /etc/ptp4l.conf -i em1"
境界クロックでは、次のように2つ以上のインタフェースを定義する必要があります。
OPTIONS="-f /etc/ptp4l.conf -i em1 -i em2"
次のような場合は、ファイル
/etc/ptp4l.confを編集して、ptp4lの構成をさらに調整する必要があります。グランドマスター・クロックでは、
priority1パラメータの値を0から127までの値に設定します(値が小さいほど、BMCアルゴリズムがグランドマスター・クロックを選択する際の優先度が高くなります)。 1つのグランドマスター・クロックを使用する構成で推奨される値は127です。summary_intervalの値を0ではなく整数値Nに設定すると、ptp4lはクロック統計のサマリーを毎秒(20 = 1)ではなく2N秒ごとに/var/log/messagesに書き込みます。 たとえば、値10は210または1024秒間隔に相当します。logging_levelパラメータは、ptp4lが記録するログ情報の量を制御します。logging_levelのデフォルト値は6で、これはLOG_INFOに相当します。 ログ記録を完全に無効化するには、logging_levelの値を0に設定します。 または、-qオプションをptp4lに指定することもできます。
詳細は、
ptp4l(8)マニュアル・ページを参照してください。次のようにシステム・ファイアウォールを構成し、PTPイベント・メッセージと汎用メッセージにUDPポート319および320へのアクセスを許可します。
#
iptables -I INPUT -p udp -m udp --dport 319 -j ACCEPT#iptables -I INPUT -p udp -m udp --dport 320 -j ACCEPT#service iptables saveptp4lサービスを開始し、システムの再起動後に開始するように構成します。#
service ptp4l start#chkconfig ptp4l onハードウェア・タイム・スタンプを使用するように、クロック・システムで
phc2sysを構成します。/etc/sysconfig/phc2sysを編集して、phc2sysデーモンの起動オプションを定義します。次のように、境界クロックまたはスレーブ・クロック上で、スレーブ・ネットワーク・インタフェースに関連付けられているPTPハードウェア・クロックに、システム・クロックを同期します。
OPTIONS="-c CLOCK_REALTIME -s em1 -w"
ノート境界クロック上のスレーブ・ネットワーク・インタフェースは、境界クロックがグランドマスター・クロックとの通信で使用するインタフェースです。
-wオプションは、
ptp4lがPTPハードウェア・クロックを同期するまで待ってから、phc2sysがシステム・クロックを同期するように指定します。次のように、システム時間を参照時間ソース(GPS、CDMA、NTP、ラジオ時報信号など)から取得するグランドマスター・クロック上で、ネットワーク・インタフェースのPTPハードウェア・クロックをシステム・クロックから同期します。
OPTIONS="-c em1 -s CLOCK_REALTIME -w"
詳細は、
phc2sys(8)マニュアル・ページを参照してください。phc2sysサービスを開始し、システムの再起動後に開始するように構成します。#
service phc2sys start#chkconfig phc2sys on
ptp4l操作のステータスを問い合せるには、pmcコマンドを使用できます。 次の例は、中間の境界クロックを介さずにグランドマスター・クロック・システムに直接接続しているスレーブ・クロック・システム上でpmcを実行した結果を示しています。
#pmc -u -b 0 'GET TIME_STATUS_NP'sending: GET TIME_STATUS_NP 080027.fffe.7f327b-0 seq 0 RESPONSE MANAGEMENT TIME_STATUS_NP master_offset -98434 ingress_time 1412169090025854874 cumulativeScaledRateOffset +1.000000000 scaledLastGmPhaseChange 0 gmTimeBaseIndicator 0 lastGmPhaseChange 0x0000'0000000000000000.0000 gmPresent true gmIdentity 080027.fffe.d9e453 #pmc -u -b 0 'GET CURRENT_DATA_SET'sending: GET CURRENT_DATA_SET 080027.fffe.7f327b-0 seq 0 RESPONSE MANAGEMENT CURRENT_DATA_SET stepsRemoved 1 offsetFromMaster 42787.0 meanPathDelay 289207.0
この出力に表示されている有用な情報:
gmIdentityグランドマスター・クロックの一意のID。ネットワーク・インタフェースのMACアドレスに基づきます。
gmPresent外部グランドマスター・クロックの使用の可否。 グランドマスター・クロック自身に対しては、この値は
falseと表示されます。meanPathDelay同期メッセージの推定遅延時間(ナノ秒単位)。
offsetFromMasterグランドマスター・クロックとの相対時間差の最新測定値(ナノ秒単位)。
stepsRemovedこのシステムとグランドマスター・クロック間のネットワーク階層数。
詳細は、phc2sys(8)、pmc(8)、ptp4l(8)の各マニュアル・ページ、http://www.zhaw.ch/en/engineering/institutes-centres/ines/downloads/documents.htmlおよびIEEE 1588を参照してください。

