RFC1708

From RFC-Wiki

Network Working Group: D. Gowin Request for Comments: 1708 Vitro Corp. Category: Informational October 1994

                       NTP PICS PROFORMA
            For the Network Time Protocol Version 3

Status of this Memo

This memo provides information for the Internet community. This memo does not specify an Internet standard of any kind. Distribution of this memo is unlimited.

Abstract

This RFC describes a PICS Proforma translated into an Internet acceptable form. The Original document was developed according to ISO 9646 for conformance test purposes. This document is intended for both developers and users of the NTP (Network Time Protocol). This document contains specific information and performance characteristics for the use of NTP within the context of Internet usage. It is suggested, that users wishing to use the synchronization capabilities of the Internet abide by the characteristics set within this document.

For more information please contact Dr. David Mills at [email protected] or review RFC 1305 for more information.

Contents

INTRODUCTION

To evaluate conformance of a particular implementation, it is necessary to have a statement of the capabilities and options that have been implemented for a given protocol. Such a statement is called a Protocol Implementation Conformance Statement (PICS).

SCOPE

This document provides the PICS proforma for the Network Time Protocol (NTP) in compliance with the relevant requirements, and in accordance with the relevant guidance, given in ISO/IEC 9646-2.

REFERENCE DOCUMENTS

 ISO/IEC 9646-1 1990, Information technology - Open systems
                interconnection - Conformance testing
                methodology and framework - Part 1: General
                concepts.
 ISO/IEC 9646-2 1990, Information technology - Open systems
                interconnection - Conformance testing
                methodology and framework - Part 2: Abstract
                test suite specification.
 RFC 1305       Network Time Protocol (Version 3) -
                Specification, Implementation and Analysis -
                David L. Mills, University of Delaware -
                March 1992.

DEFINITIONS

This document uses the following terms defined in ISO/IEC 9646-1:

 a) PICS proforma;
 b) Protocol Implementation Conformance Statement (PICS);
 c) Static conformance review.

SPECIAL SYMBOLS

The additional symbols have been identified for use in this document:

      m    Mandatory field/function
      o.#  Optional field/function
      c#   Conditional field/function
      #    Refers to a note # below the table
      x    Prohibited use
      n/a  Not applicable
      Y[]  Indicates the item is implemented
      N[]  Indicates the item is not implemented

INSTRUCTIONS FOR COMPLETION OF PICS

The supplier of a protocol implementation which is claimed to conform to NTP version 3 is required to complete a copy of the PICS proforma provided in this document and is required to provide the information necessary to identify both the supplier and the implementation.

COPYRIGHT

Copyright release for PICS proforma. Users of this RFC may freely reproduce the PICS proforma in this document so that it can be used for its intended purpose and may further publish the completed PICS.

IMPLEMENTATION IDENTIFICATION

+=======================================+=======================+ | SUPPLIER | | | | | +---------------------------------------+-----------------------+ | | | | CONTACT POINT FOR | | | QUERIES ABOUT THE PICS | | | | | +---------------------------------------+-----------------------+ | | | | IMPLEMENTATION NAME | | | AND VERSION | | | | | +---------------------------------------+-----------------------+ | | | | OTHER INFORMATION | | | NECESSARY FOR FULL | | | IDENTIFICATION - e.g. | | | NAME AND VERSION | | | FOR MACHINES AND/OR | | | OPERATING SYSTEMS; | | | SYSTEM NAME | | | | | | | | | | | +=======================================+=======================+

NETWORK TIME PROTOCOL PICS PROFORMA

DATA FORMATS

Item No. NTP Requirements Reference Status Support

=====================================================

8.1.01 64 bit time

           stamp                  3.1           m       Y[] N[]

STATE VARIABLES AND PARAMETERS

