Alex Audu | 1 Jun 2006 03:04
Picon
Favicon

Re: Model Draft Progress

Hello Patrick, Joel,
 
I think I was one of the volunteers who agreed to take a closer read of the Model draft.  Sorry I haven't
had the chance to do so yet due to other commitments.  But I'll start on it right away.
 
Cheers,
Alex.
 
 
-----Original Message-----
From: Patrick Droz <dro <at> zurich.ibm.com>
To: FORCES <at> PEACH.EASE.LSOFT.COM
Sent: Tue, 30 May 2006 11:28:40 +0200
Subject: Model Draft Progress

.AOLPlainTextBody { margin: 0px; font-family: Tahoma, Verdana, Arial, Sans-Serif; font-size: 12px; color: #000; background-color: #fff; } .AOLPlainTextBody pre { font-size: 9pt; } .AOLInlineAttachment { margin: 10px; } .AOLAttachmentHeader { border-bottom: 2px solid #E9EAEB; background: #F9F9F9; } .AOLAttachmentHeader .Title { font: 11px Tahoma; font-weight: bold; color: #666666; background: #E9EAEB; padding: 3px 0px 1px 10px; } .AOLAttachmentHeader .FieldLabel { font: 11px Tahoma; font-weight: bold; color: #666666; padding: 1px 10px 1px 9px; } .AOLAttachmentHeader .FieldValue { font: 11px Tahoma; color: #333333; }
During our last IETF I asked the model team to progress the 
draft. Joel as well asked to get some support from the rest 
of the team. Unfortunately, so far only little progress has 
been made. The chairs would really like to see more progress 
on the draft. We are already approaching the next IETF. 
People from the model team or other working group members 
are encouraged to make contributions and help Joel to 
advance the draft. No progress on the model draft will hold 
back all our other drafts that are ready to become RFCs. 
 
Thank you, 
Patrick 
 
--   Dr. Patrick Droz | dro <at> zurich.ibm.com 
  IBM Zurich Research Laboratory | http://www.zurich.ibm.com/~dro 
  Saumerstrasse 4 | Tel. +41-44-724-85-25 
  CH-8803 Rueschlikon/Switzerland | Fax. +41-44-724-85-78 
Alex Audu | 12 Jun 2006 08:53
Picon
Favicon

Re: Model Draft Progress

Hi All,
 
I went through the model draft.  One thing that stood out as a possible problem to me was section 4.2
(Library Element).  The section states that each of the blocks that make up the library element is optional.
If that is the case, we can end up with a sceanrio where there is no single library block present.  What would
be the implication of this?
 
 
Also, there are many "EDITOR'S NOTE" scattered in various places in the document.  These probably would
need to be addressed before we can advance the document.
 
The document has really come a long way.
 
Thanks and Regards,
Alex
 
 
PS: I am attaching the rest of the review notes below:
 
=====================================================================
 
   3.3.2. Configuring the LFB Topology  
  [
      configuration capabilities.  Therefore, the FE model MUST provide a
      mechanism for describing the LFB topology configuration capabilities
   
   Yang, et al.      Expires September 2006                     [Page 33]
JiaFenggen | 12 Jun 2006 15:03
Picon
Favicon

Re: Model Draft Progress

Still looking through the model draft,give out my opions for now.

in section 4.5. <dataTypeDefs> Element for Data Type Definitions,we have both definitions byte[N] and octetstring[N],I think octetstring[N] will satify our needs,for packet buffers and for some state infomation.
 
 
 some typo mistakes,i think:
 1 in section 4.5.6 <alias> Element
      The target of an <alias> element is determined by its properties. 
      Like all elements, the properties MUST include the support / read /
      write permission for the alias.  In addition, there are several
      fields in the properties which define the target of the alias. 
      These fields are the ID of the LFB cl ass of the target, the ID of
      the LFB instance of the target, and a sequence of integers
      representing the path within the target LFB instance to the target
      element.  The type of the target element must match the declared
      type of the alias.  Details of the alias property structure in <----- should it be "is"---------> in
      the section of this document on properties.
     
 2 in section 3.2.8. LFB Inheritance
      An interesting issue related to class inheritance is backward
      compatibility between a descendant and an ancestor class.   Consider
      the following h ypothetical scenario where a standardized LFB class
      "L1" exists.  Vendor A builds an FE that implements LFB "L1" and
      vendor B builds a CE that can recognize and operate on LFB "L1". 
      Suppose that a new LFB class, "L2", is defined based on the existing
      "L1" class by extending its capabilities incrementally. Let us
      examine the FE backward compatibility issue by considering what
      would happen if vendor B <------- should be vendor A -------> upgrades its FE from "L1" to "L2" and
      vendor C's <------ should be vendor B's--------->) CE is not changed.  The old L1-based CE can interoperate
      with the new L2-based FE if the derived LFB class "L2" is indeed
      backward compatible with the base class "L1". 
 
BTW,alex,I have some idea about you opinion,see my comments inline.
 
 
Date: Mon, 12 Jun 2006 02:53:34 -0400
From: aaudu2000 <at> aol.com
Subject: Re: Model Draft Progress
To: FORCES <at> PEACH.EASE.LSOFT.COM

Hi All,
 
I went through the model draft.  One thing that stood out as a possible problem to me was section 4.2
(Library Element).  The section states that each of the blocks that make up the library element is optional.
If that is the case, we can end up with a sceanrio where there is no single library block present.  What would
be the implication of this?
 
<----fenggen----->IMO,just like .h file in C language,we may define a library document only include load directives,does it make sense? 
 
Also, there are many "EDITOR'S NOTE" scattered in various places in the document.  These probably would
need to be addressed before we can advance the document.
 
The document has really come a long way.
 
Thanks and Regards,
Alex
 
 
PS: I am attaching the rest of the review notes below:
 
=====================================================================
 
   3.3.2. Configuring the LFB Topology  
  [
      configuration capabilities.  Therefore, the FE model MUST provide a
      mechanism for describing the LFB topology configuration capabilities
   
   Yang, et al.      Expires September 2006                     [Page 33]
   Internet Draft         ForCES FE Model              March 2006
   
   
      of an FE.  These capabilities may include (see Section 5 for full
      de tails):
      
        . Which LFB classes the FE can instantiate
        . Maximum number of instances of the same LFB class that can be
           created
        . Any topological limitations, For example:
             o The maximum number of instances of the same class or any
                class that can be created on any given branch of the graph
             o Ordering restrictions on LFBs (e.g., any instance of LFB
                 class A must be always downstream of any instance of LFB
                class B).
  ]
 Comments:
 We many need to include bandwidth or speed capability measure.
(This also affects section:  5.2. FE Capabilities)
<-----fenggen---->Could you further state in what circumstance these attribute may help?
 
 
Yours,Fenggen
National Digital Switching Engineering&Technology Research Center(NDSC),
Zhengzhou,China
 
 

更改您使用即时消息的方式: Windows Live Messenger Beta
Joel M. Halpern | 12 Jun 2006 16:13

Re: Model Draft Progress

I would like to keep both datatypes.
byte[N] is defined to be a byte string of exactly N bytes.  It is 
used for things like IPv4 address, IPv6 address, IEEE Mac address, or 
any other fixed size byte string.
octetstring is a variable length sequence of bytes, such as a packet 
buffer, a variable length identifier, etc.
The distinction is described in section 4.5.  If you think we need 
more words, please let me know where and what words, and I will be 
happy to put them in.

Yours,
Joel

At 09:03 AM 6/12/2006, JiaFenggen wrote:
>in section 4.5. <dataTypeDefs> Element for Data Type Definitions,we 
>have both definitions byte[N] and octetstring[N],I think 
>octetstring[N] will satify our needs,for packet buffers and for some 
>state infomation.

Joel M. Halpern | 12 Jun 2006 16:20

Re: Model Draft Progress

Thanks for reading the document.
With regard to the Editor's notes, I sent a series of emails to the 
list last March proposing resolutions for each and every one.  A few 
people commented on 1 such note.  Most of them seem to have been 
ignored.  If folks want, I can go through and resend all of them.

With regard to the library, I agree that we need a common set of 
library elements.  I don't think the protocol needs to mandate 
them.  If we produce an initial library draft which, at least for 
common functions, provides a way to represent the function, then 
folks will use that.  Of course, the fact that no one has sent ANY 
contributions to the library draft since the last meeting does not 
give me great hope in that regard.

I will comment on your other issues in a separate response.

Yours,
Joel

Joel M. Halpern | 12 Jun 2006 16:36

Re: Model Draft Progress

Thank you for going through the document carefully.
Responses in line.

At 02:53 AM 6/12/2006, Alex Audu wrote:
>=====================================================================
>
>    3.3.2. Configuring the LFB Topology
>   [
>       configuration capabilities.  Therefore, the FE model MUST provide a
>       mechanism for describing the LFB topology configuration capabilities
>
>    ...
>   ]
>  Comments:
>  We many need to include bandwidth or speed capability measure.
>(This also affects section:  5.2. FE Capabilities)

If we want more capabilities, I would be happy to add them.  Probably 
just in 5.2, since 3.3.2 does not claim to be comprehensive.  I 
presume that there are more capabilities, and more statistics, desired.
But I am not going to invent them myself.

Having said that, I don't think that there is a useful "bandwidth" or 
"speed" capability for the FE as a whole.  It has a set of ports, 
each of which may have performance capabilities.  I would not want to 
try to represent in forces the question of whether the FE can 
actually handle wire-rate minimal size packets on all interfaces, or 
just what combination it can handle.

Ports, and similar constructs will likely have both performance 
capabilities and performance statistics.

>
>
>    4.2. <LFBLibrary> Element
>    [
>       The <LFBLibrary> element serves as a root element of all library
>       documents. It contains one or more of the following main blocks:
>       ...
>       Each block is optional, that is, one library document may contain
>       only metadata definitions, another may contain only LFB class
>       definitions, yet another may contain all of the above.
>    ]
>
>    Comments:
>    Each library block being optional implies that you could have a situation
>    where no block is present at all.  What would that mean?

It would mean one had a syntactically valid but useless library 
document.  It doesn't hurt anything for that to be legal.  No one 
will use it, and if they do it will be ignored.

>
>
>   4.5.3. <array> Element to Define Arrays
>
>   In the following, the elementID 2 has both <name> and <typeRef> 
> of "opcode".
>   Is that intentional? It could be difficult for the parser to tell which is
>   which.
>       <dataTypeDef>
>   ...
>             <element elementID="2">
>               <name>opcode</name>                        <<<<---------
>               <synopsis>The result code</synopsis>
>               <typeRef>opcode</typeRef>                   <<<---------
>             </element>
>   ...

This looks like a case that is perfectly legal, and a bad idea.

The array (elided) contains a structure.  The structure contains two 
components (elements).  The second component is named (for human 
discussion / description purposes) "opcode".  That name is only 
meaningful in element references.
The type of the element is a declared type of opcode.  That is a 
meanign only in type contexts.
So the two can be disambiguated.

However, that is clearly a bad idea, and does NOT promote clear 
understanding.  I will change one or the other name when I revise the document.

>    4.5.6. Augmentations
>    Another 4.5.6 subection ??? (See above for the first one)
>    Is "augmentation" a mechanism for inheritance?

Yes, Augmentation is related to inheritance, and is another way to 
build up structures / types.  And yes, it shoudl be 4.5.7.  (MS Word 
is not my friend.)

>Also address the following EDITOR note:
>         . The optional <defaultValue> element can specify a default value
>            for the attribute, which is applied when the LFB is initialized
> >>>        or reset.  [EDITOR: A convention to define default values for
>            compound data types and byte[N] atomic types is yet to be
>            defined.]

Do you have a suggestion for a reasonable syntax for this?

>    5.2.2.6. LFBClassCapabilities
>
>    When do we fill in the "important omissions" in the folowing paragraph?
>
>    [
>       This element contains capability information about the subject LFB
>       class whose structure and semantics are defined by the LFB class
>       definition.
>
>   >>> [Note:  Important Omissions]
>
>       However, this element does not appear in the definition, because the
>       author can not figure out how to write it.
>   ]

I believe that this was not addressed by any of my earlier notes.
Currently, the way out is to not have "class level" 
capabilities.  Rather, any such capabilities get defined on instances.
This means that
a) The FE pretends there is duplicate information in each instance 
(not a big deal)
b) The CE must create an instance to get any class level 
capabilities. (Unfortunate.)

