Hi WG,

In the GIT repository, I am propossing a different way to address this semantic 
keeping a single leaf per “case” by using choice.

We had a discussion over the webex last week but wanted to keep the WG upto 
speed in case there are any comment.


    choice rd-choice {
      case directly-assigned {
        leaf rd {
          type rt-types:route-distinguisher;
        }
      }
      case pool-assigned {
        leaf rd-pool-name {
          type string;
        }
      }
      case no-rd {
        leaf no-rd {
          type empty;
        }
      }
    }

Issue tracker: https://github.com/IETF-OPSAWG-WG/l3nm/issues/114

Regards,
Roque



From: OPSAWG <[email protected]> on behalf of "Roque Gagliano (rogaglia)" 
<[email protected]>
Date: Monday, 1 June 2020 at 21:15
To: Qin Wu <[email protected]>, Oscar González de Dios 
<[email protected]>, opsawg <[email protected]>
Subject: Re: [OPSAWG] Minutes of L3NM/L2NM module discussions

Hi Qin,

You are absolutely right, I made a bad copy between what I tested:

    leaf rd {
      type rt-types:route-distinguisher;
    }
    container dynamic-assign-rd {
      presence "Auto-assign-rd";
      when "not(../rd)";
      leaf rd-pool-name {
        type string;
      }
    }

Regarding this point:

Should rd-pool-name be defined in L3SM, how does upper layer OSS the RD pool 
list and related names?
If rd-pool-name is introduced only for troubleshooting, should a separate NBI 
interface should be defined to expose RD pool resource to the upper layer OSS 
and maintain the binding between RD and RD pool?

[Roque] I am not very familiar with L3SM but I believe L3NM should have its own 
lifecycle and not assume that the northbound system is even using L3SM (could 
be something else). In any case, the assumption that RDs can be assigned 
dynamically was already in the original L3NM document. I only pointed out that 
a controller may need more guidance on how to perform this auto-assignment.

Remember the Original description text:
    //   "Route distinguisher value. If this leaf has not been
    //    configured, the server will auto-assign a route
    //    distinguisher value and use that value operationally.
    //    This calculated value is available in the operational
    //    state. Use the empty type to indicate rd has no value
    //    and is not to be auto-assigned"


Please give your troubleshooting usage example to explain how the anomaly in 
the network change can be located and repaired.

[Roque] There are many reasons why people perform log analysis in the 
northbound APIs. Some related to problems but some related to auditing or 
accounting. I would be able to answer your specific question but that is 
implementation-specific.

Also in your proposed, I think RD should be defined as 
rt-types:route-distinguisher instead of empty type.

[Roque] Correct, see above (copy and paste error)

Roque

-Qin
发件人: OPSAWG [mailto:[email protected]] 代表 Roque Gagliano (rogaglia)
发送时间: 2020年5月26日 17:39
收件人: Oscar González de Dios <[email protected]>; opsawg 
<[email protected]>
主题: Re: [OPSAWG] Minutes of L3NM/L2NM module discussions

Hi Oscar,

Thursday was a national holiday and I was not able to participate.

I believe I did say in my previous email that there are not syntax issues with 
using the union of an empty leaf. I implemented two logics for dynamic rd, one 
using the current draft construct and one using a different construct with a 
presence container (to avoid an extra leaf). The reason for a container is that 
I believe we are also missing to say something about the pool from where the RD 
should be chosen as there could be more than one pool in a network. So, we will 
need additional leafs anyhow:

    leaf rd {
      type empty;
    }
    container dynamic-assign-rd {
      presence "Aut-assign-rd";
      when "not(../rd)";
      leaf rd-pool-name {
        type string;
      }
    }

Now, let’s put owerselves on the shoes of a person troubleshooting some 
provisioning problems of validating a posible network change, Which of these 
two payloads are clearer to know that a dynamic RD should be used?


1)     Implicit using current draft:



{

  "data": {

    "ietf-l3vpn-ntw:l3vpn-ntw": {

      "vpn-services": {

        "vpn-service": [

          {

            "vpn-id": "650087400",

            "ie-profiles": {

              "ie-profile": [

                {

                  "ie-profile-id": "ie_00”

                }

              ]

            }

          }

        ]

      }

    }

  }

}

2)      Using Explicit mentioned with a presence container and specifying the 
name of the pool:


{

  "data": {

    "ietf-l3vpn-ntw:l3vpn-ntw": {

      "vpn-services": {

        "vpn-service": [

          {

            "vpn-id": "650087400",

            "ie-profiles": {

              "ie-profile": [

                {

                  "ie-profile-id": "ie_00",

                  "dynamic-assign-rd": {

                    "rd-pool-name": "metro1_rd_pool"

                  }

                }

              ]

            }

          }

        ]

      }

    }

  }

}



Regards,
Roque


From: OPSAWG <[email protected]<mailto:[email protected]>> on 
behalf of Oscar González de Dios 
<[email protected]<mailto:[email protected]>>
Date: Thursday, 21 May 2020 at 16:27
To: opsawg <[email protected]<mailto:[email protected]>>
Subject: [OPSAWG] Minutes of L3NM/L2NM module discussions

