Re: [Forces-protocol] Feedback: Section 6.4

"Wang,Weiming" <wmwang@mail.hzic.edu.cn> Wed, 27 October 2004 14:43 UTC

Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id KAA10019 for <forces-protocol-web-archive@ietf.org>; Wed, 27 Oct 2004 10:43:54 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71]) by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1CMpFh-0006qA-Co for forces-protocol-web-archive@ietf.org; Wed, 27 Oct 2004 10:58:17 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1CMou9-0006lm-QM; Wed, 27 Oct 2004 10:36:01 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1CMojw-0003Hl-Kx for forces-protocol@megatron.ietf.org; Wed, 27 Oct 2004 10:25:31 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id KAA08133 for <forces-protocol@ietf.org>; Wed, 27 Oct 2004 10:25:26 -0400 (EDT)
Received: from [202.96.99.56] (helo=202.96.99.56) by ietf-mx.ietf.org with smtp (Exim 4.33) id 1CMoxX-0006H5-0j for forces-protocol@ietf.org; Wed, 27 Oct 2004 10:39:49 -0400
Received: from [202.96.99.59] by 202.96.99.56 with StormMail ESMTP id 99432.341813895; Wed, 27 Oct 2004 22:45:19 +0800 (CST)
Received: from WWM (unverified [202.96.99.60]) by mail.gsu.cn (Rockliffe SMTPRA 6.0.11) with ESMTP id <B0000092505@mail.gsu.cn>; Wed, 27 Oct 2004 22:20:30 +0800
Message-ID: <0d0001c4bc30$66067d90$845c21d2@Necom.hzic.edu.cn>
From: "Wang,Weiming" <wmwang@mail.hzic.edu.cn>
To: hadi@znyx.com, "Khosravi, Hormuzd M" <hormuzd.m.khosravi@intel.com>
References: <468F3FDA28AA87429AD807992E22D07E0257923E@orsmsx408> <1098883706.1029.11.camel@jzny.localdomain>
Subject: Re: [Forces-protocol] Feedback: Section 6.4
Date: Wed, 27 Oct 2004 22:22:31 +0800
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
X-Spam-Score: 0.3 (/)
X-Scan-Signature: f2984bf50fb52a9e56055f779793d783
Cc: ram.gopal@nokia.com, forces-protocol@ietf.org, avri@psg.com, "Joel M. Halpern" <jhalpern@megisto.com>, Ligang Dong <donglg@mail.hzic.edu.cn>, Robert Haas <rha@zurich.ibm.com>
X-BeenThere: forces-protocol@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: forces-protocol <forces-protocol.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/forces-protocol>, <mailto:forces-protocol-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/forces-protocol>
List-Post: <mailto:forces-protocol@ietf.org>
List-Help: <mailto:forces-protocol-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/forces-protocol>, <mailto:forces-protocol-request@ietf.org?subject=subscribe>
Sender: forces-protocol-bounces@ietf.org
Errors-To: forces-protocol-bounces@ietf.org
X-Spam-Score: 0.3 (/)
X-Scan-Signature: 97c820c82c68af374c4e382a80dc5017

Jamal,Hormuzd as well,

----- Original Message -----
From: "Jamal Hadi Salim" <hadi@znyx.com>
Subject: RE: [Forces-protocol] Feedback: Section 6.4


> Folks,
>
> The PATH is needed for _everything_ thats interfacing to any LFB
> attributes.
[Weiming] I agree you say that path is needed for every attributes in LFB.
 My opinion is the path is composed of at least two parts:
 The ID to describe which attribte it is --- this I call it "Attribute ID", (and
Hormuzd called "Table ID"?)
 The Index ID to describe which entry inside the attribute IF THE ATTRIBUTE IS A
TABLE --- this we usualy called "table Index".

Then, my opinion is (I think Hormuzd also think so) the 'Attribute ID' part
should appear in our protocol layer, but the Index ID will not appear in the
protocol layer. Instead, it should appear in the data field. Why? because,

1) Not every attribute is a table, therefore not every attribute need such table
index. But 'Attribute ID' is always needed.

2) Even in the table case, to put the table index in the data field means to let
the LFB definer to have much flexibility to define the index - the length of the
index, the format, etc,  rathan than to be uniformly defined for all LFBs by our
protocol.

3) In this way, we can also easily implement all the operations as you mentioned
below.

4) Also note that the 'Attribute ID'is explicitly defined in XML definition of
LFBs(e.g. ID=6 in your noop.xml), while the table index will not appear in the
xml, that means the table index is a kind of data while the attribute ID is a
specific field, from the protocol viewpoint.


> Think of it as an SNMP OID - you need that _everytime_
> To get to where the table etc fits in, please read the two docs i posted
> to speed up the discussion;
>
> Heres a cutnpaste from one of those docs:
>
> path-data
> ----------
> The layout is still under discussion and so is left out from this text.
>
> Each accessible attribute within an LFB is expected to have a 32 bit
> identifier.
Yes.
>
> The path-data will have a map derived from the static class attribute
> IDs as well as those derived from variable content such table indices
> (derived at runtime).
Exactly.