If folks care about the issue, then we have to figure out what we 
want to put in the FE Attribute information.  We have the per-class 
table already.  One approach would be:
1) Define an element for LFBClassCapabilites.
2) Define the Content to be ANY and the attributes to be ANY
3) State the the LFB definition must also include a schema fragment 
for its class capabilities, if any.
While this works, it is really hard for any standard XML processor to 
make use of.

Anyone have a better suggestion?

Yours,
Joel M. Halpern

Patrick Droz | 14 Jun 2006 11:52
Picon
Favicon

Agenda IETF Montreal

ForCES will meet at the next IETF in Montreal. At the moment
we are on Monday afternoon on the agenda. Please let me and
David know if you need some time on the agenda.

Thanks,
Patrick

Attachment (smime.p7s): application/x-pkcs7-signature, 5343 bytes
Alex Audu | 16 Jun 2006 20:52
Picon
Favicon

http://www.ietf.org/internet-drafts/draft-ietf-forces-tmlsp-00.txt

Hi All,
 
I took a quick read of the TMLSP draft. These are my comments:
 
==============================================
 3.2. TML Requirements
   ...
   3. Congestion Control
   The congestion control scheme used needs to be defined. The
   congestion control mechanism defined by the TML should prevent the FE
   from being overloaded by the CE or the CE from being overwhelmed by
   traffic from the FE.  Additionally, the circumstances under which
   notification is sent to the PL to notify it of congestion must be
   defined.