COMMON VARIABLES

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.1.01 Peer Address 3.2.1 m Y[] N[] 8.2.1.02 Peer Port 3.2.1 m Y[] N[] 8.2.1.03 Host Address 3.2.1 m Y[] N[] 8.2.1.04 Host Port 3.2.1 m Y[] N[] 8.2.1.05 Leap Indicator 3.2.1 m Y[] N[] 8.2.1.06 Mode 3.2.1 m Y[] N[] 8.2.1.07 Stratum 3.2.1 m Y[] N[] 8.2.1.08 Poll 3.2.1 m Y[] N[] 8.2.1.09 Precision 3.2.1 m Y[] N[] 8.2.1.10 Root Delay 3.2.1 m Y[] N[] 8.2.1.11 Root Dispersion 3.2.1 m Y[] N[] 8.2.1.12 Reference Clock

           Identifier             3.2.1         m       Y[] N[]

8.2.1.13 Reference

           Timestamp              3.2.1         m       Y[] N[]

8.2.1.14 Originate

           Timestamp              3.2.1         m       Y[] N[]

8.2.1.15 Receive

           Timestamp              3.2.1         m       Y[] N[]

8.2.1.16 Transmit

           Timestamp              3.2.1         m       Y[] N[]

SYSTEM VARIABLES

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.2.01 Local Clock 3.2.2 m Y[] N[] 8.2.2.02 Clock Source 3.2.2 m Y[] N[]

PEER VARIABLES

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.3.01 Configured Bit 3.2.3 m Y[] N[] 8.2.3.02 Update Timestamp 3.2.3 m Y[] N[] 8.2.3.03 Reachability

           Register               3.2.3         m       Y[] N[]

8.2.3.04 Peer Timer 3.2.3 m Y[] N[]

PACKET VARIABLES

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.4.01 Version Number 3.2.4 m Y[] N[]

CLOCK FILTER VARIABLES

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.5.01 Filter Register 3.2.5 m Y[] N[] 8.2.5.02 Valid Data

           Counter                3.2.5         m       Y[] N[]

8.2.5.03 Offset 3.2.5 m Y[] N[] 8.2.5.04 Delay 3.2.5 m Y[] N[] 8.2.5.05 Dispersion 3.2.5 m Y[] N[]

AUTHENTICATION VARIABLES

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.6.01 Authentication

           Enable Bit             3.2.6         c1      Y[] N[]

8.2.6.02 Authenticated

           Bit                    3.2.6         c1      Y[] N[]

8.2.6.03 Key Identifier 3.2.6 c1 Y[] N[] 8.2.6.04 Cryptographic

           Keys                   3.2.6         c1      Y[] N[]

8.2.6.05 Crypto Checksum 3.2.6 c1 Y[] N[]

 c1:   IF authentication is used THEN m ELSE o.

PARAMETER VALUES

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.7.01 Version Number = 3 3.2.7 c1 Y[] N[] 8.2.7.02 NTP Port = 123 3.2.7 c1 Y[] N[] 8.2.7.03 Max Stratum = 15 3.2.7 c1 Y[] N[] 8.2.7.04 Max Clock Age =

           86,400 sec.            3.2.7         c1      Y[] N[]

8.2.7.05 Max Skew = 1 sec. 3.2.7 c1 Y[] N[] 8.2.7.06 Max Distance = 1 sec. 3.2.7 c1 Y[] N[] 8.2.7.07 Min Polling Interval =

           6(64 sec.)             3.2.7         c1      Y[] N[]

8.2.7.08 Max Polling Interval =

           10(1024 sec.)          3.2.7         c1      Y[] N[]

8.2.7.09 Min Select Clock = 1 3.2.7 c1 Y[] N[]

8.2.7.10 Max Select Clock = 10 3.2.7 c1 Y[] N[] 8.2.7.11 Min Dispersion =

           0.01 sec.              3.2.7         c1      Y[] N[]

8.2.7.12 Max Dispersion =

           16 sec.                3.2.7         c1      Y[] N[]

8.2.7.13 Reachability Reg

           Size = 8               3.2.7         c1      Y[] N[]