Dear OPSAWG colleagues,

                Thanks for participating in the call today. Please find bellow 
the minutes:

L3NM and L2NM module discussions
* Date: 21-May-2020

Participants
- Oscar Gonzalez de Dios (Telefonica)
- Samier Barguil (Telefonica)
- Anton Snizar (Sedona)
- Daniel King (Old Dog Consulting)
- Adrian Farrel (Old Dog Consulting)
- Qin Wu (Huawei)
- Sergio Belotti ()
- Sriram Krishnamurthy (Nokia)
- Italo Busi (Huawei)

1. Agenda:
    - Revision of the L3NM Github issues 
(https://github.com/IETF-OPSAWG-WG/l3nm/issues)

2. L3NM
    Revision of the three main issues:
Implementation Report by Cisco. It has two main issues 
(https://github.com/IETF-OPSAWG-WG/l3nm/issues/110)
- Common module to have all the L3NM specific requirements. Type-like module.
[Anton]: It makes implementation simpler. Does not generate unnecessary 
dependencies
[Adrian]: It depends on if we need module for specific types, to avoid 
unnecessary imports. Also don't you only need to import types, not the entire 
module?
[Qin]: With L3SM we did not take an augmentation approach. If there are common 
types defined in both models, then we may need to find the common components. 
We should decouple of L3SM.
[Sriram]: Prefer to have a separate type-file for the specific parameters.
[Oscar]: Define a common type-file for the service models.
[Qin]: Is it possible to manage it as an independent draft?

[Oscar in github issues]: After the discussions, it seems reasonable to have a 
separate Yang module to contain the types. The suggestion is to write the 
module to cover the four service models (client service models, l3sm, l2sm and 
Network service models, l2nm, l3nm). It seems reasonable to include this module 
in l3nm draft instead of creating a new one to avoid dependencies.
Samier, Dan and Anton to collaborate for a first version of the split

- RD Auto-assigment implementation issue 
(https://github.com/IETF-OPSAWG-WG/l3nm/issues/114)
[Anton]: Do not see an implementation issue. The logic can be used as described 
in the yang.
[Qin]: Same as Anton. If alternative proposal is used, one additional parameter 
is needed
[Sriram]: Same as Anton
      [Oscar]: There seems to be a smaller preference for the original aproach. 
However, in order to be fully sure on the aproach, let's take it to the Yang 
doctor review.
[Oscar in github issues]: Oscar will sent it to the Yang Doctor Review.

Yang Doctor review Issues (https://github.com/IETF-OPSAWG-WG/l3nm/issues/111)
- Oscar will take care of editorial changes in the draft text.
- The review of the groupings will be done in a second round after the split.
- [Oscar in github issues]: Oscar will assign Med Boucadair the references 
issues.

- Protocol-Type: Better as a Indentity 
(https://github.com/IETF-OPSAWG-WG/l3nm/issues/115)
- [Samier]: Its better to have as an Idenity and include as part of the 
type-file.yang
- [Qin]: Idenity is extensible.
[Oscar in github issues]: Assigned to Samier

- Groupings review. It will be done after the review of the Types and modules.

Implementation status: There is text in RFC 7942 that provides guidance on text 
to include to show that the implementation status is not intended to be 
included in the final RFC

Tom Petch review Issues (https://github.com/IETF-OPSAWG-WG/l3nm/issues/112)
    - Oscar fixes the editorial issue of the IANA section.
- [Oscar in github issues]: Oscar will assign Med Boucadair and Qin the 
references issues in the Yang file.. The review needs to be done in after the 
module split to avoid conflicts in the yang. Part of the reference work should 
have been fixed with the update of references for the Yang doctor's review
- [Daniel King]: Volunteers to look at where is the best place to locate the 
examples.

Best Regards,

                Oscar

________________________________

Este mensaje y sus adjuntos se dirigen exclusivamente a su destinatario, puede 
contener información privilegiada o confidencial y es para uso exclusivo de la 
persona o entidad de destino. Si no es usted. el destinatario indicado, queda 
notificado de que la lectura, utilización, divulgación y/o copia sin 
autorización puede estar prohibida en virtud de la legislación vigente. Si ha 
recibido este mensaje por error, le rogamos que nos lo comunique inmediatamente 
por esta misma vía y proceda a su destrucción.

The information contained in this transmission is privileged and confidential 
information intended only for the use of the individual or entity named above. 
If the reader of this message is not the intended recipient, you are hereby 
notified that any dissemination, distribution or copying of this communication 
is strictly prohibited. If you have received this transmission in error, do not 
read it. Please immediately reply to the sender that you have received this 
communication in error and then delete it.

Esta mensagem e seus anexos se dirigem exclusivamente ao seu destinatário, pode 
conter informação privilegiada ou confidencial e é para uso exclusivo da pessoa 
ou entidade de destino. Se não é vossa senhoria o destinatário indicado, fica 
notificado de que a leitura, utilização, divulgação e/ou cópia sem autorização 
pode estar proibida em virtude da legislação vigente. Se recebeu esta mensagem 
por erro, rogamos-lhe que nos o comunique imediatamente por esta mesma via e 
proceda a sua destruição
_______________________________________________
OPSAWG mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/opsawg

Reply via email to