Subject: RE: [Forces-protocol] T in TLV, another thought

From: "Khosravi, Hormuzd M" <[email-masked]>
Date: Mon, 17 May 2004 19:39:04 -0700

Hi Weiming,
 
Thanks a lot for the prompt response! Pls see my clarification below.

-----Original Message-----
From: [email-masked]
[mailto:[email-masked]] On Behalf Of Weiming Wang

Thanks for the comments on the Global vs local scope for T in TLV.
 
Another design principle that I would like to share and get your
thoughts on is...
How do we choose semantics for T ? The basic principle is that a
different T should mean a different V, essentially T defines V.
To give you an example... in the Config message format that I had sent
out, I used T to mean either FE or LFB attributes.
This is cause I see the V in case of T=LAB attributes having fields such
as LAB Type, LAB Instance ID. In case T=FE attributes, we probably wont
have these 2 fields. Does that help understand the logic for defining T
?
[Weiming] I think I (Jamal as well) have already presented the idea on
the Value format difference of LFB attribute/event and FE
attribute/event (in my emal on event msg format and also in the reply to
your emal). I just think only mentioning the FE or LFB in T is not
enough to have global meaning, e.g., LFB query and LFB config may have
quite different PDU format.  
 
[HK] Sure I agree. It seems like you have misunderstood. When I say
global scope, e.g., T=0x32 might mean LFB attr type TLV for Query msg
(i.e. LFB Query acc to your terminology) and T=0x28 might mean LFB attr
type for Config msg (i.e. LFB Config acc to your terminology) and both
these will define different types of TLV (or PDU) i.e. different fields
in the V for the TLV. So the 16 bits for T will be used to globally
define different TLVs across all different msgs.
 
Hope that helps clarify my idea,
anyways we can discuss this further on the call tomorrow (hope you will
attend)
 
Thanks again
Hormuzd
 
p.s. To further clarify, it would make sense to have Operation (Add,
Del, etc) part of T if we would define different TLV or PDU for
different Operations. I don't think that is the case, but do you think
the PDU will be different for each Operation ??

---

From: "Weiming Wang" <[email-masked]>
Date: Tue, 18 May 2004 11:15:38 +0800

MessageHi Hormuzd,

Thank you for the classification.

----- Original Message ----- 
  From: Khosravi, Hormuzd M 

  Hi Weiming,

    -----Original Message-----
    From: [email-masked] [mailto:[email-masked]] On Behalf Of Weiming Wang

      Another design principle that I would like to share and get your thoughts on is...
      How do we choose semantics for T ? The basic principle is that a different T should mean a different V, essentially T defines V.
      To give you an example... in the Config message format that I had sent out, I used T to mean either FE or LFB attributes.
      This is cause I see the V in case of T=LAB attributes having fields such as LAB Type, LAB Instance ID. In case T=FE attributes, we probably wont have these 2 fields. Does that help understand the logic for defining T ?
      [Weiming] I think I (Jamal as well) have already presented the idea on the Value format difference of LFB attribute/event and FE attribute/event (in my emal on event msg format and also in the reply to your emal). I just think only mentioning the FE or LFB in T is not enough to have global meaning, e.g., LFB query and LFB config may have quite different PDU format.  

      [HK] Sure I agree. It seems like you have misunderstood. When I say global scope, e.g., T=0x32 might mean LFB attr type TLV for Query msg (i.e. LFB Query acc to your terminology) and T=0x28 might mean LFB attr type for Config msg (i.e. LFB Config acc to your terminology) and both these will define different types of TLV (or PDU) i.e. different fields in the V for the TLV. So the 16 bits for T will be used to globally define different TLVs across all different msgs.
      [Weiming]My understanding of your T scheme is, you have condensed  the operations as things like 'query' 'config', etc. I'm just a little afraid it is not enough. Pls see more in my following reply.

      Hope that helps clarify my idea,
      anyways we can discuss this further on the call tomorrow (hope you will attend)

      Thanks again
      Hormuzd

      p.s. To further clarify, it would make sense to have Operation (Add, Del, etc) part of T if we would define different TLV or PDU for different Operations. I don't think that is the case, but do you think the PDU will be different for each Operation ??
      [Weiming]Yes, the PDU for different ops will be quite different. E.g., to add a route, we need to tell the route value, to update a route, we need to know the old route value and to tell the new value. For event msgs, the PDU for different event ops are also quite different, e.g., sub/unsub differ event notification format.

      Thank you.
      Weiming