[ntpwg] Section 7.5. NTP Extension Field Format
David L. Mills
mills at udel.edu
Mon Apr 7 02:22:58 UTC 2008
Danny,
Please note there is no Extension Type field. What there is is a Class
field intended to multiplex among possibly many applications that might
use the extension field. The Class field must be public for the same
reason the TCP/UDP destination port must be public and it is used in
much the same way. I don't like the particular field position in the
word, but to change that kills Autokey in its present form.
Dave
Danny Mayer wrote:
> I strongly object to this change. The extension-private data belongs
> inside the extension and placing them in the extension type field
> makes it more difficult to deploy additional extensions.
>
> Danny
>
> David L. Mills wrote:
>
>> Guys,
>>
>> Following is a suggested replacement for Section 7.5. This preserves
>> compatibility with symmetric key cryptography and Autokey, but allows
>> up to 15 additional allications to use extenstion fields. As now,
>> when a MAC is present it can be verified without knowledge of the
>> extension field application and unknown applications are ignored.
>>
>> 7.5. NTP Extension Field Format
>>
>> In NTPv4 one or more extension fields can be inserted after the
>> header and before the MAC. Other than defining the field format,
>> this document makes no use of the field contents. An extension field
>> has the format shown in Figure 14.
>>
>> 0 1 2 3
>> 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
>> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>> | xxx | Class | xxx | Length |
>> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>> . .
>> . Value .
>> . .
>> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>> | Padding (as needed) |
>> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>>
>> Figure 14: Extension Field Format
>>
>> All extension fields are zero-padded to a word (4 octets) boundary.
>> The 4-bit Class field defines the application using the extension
>> field; the fields marked xxx are available to and defined by the
>> application. Currently, only the Autokey class is defined with value
>> zero.
>>
>> The Length field is a 16-bit unsigned integer which indicates the
>> length of the entire extension field in octets, including the Padding
>> field. In order to correctly parse packets with and without extension
>> fields and with and without MACs, the minimum extension field length
>> when a MAC is present is 2 words. If a MAC is not present, the
>> minimum field length is 7 words. A maximum field length remains to be
>> established.
>>
>> When a MAC is present, it is validated before the extension fields
>> are processed. If a MAC is not present, or if a MAC is present and
>> valid, the extension fields are processed in order; however, if a
>> particular class code is not understood, the extension field is
>> discarded.
>>
>> Dave
>> _______________________________________________
>> ntpwg mailing list
>> ntpwg at lists.ntp.org
>> https://lists.ntp.org/mailman/listinfo/ntpwg
>>
>
More information about the ntpwg
mailing list