>
> Below is an illustration of a complex example and how the different
> attributes could be accessed.
>
> Assume LFB Class A.
> It contains two Arrays, B, and C (assigned identifiers 1 and 2)
> A also contains a structure of type Stoo with a human name F.
> F is assigned ID 3.
> A also contains two attributes, D and E assigned identifiers 4 and 5.
> Array B is an array, indexed as a table, whose contents are int32s.
> Array C is an array, indexed as a table, whose contents are a structure
> named Star.
> Stoo type structures contain elements X and Y, each characters,
> assigned identifiers 1 and 2.
> Star contains An element N (a sting), assigned identifier 1, and an
> array
> Arr, assigned identifier 2, indexed as a table, containing int32s.
>
> To reference entities within an LFB instance of Class A, selectors
> are as follows:
>
> 1, meaning the full array B
Agreed. Note here 1 is as I mean 'Attribute ID'

> 3, meaning the full structure named F.
Agreed. 3 is another attribute ID.

> 2, 7 meaning the full structure in the seventh entry of the array C.
The protocol only pay attention to the 2 ID, while leaving the 7 being inluded
in the data field.

> 4 means the attribute D
> 2, 8, 2, 9 meaning the 9th number in the array in the structure in the
The protocol layer only pay attention to the 2 ID, leaving the 8,2,9 in the data
field. Whatever format the LFB model may use to define the path.

Cheers,
Weiming

> eigth slot of the array C.
> Interpreting the string 2, 8, 2, 9 clearly requires knowing the correct
> type definition.
> Since the model team has asserted that class definitions can
> only change (version) in ways that leave existing references intact
> and usable it means backward compatibility is supported.
>
> ----------------------
>
>
> cheers,
> jamal
>
> On Wed, 2004-10-27 at 03:20, Khosravi, Hormuzd M wrote:
> > Jamal, Weiming,
> >
> > I finally got the chance to read some of these emails...sorry for not
> > responding earlier. In general, we will need the concept of PATH atleast
> > for Query messages (GET), but I don't believe from any of the emails
> > that I have read so far that there was any concensus on what this would
> > look like. Jamal has a reasonable proposal which needs more discussion
> > and refinement.
> >
> > Some specific comments on Jamal's proposal so far...
> >
> > Where is the Table ID ? Is this part of the path IDs?
> > I don't believe we need any Flags in the path, this is similar to the
> > comment that Joel had as well.
> > Also, for Config msgs, I think the path can be part of the data itself,
> > but lets discuss this further...cause I am not sure if you guys agree
> > with this,
> >
> > Talk to you soon,
> >
> > regards
> > Hormuzd
> >
> > -----Original Message-----
> > From: Jamal Hadi Salim [mailto:hadi@znyx.com]
> > Sent: Tuesday, October 26, 2004 3:59 AM
> > To: Wang,Weiming
> > Cc: Joel M. Halpern; Khosravi, Hormuzd M; ram.gopal@nokia.com;
> > forces-protocol@ietf.org; avri@psg.com; Ligang Dong; Robert Haas
> > Subject: Re: [Forces-protocol] Feedback: Section 6.4
> >
> > On Tue, 2004-10-26 at 00:01, Wang,Weiming wrote:
> >
> >
> > > I have no doubt to agree with this. Just need to calrify that a path
> > is more
> > > than 32 bits long, or there will be not enough bits.
> > >
> >
> > Aha! I think i see where the misunderstanding is;->
> > Weiming sees either a path like 6 or 1,2,3,4 as represented by _one_
> > _fixed_ sized element. In which case you have to find a way to pack both
> > representations into that fixed size element.
> >
> > The suggested "path" representation is in fact _variable_.
> > >From the notes i sent earlier to you, the suggestion is:
> >
> > ----
> >  A possible path-data layout.
> > ----------------------------
> >
> > OPER_TLV : = <PATH-DATA>
> > PATH-DATA := flags IDcount <IDs> [BLOCK_OR_KEY_NOTATION] [DATA]
> > The operational TLV contains an opcode in the T part. Its V
> > contains the PATH-DATA.
> > Opcodes discussed so far:
> > * SET (create, modify or both depending on PATH-DATA flags}
> > * DEL (remove an existing entity specified by PATH-DATA }
> > * GET (Access a entity specified in PATH-DATA }
> > * EV_S (subscribe to an event defined in PATH-DATA }
> > * EV_U (unsubscribe to an event defined in PATH-DATA }
> > -> IDs := a series of 32bit IDs (whose size is given by IDcount)
> > defining the path.
> > -> flags are used to further refine the operation to be applied
> > on the ID_TLV.
> > -> BLOCK_OR_KEY_NOTATION := optional different BLOCK or KEY extension
> > defined in section 4.2 and 4.3 of [1]
> > -> DATA : = Optional variable sized data dependent on PATH
> > and applied operations (eg GET will not have DATA).
> >
> > -------
> >
> > Well read the rest of the doc; and for completion the notes posted by
> > Steve/Zsolt.
> >
> > cheers,
> > jamal
> >
> >
>



_______________________________________________
Forces-protocol mailing list
Forces-protocol@ietf.org
https://www1.ietf.org/mailman/listinfo/forces-protocol