Comments: Control message link should never be congested.  Allowing this will
   geopardize the surviveability of the system especially when under traffic
   pressure.  I believe that is why we recommended independent links for CE-FE
   data and control traffic. The data channel can may congest, but not the
   control.

5.5.TML Configuration
  Comments: The PL can use this primitive to set up
   - number of channels for control flow,
   - number of channels for data flow,
   - flow mode ( connection-oriented,..etc)
   - loop-back connection for testing purposes,
   - unicast/multicast channels
   - ....
5.6. TML Query
  
  Comments: PL or management entity can use this primitive to query
  TML states,..for example:
   - error counts / error status
   - packet flow counts
   - band width utilization,
   - configuration status
   - ...
=================================================
 
Regards,
Alex
Check out AOL.com today. Breaking news, video search, pictures, email and IM. All on demand. Always Free.
Jamal Hadi Salim | 16 Jun 2006 22:02

http://www.ietf.org/internet-drafts/draft-ietf-forces-tmlsp-00.txt

Olla!

On Fri, 2006-16-06 at 14:52 -0400, Alex Audu wrote:
> Hi All,
>  
> I took a quick read of the TMLSP draft. These are my comments:
>  
> ==============================================
>  3.2. TML Requirements 
>    ...
>    3. Congestion Control 
>    The congestion control scheme used needs to be defined. The 
>    congestion control mechanism defined by the TML should prevent the
> FE 
>    from being overloaded by the CE or the CE from being overwhelmed
> by 
>    traffic from the FE.  Additionally, the circumstances under which 
>    notification is sent to the PL to notify it of congestion must be 
>    defined. 

