Re: [TICTOC] Comments on YANG module of draft-ietf-tictoc-1588v2-yang

Jiangyuanlong <jiangyuanlong@huawei.com> Tue, 20 December 2016 08:56 UTC

Return-Path: <jiangyuanlong@huawei.com>
X-Original-To: tictoc@ietfa.amsl.com
Delivered-To: tictoc@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0553C1294D2 for <tictoc@ietfa.amsl.com>; Tue, 20 Dec 2016 00:56:28 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.321
X-Spam-Level:
X-Spam-Status: No, score=-7.321 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-3.1, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id vSd2aNNujYbc for <tictoc@ietfa.amsl.com>; Tue, 20 Dec 2016 00:56:27 -0800 (PST)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 45E47129495 for <tictoc@ietf.org>; Tue, 20 Dec 2016 00:56:26 -0800 (PST)
Received: from 172.18.7.190 (EHLO lhreml704-cah.china.huawei.com) ([172.18.7.190]) by lhrrg02-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id CXK14221; Tue, 20 Dec 2016 08:56:22 +0000 (GMT)
Received: from SZXEMA419-HUB.china.huawei.com (10.82.72.37) by lhreml704-cah.china.huawei.com (10.201.5.130) with Microsoft SMTP Server (TLS) id 14.3.301.0; Tue, 20 Dec 2016 08:56:13 +0000
Received: from SZXEMA506-MBS.china.huawei.com ([169.254.4.67]) by SZXEMA419-HUB.china.huawei.com ([10.82.72.37]) with mapi id 14.03.0235.001; Tue, 20 Dec 2016 16:56:02 +0800
From: Jiangyuanlong <jiangyuanlong@huawei.com>
To: Rodney Cummings <rodney.cummings@ni.com>, "tictoc@ietf.org" <tictoc@ietf.org>
Thread-Topic: Comments on YANG module of draft-ietf-tictoc-1588v2-yang
Thread-Index: AdJLTKZQlT1tfHzZSbOnrQkk8+eOSAPUKuuw
Date: Tue, 20 Dec 2016 08:56:02 +0000
Message-ID: <3B0A1BED22CAD649A1B3E97BE5DDD68BBAB014C9@szxema506-mbs.china.huawei.com>
References: <BN6PR04MB054877D581139828C0543A94928C0@BN6PR04MB0548.namprd04.prod.outlook.com>
In-Reply-To: <BN6PR04MB054877D581139828C0543A94928C0@BN6PR04MB0548.namprd04.prod.outlook.com>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.74.203.119]
Content-Type: text/plain; charset="utf-7"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A0B0208.5858F237.00E1, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0, ip=169.254.4.67, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: c4858c30dee1acdc7c49240dbb9fd43c
Archived-At: <https://mailarchive.ietf.org/arch/msg/tictoc/FeZ2N8T4TbJsIPdRxgCpPwI6v0k>
Subject: Re: [TICTOC] Comments on YANG module of draft-ietf-tictoc-1588v2-yang
X-BeenThere: tictoc@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Timing over IP Connection and Transfer of Clock BOF <tictoc.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tictoc>, <mailto:tictoc-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tictoc/>
List-Post: <mailto:tictoc@ietf.org>
List-Help: <mailto:tictoc-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tictoc>, <mailto:tictoc-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 20 Dec 2016 08:56:29 -0000

Hi Rodney,

The V3.0 YANG module file (ietf-ptp-dataset@2016-12-05.yang) was merged into: 
https://github.com/YangModels/yang/tree/master/standard/ietf/DRAFT
You can comment and update this module more conveniently.

If a stable new revision is in shape, then we can update the WG draft to Version 04.

Thanks,
Yuanlong

-----Original Message-----
From: TICTOC [mailto:tictoc-bounces@ietf.org] On Behalf Of Rodney Cummings
Sent: Thursday, December 01, 2016 7:14 AM
To: tictoc@ietf.org
Subject: [TICTOC] Comments on YANG module of draft-ietf-tictoc-1588v2-yang