8.2.7.14 Filter Size = 8 3.2.7 c1 Y[] N[] 8.2.7.15 Filter Weight = 1/2 3.2.7 c1 Y[] N[] 8.2.7.16 Select Weight = 3/4 3.2.7 c1 Y[] N[]

 c1:   IF implementation is intended for use on the Internet
       THEN m ELSE o.

MODES OF OPERATION

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.8.01 Symmetric Active 3.3 o.1 Y[] N[] 8.2.8.02 Symmetric Passive 3.3 o.1 Y[] N[] 8.2.8.03 Client 3.3 o.1 Y[] N[] 8.2.8.04 Server 3.3 o.1 Y[] N[] 8.2.8.05 Broadcast 3.3 o.1 Y[] N[]

 o.1:At least one mode must be implemented.

EVENT PROCESSING

TRANSMIT PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.9.1.01 Transmit Procedure 3.4.2 m Y[] N[] 8.2.9.1.02 Authentication 3.4.2 o Y[] N[]

RECEIVE PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.9.2.01 Receive Procedure 3.4.3 m Y[] N[] 8.2.9.2.02 Control Messages 3.4.3 o.1 Y[] N[] 8.2.9.2.03 Authentication 3.4.3 o Y[] N[]

 o.1:If implemented then section 8.6 must be completed.
PACKET PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.9.3.01 Packet Procedure 3.4.4 m Y[] N[] 8.2.9.3.02 Authentication 3.4.4 o Y[] N[]

CLOCK UPDATE PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.9.4.01 Clock Update 3.4.5 m Y[] N[]

PRIMARY CLOCK PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.9.5.01 Primary Clock 3.4.6 m Y[] N[]

INITIALIZATION PROCEDURES

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.9.6.01 Initialization 3.4.7.1 m Y[] N[] 8.2.9.6.02 Authentication 3.4.7.1 o Y[] N[]

INITIALIZATION INSTANTIATION PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.9.7.01 Initialization

           Instantiation          3.4.7.2       m       Y[] N[]

8.2.9.7.02 Authentication 3.4.7.2 o Y[] N[]

RECEIVE INSTANTIATION PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.9.8.01 Receive Instantiation 3.4.7.3 m Y[] N[] 8.2.9.8.02 Authentication 3.4.7.3 o Y[] N[]

PRIMARY CLOCK INSTANTIATION PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.9.9.01 Clock Instantiation 3.4.7.4 m Y[] N[]

8.2.9.10 CLEAR PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.9.10.01 Clear Proc. 3.4.8 m Y[] N[]

8.2.9.11 POLL UPDATE PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.9.11.01 Poll Update 3.4.9 m Y[] N[]

8.2.9.12 SYNCHRONIZATION DISTANCE PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.2.9.12.01 Distance Proc. 3.5 m Y[] N[]

FILTERING AND SELECTION ALGORITHMS

CLOCK FILTER PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.3.1.01 Clock Filter 4.1 o Y[] N[]

CLOCK SELECTION PROCEDURE

Item No. NTP Requirements Reference Status Support

=====================================================

8.3.2.01 Clock Selection

           Procedure              4.2           o       Y[] N[]

8.3.2.02 Intersection Algorithm 4.2.1 c1 Y[] N[] 8.3.2.03 Clustering Algorithm 4.2.2 c1 Y[] N[]

 c1: IF Clock Selection Procedure implemented THEN m ELSE o.

LOCAL CLOCKS

Item No. NTP Requirements Reference Status Support

=====================================================

8.4.01 Logical Clock 5 m Y[] N[]

FUZZBALL LOCAL CLOCK IMPLEMENTATIONS

CRYSTAL OSCILLATOR BASED IMPLEMENTATION PARAMETER VALUES

Item No. NTP Requirements Reference Status Support

=====================================================

8.4.1.1.01 Adjustment Interval =

           4 sec.                 5.1           c1      Y[] N[]

8.4.1.1.02 PPS Timeout = 60 sec. 5.1 c1 Y[] N[] 8.4.1.1.02 Step Timeout =

           900 sec.               5.1           c1      Y[] N[]