> Comments: Control message link should never be congested.  Allowing
> this will
>    geopardize the surviveability of the system especially when under
> traffic
>    pressure.  I believe that is why we recommended independent links
> for CE-FE
>    data and control traffic. The data channel can may congest, but not
> the 
>    control.
> 

It is a hard problem to ensure zero congestion unless you do admission
or rate control - which is not something we have defined as part of
forces (but could be done as a side feature within an implementation).
So we need the above signaling.

> 5.5.TML Configuration 
>   Comments: The PL can use this primitive to set up 
>    - number of channels for control flow,
>    - number of channels for data flow,
>    - flow mode ( connection-oriented,..etc)
>    - loop-back connection for testing purposes,
>    - unicast/multicast channels
>    - ....

Did you mean F/CEM instead of PL? It would make sense if it is.

> 5.6. TML Query 
>    
>   Comments: PL or management entity can use this primitive to query 
>   TML states,..for example:
>    - error counts / error status
>    - packet flow counts
>    - band width utilization,
>    - configuration status
>    - ...
> 
Maintaining these stats is valuable, but:
What would be the purpose of such knowledge for the PL? I can see the
desire for such an interface to be used for the xEM for example. 

cheers,
jamal

Wang,Weiming | 17 Jun 2006 07:56
Picon

