Tom Keiser <[email protected]> wrote: > Greetings, > > I've published draft-tkeiser-afs3-volser-tlv-02; this new draft can be > accessed via the following URLs and AFS paths: > > http://tools.ietf.org/html/draft-tkeiser-afs3-volser-tlv-02 > http://openafs.sinenomine.net/~tkeiser/i-d/draft-tkeiser-afs3-volser-tlv-02.html > http://openafs.sinenomine.net/~tkeiser/i-d/draft-tkeiser-afs3-volser-tlv-02.xml > http://openafs.sinenomine.net/~tkeiser/i-d/draft-tkeiser-afs3-volser-tlv-01-02.xml.diff > > /afs/sinenomine.net/user/tkeiser/public_html/i-d/draft-tkeiser-afs3-volser-tlv-02.txt > /afs/sinenomine.net/user/tkeiser/public_html/i-d/draft-tkeiser-afs3-volser-tlv-02.html > /afs/sinenomine.net/user/tkeiser/public_html/i-d/draft-tkeiser-afs3-volser-tlv-02.xml > /afs/sinenomine.net/user/tkeiser/public_html/i-d/draft-tkeiser-afs3-volser-tlv-01-02.xml.diff > > > Here is the change log for this revision: > > - ERRATA: AFSCAPABILITIESMAX is actually defined to be 196, not 192 > - add section re: cache coherence to the tag enumeration RPC > - add section re: day-of-week usage following discussion with mmeffie > - s/AFSVOL_TLV_TAG_VOL_DAY_USE/AFSVOL_TLV_TAG_VOL_STAT_USE_TODAY/ > following discussion with mmeffie > - add AFSVOL_TLV_TAG_VOL_STAT_USE_TODAY_DATE following discussion with > mmeffie > - add section re: definition of each tlv payload type > - add section re: definition of each tlv flag > - add note soliciting comments to afs3-stds list > - s/GCO Registrar/AFS Assigned Numbers Registrar/ > - s/afsint/AFSVol/ so that we keep our options open with respect to > wider standardization of TLV semantics > - add AFSVOL_TLV_TYPE_UINT64_VEC payload type > - convert various tags from AFSVOL_TLV_TYPE_OPAQUE to > AFSVOL_TLV_TYPE_UINT64_VEC > - add AFSVOL_TLV_FLAG_QUALIFIER_NO_MATCH flag > - write AFSVol TLV Payloads registry definition > - write AFSVol TLV Tags registry definition > - add registry for AFSVol_TLV.tlv_flags > - add registry for AFSVol_stat_use_per_dow.stat_flags > - write AFSVol Vol State Expls registry definition > - write AFSVol Program Types registry definition > - add numeric value assignments for newly created registries > - add RFC section references to new allocations > - add reference to Simon's AFS-STDS charter > - add an appendix with sample XDR for AFSVol Capabilities > - add an appendix with sample XDR for AFSVol TLV > - various cosmetic improvements (e.g. adding vspace tags) > > > Moving forward, I propose making one change in -03. Namely, I want to split > type AFSVOL_TLV_TYPE_UINT64 up into a few types that embed some limited > semantic knowledge into the TLV layer. Specifically, I'm thinking of > splitting AFSVOL_TLV_TYPE_UINT64 into the following six types: > > * AFSVOL_TLV_TYPE_UINT64 [generic unit-less type, as before] > * AFSVOL_TLV_TYPE_TIME_ABS [Simon's rpc refresh 100ns unit; absolute] > * AFSVOL_TLV_TYPE_TIME_REL [Simon's rpc refresh 100ns unit; relative] > * AFSVOL_TLV_TYPE_BLOCKS [storage in 1KiB units] > * AFSVOL_TLV_TYPE_VOLUME_ID > * AFSVOL_TLV_TYPE_PARTITION_ID > > All six would be backed by afs_uint64 in the AFSVol_TLV_value union. While > this change isn't strictly necessary, it's relatively straightforward to > implement, and makes the resulting volume TLV data considerably more > self-describing. >
The other week I submitted a new draft to the IETF which implements the aforementioned changes (as well as a few others). The new draft is available at the following URLs: http://tools.ietf.org/html/draft-tkeiser-afs3-volser-tlv-03 http://openafs.sinenomine.net/~tkeiser/i-d/draft-tkeiser-afs3-volser-tlv-03.html http://openafs.sinenomine.net/~tkeiser/i-d/draft-tkeiser-afs3-volser-tlv-03.xml http://openafs.sinenomine.net/~tkeiser/i-d/draft-tkeiser-afs3-volser-tlv-02-03.xml.diff /afs/sinenomine.net/user/tkeiser/public_html/i-d/draft-tkeiser-afs3-volser-tlv-03.txt /afs/sinenomine.net/user/tkeiser/public_html/i-d/draft-tkeiser-afs3-volser-tlv-03.html /afs/sinenomine.net/user/tkeiser/public_html/i-d/draft-tkeiser-afs3-volser-tlv-03.xml /afs/sinenomine.net/user/tkeiser/public_html/i-d/draft-tkeiser-afs3-volser-tlv-02-03.xml.diff The complete revision history is as follows: - split unsigned 64-bit type down into several more descriptive types that allow the TLV data stream to be more self-describing. - add a signed 64-bit integer type to allow for relative timestamps - now that we have more descriptive types, use them in a number of places - change AFSVOL_TLV_TAG_VOL_TRANS_CALL_VALID into a boolean type payload - make sure rxgen can parse the XDR in the appendix - make sure generated C code compiles and links - add in-text cites for AFS3-VVL, AFS3-FSCM, DAFS, and OSD. - provide motivations for GetCapabilities RPC - provide protocol semantic definitions for each newly allocated capability bit - allocate AFSVOL_TLV_FLAG_MORE bit to notify caller when we can't send all tags due to AFSVOL_TLV_TAG_MAX length limit Any comments or feedback are appreciated. -Tom _______________________________________________ AFS3-standardization mailing list [email protected] http://michigan-openafs-lists.central.org/mailman/listinfo/afs3-standardization