Hello all,

I performed a detailed review of section 3 (YANG module), and I have some suggestions. I apologize to my co-authors for not raising these issues sooner (I was more focused on the other sections).

1. Upload the YANG module to https://github.com/YangModels/yang/tree/master/standard/ietf/DRAFT

Now that this module is WG draft, I assume this is appropriate, and it will increase visibility with the YANG community.

2. For data set members specified as "implementation-specific" in 1588-2008, use the data type from clause 15.

The "implementation-specific" text refers to use of the data inside the implementation, and does not refer to management. Management needs a data type, and 1588-2008 provides this for its own management protocol (clause 15). This module should use the data type from clause 15, since YANG is another form of management. As a side note, the revision of 1588 is clarifying this issue, so use of the 1588-2008 clause 15 type will align in the future.

Details:
- current-ds-entry.offset-from-master: Use TimeInterval as type (see suggestion #3, and 15.5.3.4.1.2)
- current-ds-entry.mean-path-delay: Use TimeInterval as type (see suggestion #3, and 15.5.3.4.1.3)
- time-properties-ds-entry.current-utc-offset: Use int16 (see 15.5.3.6.1.1)

3. Create and use a grouping for each data type in 1588-2008 subclause 5.3 (derived data type specifications).

1588-2008 specifies a "struct" for many types, and the data set members use those types. We should repeat this practice in the YANG module for consistency, and to reduce duplication.

Details:
- Create a grouping for TimeInterval of 5.3.2, and use that grouping for:
	* current-ds-entry.offset-from-master
	* current-ds-entry.mean-path-delay
	* port-ds-entry.peer-mean-path-delay
	* transparent-clock-port-ds-entry.peer-mean-path-delay
- Create a grouping for ClockIdentity of 5.3.4, and use that grouping for:
	* default-ds-entry.clock-identity
	* parent-ds-entry.grandmaster-identity
	* transparent-clock-default-ds-entry.clock-identity
- Create a grouping for PortIdentity of 5.3.5, and use that grouping for:
	* parent-ds-entry.parent-port-identity
	* port-ds-entry.port-identity
	* transparent-clock-port-ds-entry.port-identity
- Create a grouping for ClockQuality of 5.3.7, and use that grouping for:
	* default-ds-entry.clock-quality
	* parent-ds-entry.grandmaster-clock-quality

4. Update the description of instance-list.

It is correct to say that each instance represents a distinct domain, but not necessarily a distinct domain-number. To be clearer we could replace the description with: 

"List of one or more PTP datasets in the device, one for each domain (see IEEE 1588-2008 subclause 6.3). Each PTP dataset represents a distinct instance of PTP implementation in the device (i.e. distinct Ordinary Clock or Boundary Clock)."

5. Create and use a typedef for each Enumeration data type in 1588-2008.

1588-2008 uses the data type Enumeration8 (or 16) for data that references a table of name/number pairs. As the 1588 standard evolves with each revision, new name/number pairs will be added.
 
The current draft uses a YANG enumeration for:
	* port-ds-entry.delay-mechanism
	* transparent-clock-default-ds-entry.delay-mechanism
Since 1588-2008 has a single table for both, in the YANG we should create a typedef for this, and use that typedef for both data set members.

The current draft uses YANG "uint8" for other enumerations in 1588-2008. We should consider creating typedefs with an enumeration for those as well:
	* port-ds-entry.port-state
	* time-properties-ds-entry.time-source

Other modules seem to use YANG "identityref" for enumerations (e.g. draft 802.1Q modules), but I admit to ignorance as to why. I would like to understand the advantages/disadvantages of enumeration and identityref, to help ensure that we are using the best type for 1588-2008.

Rodney

_______________________________________________
TICTOC mailing list
TICTOC@ietf.org
https://www.ietf.org/mailman/listinfo/tictoc