http://www.ietf.org/internet-drafts/draft-ietf-forces-tmlsp-00.txt

Hi Alex,

thanks so much for the review. pls see inline replies.

Yours,
Weiming

----- Original Message ----- 
From: Alex Audu

 3.2. TML Requirements
   ...
   3. Congestion Control
   The congestion control scheme used needs to be defined. The
   congestion control mechanism defined by the TML should prevent the FE
   from being overloaded by the CE or the CE from being overwhelmed by
   traffic from the FE.  Additionally, the circumstances under which
   notification is sent to the PL to notify it of congestion must be
   defined.
Comments: Control message link should never be congested.  Allowing this will
   geopardize the surviveability of the system especially when under traffic
   pressure.  I believe that is why we recommended independent links for CE-FE
   data and control traffic. The data channel can may congest, but not the
   control.
[Weiming] I actually agree control message link should never be congested.  But
note that keeping the mechanism for TML to notify PL of any congestion state
event does not mean we overthrow the principle. In most cases, it may just acts
as a signal to ask PL to stop draining ctr msgs to the TML. This actually has
nothing to do with the real congestion on the link.  We required that a TML must
provide a scheme to avoid congestion just on the wire.

5.5.TML Configuration
  Comments: The PL can use this primitive to set up
   - number of channels for control flow,
   - number of channels for data flow,
   - flow mode ( connection-oriented,..etc)
   - loop-back connection for testing purposes,
   - unicast/multicast channels
   - ....
[Weiming] I think Jamal's reply is relavant to the question. These functions
should  belong to CEM/FEMs.  After PL reuiremesnts to TML are met, It should be
TML's own business how to arrange things like  channels and flow modes to
realistically meet the requirements.  Unicast/Multicast is also the same.  The
only thing that TML SP should address is some parameters needed for multicast,
that must be generated by PL.

5.6. TML Query

  Comments: PL or management entity can use this primitive to query
  TML states,..for example:
   - error counts / error status
   - packet flow counts
   - band width utilization,
   - configuration status
   - ...
[Weiming] I may first note that current XML based TML model is quite open to TML
attributes definitions.  Without any change to TML SP,  new necessary TML
attributes can be added.  For the TML states you mentioned above,  I think
configuration status is the only state PL is interested. For others, xEMs may be
more interested, as Jamal noted.

Thanks again.

=================================================

Regards,
Alex
www.garlandsoftworx.com


Gmane