Hi Nitin,

Please see zzh> below.




   o  tunnel encap: This can be an encap representing an IP tunnel or

      MPLS tunnel or others as defined in this document.  An optional

      egress interface can be specified to indicate which interface to

      send the packet out on.  The egress interface is useful when the

      network device contains Ethernet interfaces and one needs to

      perform address resolution for the IP packet.



I don't think an egress interface should be part of the tunnel encap. The 
egress interface and optionally a nbr address should be in a separate chain 
member.

NB> What the above paragraph is referring to is the below statement in the 
grammar:
<nexthop-chain-member> :: ...
                                                   (<tunnel-encap> 
[<EGRESS_INTERFACE>]) |


The goal here was to clearly specify what combination of options make sense.


 Zzh> The same comment still applies. A chain is a list of chain-members; a 
chain-member could be an <egress-interface> [<address>]; so from the grammar 
pov, <egress-interface> should not be there. If you want to specify what 
combination of options make sense, how do you say <logical-tunnel><rib_name> 
(and many others) does not make sense?




    <nexthop-base> ::= <nexthop-special> | <nexthop-chain>





    <nexthop-chain> ::= <nexthop-chain-member> ...

    <nexthop-chain-identifier> ::= <NEXTHOP_CHAIN_NAME> |

                                <NEXTHOP_CHAIN_ID>



When would you use "chain_name"? What's the difference/relationship between 
<NEXTHOP_CHAIN_ID> and nexthop-identifier?


NB>  Removed CHAIN_NAME. CHAIN_NAME and CHAIN_ID were one and the same thing. 
Nexthop-identifier (as referenced in Section 4) is really something like a 
<NEXTHOP_IDENTIFIER> that identifies a particular <nexthop>. I have changed 
"nexthop-identifier" to "nexthop identifier" to remove confusion that it is a 
special term. <NEXTHOP_CHAIN_ID> is something that identifies a <nexthop-chain>.

Zzh> Can you clarify "nexthop-identifier ... is ... like a 
<NEXTHOP_IDENTIFIER>". <NEXTHOP_IDENTIFIER> is not defined in the spec. If  you 
say "<NEXTHOP_IDENTIFIER> is nexthop identifier as referenced in section 4" 
then it's clear :)
Zzh> I don't understand why you say "<NEXTHOP_CHAIN_ID> is something that 
identifies a <nexthop-chain>". <NEXTHOP_CHAIN_ID> is part of the following, so 
why would it identify a chain (vs. a chain member) .

<nexthop-chain> ::= <nexthop-chain-member> ...
<nexthop-chain-identifier> ::= <NEXTHOP_CHAIN_NAME> |
                                <NEXTHOP_CHAIN_ID>
<nexthop-chain-member> ::= <nexthop-chain-member-identifier> |


------------------------


<mpls-header> ::= (<mpls-label-operation> ...)

<mpls-label-operation> ::= (<MPLS_PUSH> <MPLS_LABEL> [<S_BIT>]

                            [<TOS_VALUE>] [<TTL_VALUE>]) |

                            (<MPLS_POP> [<TTL_ACTION>])



<mpls-header> is part of <tunnel-encap> - so <MPLS_POP> does not make sense?


NB> There was no easy place to put the POP operation. One option would have 
been to define <tunnel-decap>.


Zzh> I think that option is better.

_______________________________________________
i2rs mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/i2rs

Reply via email to