Hi Acee, The area-level will control the origination of the SR information in the area-scoped RI LSAs (SR algo, SRGB, etc.) without that the interface enablement will not amount to much really. Practically, the area enablement is more significant IMHO - when enabled, it can be also enabled for all interfaces in that area (as in a hierarchical thing).
Thanks, Ketan On Tue, Apr 1, 2025 at 11:05 PM Acee Lindem <acee.i...@gmail.com> wrote: > Hi Ketan, > > > On Apr 1, 2025, at 1:10 PM, Ketan Talaulikar <ketant.i...@gmail.com> > wrote: > > > > Hi Acee, > > > > Thanks for your quick response and please check inline below. > > > > > > On Tue, Apr 1, 2025 at 10:19 PM Acee Lindem <acee.i...@gmail.com> wrote: > > Hi Ketan, > > > > As with the other AD comments, I respond to the DISCUSS-level comments > first. > > > > > > > On Apr 1, 2025, at 10:57 AM, Ketan Talaulikar via Datatracker < > nore...@ietf.org> wrote: > > > > > > Ketan Talaulikar has entered the following ballot position for > > > draft-ietf-ospf-sr-yang-37: Discuss > > > > > > When responding, please keep the subject line intact and reply to all > > > email addresses included in the To and CC lines. (Feel free to cut this > > > introductory paragraph, however. > > > Please refer to > https://www.ietf.org/about/groups/iesg/statements/handling-ballot-positions/ > > > for more information about how to handle DISCUSS and COMMENT positions. > > > > > > > > > The document, along with other ballot positions, can be found here: > > > https://datatracker.ietf.org/doc/draft-ietf-ospf-sr-yang/ > > > > > > > > > > > > ---------------------------------------------------------------------- > > > DISCUSS: > > > ---------------------------------------------------------------------- > > > > > > A couple of points for discussion: > > > > > > <discuss-1> I see the following in the Appendix B: > > > > > > 1833 augment /rt:routing/rt:control-plane-protocols > > > 1834 /rt:control-plane-protocol/ospf:ospf: > > > 1835 +--rw segment-routing > > > 1836 | +--rw enabled? boolean > > > 1837 | +--rw bindings {mapping-server}? > > > 1838 | +--rw advertise > > > 1839 | | +--rw policies* leafref > > > 1840 | +--rw receive? boolean > > > 1841 +--rw protocol-srgb {sr-mpls:protocol-srgb}? > > > 1842 +--rw srgb* [lower-bound upper-bound] > > > 1843 +--rw lower-bound uint32 > > > 1844 +--rw upper-bound uint32 > > > > > > But I am not able to find these augmentations in the model itself. Am I > > > missing something? YANG is not my forte. I am unable to find this > across > > > modules and wanted to cross-check. > > > > This is imported from the ietf-segment-routing-mpls YANG module. > Hopefully, you're at least using a modern mailer viewer. See the line in > red below or look for "uses sr-mpls.sr-control-plane". > > > > KT> Got it. Thanks. I hope my eyesight for YANG models improves as I > work through this gig. > > > > > > augment "/rt:routing/rt:control-plane-protocols" > > + "/rt:control-plane-protocol/ospf:ospf" { > > when "derived-from(/rt:routing/rt:control-plane-protocols/" > > + "rt:control-plane-protocol/rt:type, 'ospf:ospf')" { > > description > > "This augments the OSPF routing protocol when used."; > > } > > description > > "This augments the OSPF protocol configuration with segment > > routing for the MPLS data plane. The following semantic > > validation be performed for the configuration data: > > - Assure the binding policies prefixes do not overlapp."; > > reference > > "RFC 9020 - YANG Data Model for Segment Routing"; > > uses sr-mpls:sr-control-plane; > > container protocol-srgb { > > if-feature "sr-mpls:protocol-srgb"; > > uses sr-cmn:srgb; > > description > > "Per-protocol SRGB."; > > } > > } > > > > > > > > > > Also, I am not able to find the RW (config) options for enabling (with > a bool) > > > SR-MPLS for a specific OSPF area, or interface in the model. Have I > missed > > > this as well? If it is not covered, was this discussed during the > development > > > of this model in the WG? > > > > This isn't there. As one of the most active members of the LSR WG (in > terms of drafts), why is this the first time you are looking at this? I > guess you are ashamed 😎 > > > > KT> Yes, I am ashamed :-( ... no excuses to offer! > > Please provide the semantics of these parameters and the co-authors > will consider - you don't need to be a YANG expert to provide this. > > > > KT> Please check if the "enabled" option for SR-MPLS can be provided > under the area-level so as to control enablement in specific portions of an > OSPF network. It was something that was helpful in the early days of SR. > Same applies for ISIS as well. That said, this is not something that > qualifies as a DISCUSS if not taken up in this document. > > I found what was intended for interfaces in ietf-segment-routing-mpls.yang > - I will add augmentations to ietf-ospf-sr-mpls module. I am ashamed 😎 > > So, at the area level it is a simply boolean? What if SR is not enabled in > any interfaces in the area and it is enabled at the top level? Similarly, > what if it is enabled on interfaces but not enabled at the area level? > Should this be prevented? In other words, what is intended here? > > Thanks, > Acee > > > > > > > > > > > > > > > > <discuss-2> I see that the model defines grouping for > ospfv3-adj-sid-sub-tlvs > > > but not for OSPFv2 for the same thing (it is modeled directly as a > container). > > > I would like to understand why so? > > > > Because OSPFv3 is fundamentally different in that the extensions are > whole contained in OSPFv3 E-LSAs and in OSPFv2 they are advertised in the > ancillary OSPFv2 Extended Prefix LSA. > > > > KT> Sure. However, the same applies to prefix SID as well which is > modeled as a grouping for both OSPFv2 and v3. However, adj SID is modeled > as a grouping only for OSPFv3. In other words, why not define "grouping > ospfv2-adj-sid-sub-tlvs" and included it with "uses" under the following > augment for OSPFv2 > > > > augment "/rt:routing/" > > + "rt:control-plane-protocols/rt:control-plane-protocol/" > > + "ospf:ospf/ospf:areas/" > > + "ospf:area/ospf:database/" > > + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/" > > + "ospf:area-scope-lsa/ospf:version/ospf:ospfv2/" > > + "ospf:ospfv2/ospf:body/ospf:opaque/" > > + "ospf:extended-link-opaque/ospf:extended-link-tlv" { > > when "derived-from(/rt:routing/rt:control-plane-protocols/" > > + "rt:control-plane-protocol/rt:type, 'ospf:ospfv2')" { > > description > > "This augmentation is only valid for OSPFv2."; > > } > > Am I missing something here? > > > > Thanks, > > Ketan > > > > > > OSPFv3 with Extended LSAs (RFC 8362) is superior to both IS-IS and > OSPFv2 and it is unfortunate that vendor politics have delayed its adoption > as the irrefutable next-generation IGP. > > > > Thanks, > > Acee > > > > > > > > > > > > > > > > > ---------------------------------------------------------------------- > > > COMMENT: > > > ---------------------------------------------------------------------- > > > > > > Please find below some comments that are in the idnits output of v37: > > > > > > > > > 91 2. OSPF Segment Routing YANG Data Module Scope > > > > > > 93 This document defines a model for OSPF Segment Routing Extensions > for > > > 94 both OSPFv2 [RFC8665] and OSPFv3 [RFC8666]. > > > > > > <major> ... for the MPLS data plane. > > > > > > 96 The OSPF SR YANG module requires support for the base segment > routing > > > 97 module [RFC9020], which defines the global segment routing > > > 98 configuration independent of any specific routing protocol > > > 99 configuration, and support of OSPF base model [RFC9129] which > defines > > > 100 basic OSPF configuration and state. > > > > > > 102 The ietf-ospf-sr-mpls data module defines both the data nodes to > > > 103 configure OSPF segment routing MPLS extensions and the additions > to > > > 104 the OSPF Link State Advertisements (LSAs) necessary to support > MPLS > > > 105 segment routing. The OSPF configuration includes: > > > > > > <minor> s/MPLS segment routing/SR-MPLS > > > > > > > > > 156 * OSPFv3 Adj-SID Sub-TLV in the OSPFv3 Router-Link TLV > [RFC8362]. > > > > > > 158 * OSPFv3 Adj-SID Sub-TLV in the OSPFv3 Router-Link TLV > [RFC8362]. > > > > > > 160 * OSPFv3 Lan Adj-SID Sub-TLV in the OSPFv3 Router-Link TLV > > > 161 [RFC8362]. > > > > > > <nit> s/Lan/LAN > > > > > > <minor> Please add [RFC8666] reference as well above for (LAN) Adj-SID > > > encodings > > > > > > > > > 418 /* Groupings */ > > > 419 grouping sid-tlv-encoding { > > > 420 description > > > 421 "SID TLV Encoding - 20-bit label or 32-bit SID whose > > > > > > <minor> s/SID/SID index > > > > > > 422 interpretation is dependent on the TLV length (3 for an > > > 423 MPLS label or 4 for a 32-bit value) or the TLV V-Flag and > > > 424 L-Flag settings: > > > > > > 426 If the V-Flag is set to 0 and L-Flag is set to 0: > > > 427 The SID/Index/Label field is a 4-octet index defining > > > 428 the offset in the SID/Label space advertised by this > > > 429 router. > > > > > > 431 If V-Flag is set to 1 and L-Flag is set to 1: The > > > 432 ID/Index/Label field is a 3-octet local label where the > > > 433 20 rightmost bits are used for encoding the label > value."; > > > 434 reference > > > 435 "RFC 8665: OSPF Extensions for Segment Routing, Section 5 > > > 436 RFC 8666: OSPFv3 Extensions for Segment Routing, Section > 3"; > > > 437 leaf sid-raw { > > > 438 type uint32; > > > 439 description > > > 440 "Raw SID value - labels are in the rightmost 20 bits of > > > 441 the value"; > > > 442 } > > > 443 choice sid-value { > > > 444 case label-sid { > > > 445 leaf label-value { > > > 446 type uint32 { > > > 447 range "0 .. 1048575"; > > > 448 } > > > 449 description > > > 450 "A 20-bit MPLS Label"; > > > 451 } > > > 452 } > > > 453 case offset-sid { > > > 454 leaf offset-value { > > > > > > <major> I am not familiar of this "offset" term. What is used more > often is > > > "index" since the value is an index into the (SRGB) label space > advertised. > > > It is not an "offset" since SRGB may comprise of multiple > non-contiguous > > > blocks - they need to be arrange in the order of advertisement to form > a > > > single block and then this index is used to pick the label value. To > me, > > > offset sounds more like something done in memory location that assume > it to be > > > contiguous. > > > Suggest ... > > > s/label-sid/sid-label > > > s/offset-sid/sid-index ... s/offset-value/index-value > > > > > > 455 type uint32; > > > 456 description > > > 457 "Offset into a label space advertised by this > router."; > > > 458 } > > > 459 } > > > 460 description > > > 461 "Choice of either a 20-bit MPLS lable or 32-bit offset > into > > > 462 an advertised label space."; > > > 463 } > > > 464 } > > > > > > > > > 466 grouping sid-sub-tlv { > > > 467 description > > > 468 "SID/Label sub-TLV grouping."; > > > 469 reference > > > 470 "RFC 8665: OSPF Extensions for Segment Routing > > > 471 (Section 6)"; > > > > > > KT> Reference should be section 2.1 of RFC8665? > > > > > > 472 container sid-sub-tlv { > > > 473 description > > > 474 "Used to advertise the SID/Label associated with a > > > 475 prefix or adjacency."; > > > 476 leaf length { > > > 477 type uint16; > > > 478 description > > > 479 "Length of the SID value. YANG model specification > > > 480 is necessary since it dictates the semantics of the > > > 481 SID."; > > > 482 } > > > 483 uses sid-tlv-encoding; > > > 484 } > > > 485 } > > > > > > > > > 602 grouping sid-range-tlvs { > > > 603 description > > > 604 "SID Range TLV grouping."; > > > 605 reference > > > 606 "RFC 8665: OSPF Extensions for Segment Routing > > > 607 (Section 3.2)"; > > > 608 container sid-range-tlvs { > > > 609 description > > > 610 "List of SID range TLVs. Note that the order of > advertised > > > 611 SID ranges is implementation dependent."; > > > > > > <major> Please update "Note that the order of advertised SID ranges is > > > implementation dependent." - the ordering is pretty important and MUST > be as > > > per what has been received in the LSA on the wire. This is the SRGB. > > > > > > 612 list sid-range-tlv { > > > 613 description > > > 614 "SID range TLV."; > > > 615 leaf range-size { > > > 616 type rt-types:uint24; > > > 617 description > > > 618 "SID range."; > > > 619 } > > > 620 uses sid-sub-tlv; > > > 621 } > > > 622 } > > > 623 } > > > > > > 625 grouping local-block-tlvs { > > > 626 description > > > 627 "The SR local block TLV contains the > > > 628 range of labels reserved for local SIDs."; > > > 629 reference > > > 630 "RFC 8665: OSPF Extensions for Segment Routing > > > 631 (Section 3.3)"; > > > 632 container local-block-tlvs { > > > 633 description > > > 634 "List of SRLB TLVs."; > > > > > > <major> Here too the ordering has to be as on the wire for SRLB - if > similar > > > text is clarified above for SRGB. > > > > > > 635 list local-block-tlv { > > > 636 description > > > 637 "SRLB TLV."; > > > 638 leaf range-size { > > > 639 type rt-types:uint24; > > > 640 description > > > 641 "SID range. The return of a zero value would indicate > > > 642 an error."; > > > 643 } > > > 644 uses sid-sub-tlv; > > > 645 } > > > 646 } > > > 647 } > > > > > > > > > 1561 Author affiliation with The MITRE Corporation is provided for > > > 1562 identification purposes only, and is not intended to convey or > imply > > > 1563 MITRE's concurrence with, or support for, the positions, > opinions or > > > 1564 viewpoints expressed. MITRE has approved this document for > Public > > > 1565 Release, Distribution Unlimited, with Public Release Case Number > > > 1566 18-3281. > > > > > > <major> With the text above (which applies MITRE has some sort of an > approval > > > authority over this document), it seems more appropriate for this > author to drop > > > their MITRE Corporation affiliation. > > > > > > > > > > > > >
_______________________________________________ Lsr mailing list -- lsr@ietf.org To unsubscribe send an email to lsr-le...@ietf.org