8.4.1.1.02 Maximum Aperture =

           q128 ms                5.1           c1      Y[] N[]

8.4.1.1.03 Frequency Weight = 16 5.1 c1 Y[] N[] 8.4.1.1.04 Phase Weight = 8 5.1 c1 Y[] N[] 8.4.1.1.05 Compliance Weight = 13 5.1 c1 Y[] N[] 8.4.1.1.06 Compliance Maximum = 4 5.1 c1 Y[] N[] 8.4.1.1.07 Compliance

           Multiplier = 4         5.1           c1      Y[] N[]
 c1:IF implementing a fuzzball using a crystal oscillator
         based local clock THEN m ELSE o.
MAIN SYSTEM CLOCK IMPLEMENTATION PARAMETER VALUES

Item No. NTP Requirements Reference Status Support

=====================================================

8.4.1.2.01 Adjustment

           Interval = 1 sec.      5.1           c1      Y[] N[]

8.4.1.2.02 PPS Timeout = 60 sec. 5.1 c1 Y[] N[] 8.4.1.2.02 Step Timeout =

           900 sec.               5.1           c1      Y[] N[]

8.4.1.2.02 Maximum Aperture =

           q512 ms                5.1           c1      Y[] N[]

8.4.1.2.03 Frequency Weight = 16 5.1 c1 Y[] N[] 8.4.1.2.04 Phase Weight = 9 5.1 c1 Y[] N[] 8.4.1.2.05 Compliance Weight = 13 5.1 c1 Y[] N[] 8.4.1.2.06 Compliance Maximum = 4 5.1 c1 Y[] N[] 8.4.1.2.07 Compliance

           Multiplier = 4         5.1           c1      Y[] N[]
 c1:IF implementing a fuzzball using a main system clock
         THEN m ELSE o.

PHASE ADJUSTMENT

Item No. NTP Requirements Reference Status Support

=====================================================

8.4.2.01 Gradual Phase

          Adjustment              5.2           m      Y[] N[]

8.4.2.02 Step Phase Adjustment 5.3 m Y[] N[]

NTP DATA FORMAT

Item No. NTP Requirements Reference Status Support

=====================================================

8.5.01 Leap Indicator

          is a 2 bit code       App. A          m       Y[] N[]

8.5.02 Version Number

          is a 3 bit integer    App. A          m       Y[] N[]

8.5.03 Mode

          is a 3 bit integer    App. A          m       Y[] N[]

8.5.04 Stratum is an 8

          bit integer           App. A          m       Y[] N[]

8.5.05 Poll is an 8 bit

          signed integer        App. A          m       Y[] N[]

8.5.06 Precision is an

          8 bit signed integer  App. A          m       Y[] N[]

8.5.07 Root Delay is a 32 bit signed

          fixed-point number    App. A          m       Y[] N[]

8.5.08 Root Dispersion is a 32 bit

          fixed-point number    App. A          m       Y[] N[]

8.5.09 Reference Identifier is a 4

          octet, left justified, zero
          padded ASCII string   App. A          m       Y[] N[]

8.5.10 Reference Timestamp is a 64

          bit timestamp format  App. A          m       Y[] N[]

8.5.11 Originate Timestamp is a 64

          bit timestamp format  App. A          m       Y[] N[]

8.5.12 Receive Timestamp is a 64

          bit timestamp format  App. A          m       Y[] N[]

8.5.13 Transmit Timestamp is a 64

          bit timestamp  format App. A          m       Y[] N[]

8.5.14 Authenticator 96 bits App. A o Y[] N[]

NTP Control Messages

NTP Control Message Header Format

Item No. NTP Requirements Reference Status Support

=====================================================

8.6.1.01 Leap Indicator

          is a 2 bit code       App. B.1        c1      Y[] N[]

8.6.1.02 Version Number

          is a 3 bit integer    App. B.1        c1      Y[] N[]

8.6.1.03 Mode is a 3 bit

          integer               App. B.1        c1      Y[] N[]

