Subject: Re: [issue 7] All PL messages addressed to only LFBs?

From: "Khosravi, Hormuzd M" <[email-masked]>
Date: Mon, 22 Nov 2004 23:13:02 -0800

Jamal,

I maintain that the grammar does not change. Let me reiterate an example
that we have discussed several times before,

HB msg = MAINHDR only...that does not change the grammar.

Another example,

Event Report msg = MAINHDR<LFBselect>+...it is addressed to the entire
CE for example, but still contains event information in terms of LFBs.

Msgs containing information in terms of LFBs does not require them to be
addressed to LFBs.

Hope this helps,
Hormuzd

-----Original Message-----
From: Forwarding and Control Element Separation
[mailto:[email-masked]] On Behalf Of Jamal Hadi Salim
Sent: Monday, November 22, 2004 6:27 PM
To: [email-masked]
Subject: Re: [FORCES] [issue 7] All PL messages addressed to only LFBs?

Hormuzd,

The piece of text you edited out states how:

a) the grammar changes (you claim below it doesnt)
I am cut n pasting here again for your convinience.

--
i.e grammar stays (forever) as:

PL level PDU : = MAINHDR<LFBselect>+
LFBselect := LFBCLASSID LFBInstance <OPER>+
OPER:= <OPERATION [<path-data>]*>+

instead of:

PL level PDU : = MAINHDR <HB>|<ASSOC>|<YETTOBEDEFINED>|<LFBselect>+
LFBselect := LFBCLASSID LFBInstance <OPER>+
OPER:= <OPERATION [<path-data>]*>+
HB := ...
ASSOC := ...
YETTOBEFEFINED1 := ...
YETTOBEFEFINED2 := ...
-----

Hopefully the difference is clear.

b) in the case of parsing, piece you edited out said:

-----
You save almost nothing in terms of parsing in processing cycles by
keeping it that way. And you loose in elegance/consistency departments
by having exceptions to the rule.
----

I should add that from experience you have a lot less code to write
in the first grammar (where termination is at the LFB) because of
reusability reasons than in the second where you have speacial cases.
You claim below quiet the opposite of what i state.

Please address these issues in your response.

cheers,
jamal

---

From: Jamal Hadi Salim <[email-masked]>
Date: Tue, 23 Nov 2004 08:37:05 -0500

Hormuzd,

> Msgs containing information in terms of LFBs does not require them to be

I dont think i made my point clear,
Let me describe this a different way.

There are two grammars

The first one:
PL level PDU : = MAINHDR <HBexception>|
                         <ASSOCexception>|
                         <YETTOBEDEFINEDexception>|
                         <LFBselect>+
LFBselect := LFBCLASSID LFBInstance <OPER>+
OPER:= <OPERATION [<path-data>]*>+
HBexception := ...
ASSOCexception := ...
YETTOBEFEFINED1exception := ...
YETTOBEFEFINED2exception := ...

The second one:

Or lets put it in pseudo-english:

The first one:

"for all incoming messages,
     if it is a heartbeat, speacial process
     if it is a association, ...
     if it is a TBD1 ...
     if it is a TBD2 ...
        else
            look at LFB selector ...
"

And as you keep adding new ones, you add more exception
handles in message processing loop.

vs, the second one:
"for all incoming messages,
    look at LFB selector ...
"

So question to you:

a) do you agree they are different?
and, if yes:
b) which one do you think is better?

cheers,
jamal