8.6.1.04 Response bit is

          a 1 Bit field         App. B.1        c1      Y[] N[]

8.6.1.05 Error bit is a 1

          bit field             App. B.1        c1      Y[] N[]

8.6.1.06 More bit is a 1

          bit field             App. B.1        c1      Y[] N[]

Item No. NTP Requirements Reference Status Support

=====================================================

8.6.1.07 Operation Code

          is a 5 bit integer    App. B.1        c1      Y[] N[]

8.6.1.08 Sequence is a 16

          bit integer           App. B.1        c1      Y[] N[]

8.6.1.09 Status is a 16

          bit code              App. B.1        c1      Y[] N[]

8.6.1.10 Association ID

          is a 16 bit integer   App. B.1        c1      Y[] N[]

8.6.1.11 Offset is a 16

          bit integer           App. B.1        c1      Y[] N[]

8.6.1.12 Count is a 16

          bit integer           App. B.1        c1      Y[] N[]

8.6.1.13 Data is a

          maximum of 468 octets App. B.1        c1      Y[] N[]

8.6.1.14 Authenticator

          96 bits               App. B.1        c1      Y[] N[]
 c1: IF control messages are used THEN m ELSE o.
NTP Control Message Required Values

Item No. NTP Requirements Reference Status Support

=====================================================

8.6.1.1.01 Leap Indicator = 00 App. B.1 c1 Y[] N[] 8.6.1.1.02 Version Number = 3 App. B.1 c1 Y[] N[] 8.6.1.1.03 Mode = 6 App. B.1 c1 Y[] N[]

 c1:IF control messages are used THEN m ELSE o.

System Words

System Status Word

Item No. NTP Requirements Reference Status Support

=====================================================

8.6.2.1.01 Leap Indicator

          is a 2 bit code       App.B.2.1       c1      Y[] N[]

8.6.2.1.02 Clock Source is

          a 6 bit integer       App.B.2.1       c1      Y[] N[]

8.6.2.1.03 System Event Counter

          is a 4 bit integer    App.B.2.1       c1      Y[] N[]

8.6.2.1.04 System Event Code

          is a 4 bit integer    App.B.2.1       c1      Y[] N[]
 c1:IF control messages are used THEN m ELSE o.
Peer Status Word

Item No. NTP Requirements Reference Status Support

=====================================================

8.6.2.2.01 Peer Status is a

          5 bit code            App.B.2.2       c1      Y[] N[]

8.6.2.2.02 Peer Selection

          is a 3 bitinteger     App.B.2.2       c1      Y[] N[]

8.6.2.2.03 Peer Event Counter

          is a 4 bit integer    App.B.2.2       c1      Y[] N[]

8.6.2.2.04 Peer Event Code

          is a 4 bit integer    App.B.2.2       c1      Y[] N[]
 c1:IF control messages are used THEN m ELSE o.
Clock Status Word

Item No. NTP Requirements Reference Status Support

=====================================================

8.6.2.3.01 Clock Status is

          an 8 bit integer      App.B.2.3       c1      Y[] N[]

8.6.2.3.02 Clock Event Code

          is an 8 bit integer   App.B.2.3       c1      Y[] N[]
 c1:IF control messages are used THEN m ELSE o.
Error Status Word

Item No. NTP Requirements Reference Status Support

=====================================================

8.6.2.4.01 Error Status is

          an 8 bit integer      App.B.2.4       c1      Y[] N[]
 c1:IF control messages are used THEN m ELSE o.

Security Considerations

Security issues are not discussed in this memo

10. References

[1] Mills. D., "Network Time Protocol Version 3 - Specification,

   Implementation and Analysis", RFC 1305, UDEL, March 1992.

11. Author's Address

Dan R. Gowin Vitro a Tracor Company 5001 N. St. Rd. 37 (BUS) Bloomington, IN 47404-1626

Phone: (812) 336-2299 x379 Fax: (812) 333-0415 EMail: [email protected]