idnits 2.17.1 draft-ietf-trill-yang-pm-02.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** There are 22 instances of too long lines in the document, the longest one being 3 characters in excess of 72. ** There are 407 instances of lines with control characters in the document. ** The abstract seems to contain references ([TRILL-PM], [TRILLOAMYANG], [GENYANGGOAM]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 268 has weird spacing: '... rw for c...' == Line 269 has weird spacing: '... ro for n...' == Line 294 has weird spacing: '...-cookie uin...' == Line 381 has weird spacing: '...-cookie uin...' == Line 481 has weird spacing: '...sion-id uin...' == (1 more instance...) == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (November 1, 2015) is 3092 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: '8021Q' is mentioned on line 120, but not defined -- Possible downref: Non-RFC (?) normative reference: ref. 'GENYANGGOAM' -- Possible downref: Non-RFC (?) normative reference: ref. 'TRILLOAMYANG' Summary: 3 errors (**), 0 flaws (~~), 9 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Internet Draft Deepak Kumar 3 T. Senevirathne 4 CISCO 5 T. Singh 6 JUNIPER 7 Qin Wu 8 Weiguo Hao 9 Huawei 10 Category: Standard Track 11 Expires May 2016 November 1, 2015 13 YANG Data Model for TRILL Operations, Administration, and 14 Maintenance (OAM) Performance Management 15 draft-ietf-trill-yang-pm-02.txt 17 Status of this Memo 19 This Internet-Draft is submitted in full conformance with the 20 provisions of BCP 78 and BCP 79. 22 Internet-Drafts are working documents of the Internet Engineering 23 Task Force (IETF), its areas, and its working groups. Note that 24 other groups may also distribute working documents as Internet- 25 Drafts. 27 Internet-Drafts are draft documents valid for a maximum of six months 28 and may be updated, replaced, or obsoleted by other documents at any 29 time. It is inappropriate to use Internet-Drafts as reference 30 material or to cite them other than as "work in progress." 32 The list of current Internet-Drafts can be accessed at 33 http://www.ietf.org/ietf/1id-abstracts.txt. 35 The list of Internet-Draft Shadow Directories can be accessed at 36 http://www.ietf.org/shadow.html. 38 This Internet-Draft will expire on May 04, 2016. 40 Copyright Notice 42 Copyright (c) 2015 IETF Trust and the persons identified as the 43 document authors. All rights reserved. 45 This document is subject to BCP 78 and the IETF Trust's Legal 46 Provisions Relating to IETF Documents 47 (http://trustee.ietf.org/license-info) in effect on the date of 48 publication of this document. Please review these documents 49 carefully, as they describe your rights and restrictions with respect 50 to this document. Code Components extracted from this document must 51 include Simplified BSD License text as described in Section 4.e of 52 the Trust Legal Provisions and are provided without warranty as 53 described in the Simplified BSD License. 55 Abstract 57 This document presents YANG Data model for TRILL OAM PM[TRILL-PM]. It 58 extends the YANG model defined in [GENYANGGOAM] and [TRILLOAMYANG] 59 for TRILL OAM Performance management technology specifics. 61 Table of Contents 63 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 64 2. Conventions used in this document . . . . . . . . . . . . . . . 4 65 2.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 4 66 3. Architecture of OAM YANG Model and Relationship to TRILL OAM 67 PM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 68 4. YANG Extension . . . . . . . . . . . . . . . . . . . . . . . . 5 69 4.1 MEP Address . . . . . . . . . . . . . . . . . . . . . . . . 5 70 4.1 MEP Configuration Extension . . . . . . . . . . . . . . . . 5 71 4.2 Flow Entropy . . . . . . . . . . . . . . . . . . . . . . . . 6 72 4.3 Context-id . . . . . . . . . . . . . . . . . . . . . . . . . 6 73 4.4 Grouping Statements . . . . . . . . . . . . . . . . . . . . 6 74 4.5 RPC definition . . . . . . . . . . . . . . . . . . . . . . . 6 75 4.5.1 create-loss-measurement . . . . . . . . . . . . . . . . 6 76 4.5.2 abort-loss-measurement . . . . . . . . . . . . . . . . . 6 77 4.5.3 create-delay-measurement . . . . . . . . . . . . . . . . 7 78 4.4.4 abort-delay-measurement . . . . . . . . . . . . . . . . 7 79 5. TRILL PM data hierarchy . . . . . . . . . . . . . . . . . . . . 7 80 6. TRILL PM YANG module . . . . . . . . . . . . . . . . . . . . . 13 81 7. Security Considerations . . . . . . . . . . . . . . . . . . . 39 82 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 39 83 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 40 84 9.1. Normative References . . . . . . . . . . . . . . . . . . . 40 85 9.2. Informative References . . . . . . . . . . . . . . . . . . 40 86 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 40 88 1. Introduction 90 Fault Management for TRILL is defined in [TRILL-FM]. TRILL Fault 91 Management utilizes the [8021Q] CFM model and extends CFM with 92 technology specific details. Those technology specific extensions are 93 flow-entropy for multipath support, MEP addressing on TRILL 94 identifiers, and so on. The extensions are explained in detail in 95 [TRILL-FM]. 97 Performance Management for TRILL is defined in [TRILL-PM]. TRILL 98 Performance Management utilizes the [Y.1731-2013/G.8013] and extends 99 it with Loss Measurement and Delay measurement. 101 Generic OAM Yang model [GENYANGGOAM] presents Generic Yang data model 102 for all OAM technologies. 104 In this document we extend the YANG model defined in [GENYANGGOAM] 105 and [TRILLOAMYANG] for TRILL OAM Performance management. Details are 106 provided in section 4 below. 108 2. Conventions used in this document 110 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 111 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 112 document are to be interpreted as described in RFC-2119 [RFC2119]. 114 2.1. Terminology 116 ECMP - Equal Cost Multipath 118 MP - Maintenance Point [8021.Q] 120 MEP - Maintenance End Point [RFC7174] [8021Q] [RFC6371] 122 MIP - Maintenance Intermediate Point [RFC7174] [8021.Q] [RFC6371] 124 MA - Maintenance Association [8021.Q] [RFC7174] 126 MD - Maintenance Domain [8021.Q] 128 OAM - Operations, Administration, and Maintenance [RFC6291] 130 TRILL - Transparent Interconnection of Lots of Links [RFC6325] 132 DMM - Delay Measurement Message 134 1SL - One-way Synthetic Loss Measurement message 136 1DM - One-way Delay Measurement message 138 DMR - Delay Measurement Reply 140 OAM - Operations, Administration, and Maintenance 142 PM - Performance Monitoring 144 SLM - Synthetic Loss Measurement Message 146 SLR - Synthetic Loss Measurement Reply 148 TLV - Type, Length, and Value 150 3. Architecture of OAM YANG Model and Relationship to TRILL OAM PM 152 +-+-+-+-+-+ 153 | Gen | 154 |OAM YANG | 155 +-+-+-+-+-+ 156 | 157 O 158 | 159 +--------+-----------------------------------------+ 160 | | | | | 161 +-+-+-+-+-+ | +-+-+-+-+-+ +-+-+-+-+-+ +-+-+-+-+-+ 162 | TRILL | | | NVO3 | | MPLS | . . .| foo | 163 |OAM YANG | | |OAM YANG | |OAM YANG | |OAM YANG | 164 +-+-+-+-+-+ | +-+-+-+-+-+ +-+-+-+-+-+ +-+-+-+-+-+ 165 | | | | | 166 | +-+-+-+-+ | | | 167 | |TRILL | | | | 168 +---|OAM PM | | | | 169 |YANG | | | | 170 +-+-+-+-+ | | | 171 | | | | 172 +----------------------------------------------------+ 173 | Uniform API | 174 +----------------------------------------------------+ 176 Figure 1 Relationship of TRILL OAM PM Yang model to 177 Generic OAM YANG model 179 4. YANG Extension 181 MEP Addressing is defined in Generic OAM YANG model[GENYANGGOAM]. In 182 this draft we augment MEP Configuration with Performance Management 183 configuration and statistics for Delay Measurement and Performance 184 Measurement. 186 For technology specific we are re-using identify defined in 187 [TRILLOAMYANG] model. 189 identity trill { base goam:technology-types; description 190 "trill type"; } 192 4.1 MEP Address 194 As defined in TRILL OAM Yang[TRILLOAMYANG] model. TRILL OAM Yang is 195 referenced. 197 4.1 MEP Configuration Extension 199 module: trill-oam-pm 200 augment /goam:domains/goam:domain/goam:MAs/goam:MA/goam:MEP: 202 4.2 Flow Entropy 204 As defined in TRILL OAM Yang[TRILLOAMYANG] model. 206 4.3 Context-id 208 As defined in TRILL OAM Yang[TRILLOAMYANG] model. 210 4.4 Grouping Statements loss-measurement-configuration-group, groups 211 configuration objects for Frame Loss Measurement function defined in 212 [TRILL-PM]. 214 loss-stats-group, groups statistics object for [TRILL-PM] Loss 215 measurement section. 217 measurement-timing-group, groups object used for proactive and on- 218 demand scheduling of PM measurement sessions. 220 delay-measurement-configuration-group, groups configuration objects 221 for Delay measurement function defined in [TRILL-PM] 223 delay-measurement-stats-group, groups statistics objects for a TRILL 224 Delay measurement sessions. 226 4.5 RPC definition 228 The rpc model facilitates issuing commands to a NETCONF server (in 229 this case to the device that needs to execute the OAM command) and 230 obtaining a response. 232 Grouping Statements loss-measurement-configuration-group, 233 measurement-timing-group, and delay-measurement-configuration-group 234 defines input extension for Delay and Loss measurement RPCs. 236 4.5.1 create-loss-measurement 238 RPC allows scheduling of one-way or two-way on-demand or proactive 239 performance monitoring loss measurement session. 241 4.5.2 abort-loss-measurement 243 RPC allow aborting of currently running or scheduled loss measurement 244 session. 246 4.5.3 create-delay-measurement 248 RPC allow scheduling of one-way or two-way on-demand or proactive 249 performance monitoring delay measurement session. 251 4.4.4 abort-delay-measurement RPC allow aborting of currently running or 252 scheduled delay measurement session. 254 5. TRILL PM data hierarchy The complete data hierarchy related to the 255 OAM YANG is presented below. The following notations are used within 256 the tree and carry the meaning as noted below. Each node is printed 257 as: 259 261 is one of: 262 + for current 263 x for deprecated 264 o for obsolete 266 is one of: 268 rw for configuration data 269 ro for non-configuration data 270 -x for rpcs 271 -n for notifications 273 is the name of the node 275 If the node is augmented into the tree from another module, its 276 name is printed as :. 278 is one of: 280 ? for an optional leaf or choice 281 ! for a presence container 282 * for a leaf-list or list 283 [] for a list's keys 285 is the name of the type for leafs and leaf-lists 287 module: trill-oam-pm 288 augment /goam:domains/goam:domain/goam:MAs/goam:MA/goam:MEP: 289 +--rw delay-responder? boolean 291 augment /goam:domains/goam:domain/goam:MAs/goam:MA/goam:MEP: 292 +--rw delay-measurements 293 +--ro delay-measurements* [session-cookie] 294 | +--ro session-cookie uint32 295 | +--ro id? string 296 | +--ro status? boolean 297 +--rw measurement-type? enumeration 298 +--rw measurement-enable? bits 299 +--rw message-period? uint32 300 +--rw frame-size? uint32 301 +--rw data-pattern? enumeration 302 +--rw measurement-interval? uint32 303 +--rw number-intervals-stored? uint32 304 +--rw ifdv-selection-offset? uint32 305 +--rw session-type? enumeration 306 +--rw start-time 307 | +--rw (start-time)? 308 | +--:(immediate) 309 | | +--rw immediate! 310 | +--:(absolute) 311 | +--rw absolute? yang:date-and-time 312 +--rw stop-time 313 | +--rw (stop-time)? 314 | +--:(none) 315 | | +--rw none! 316 | +--:(absolute) 317 | +--rw absolute? yang:date-and-time 318 +--rw destination-mep 319 | +--rw (mp-address)? 320 | | +--:(mac-address) 321 | | | +--rw mac-address? yang:mac-address 322 | | +--:(ipv4-address) 323 | | | +--rw ipv4-address? inet:ipv4-address 324 | | +--:(ipv6-address) 325 | | +--rw ipv6-address? inet:ipv6-address 326 | +--rw mep-id? toam:tril-rb-nickname 327 +--rw frame-delay-two-way? yang:gauge32 328 +--rw frame-delay-forward? yang:gauge32 329 +--rw frame-delay-backward? yang:gauge32 330 +--rw inter-frame-delay-variation-two-way? yang:gauge32 331 +--rw inter-frame-delay-variation-forward? yang:gauge32 332 +--rw inter-frame-delay-variation-backward? yang:gauge32 333 +--rw current-stats 334 | +--rw start-time? yang:date-and-time 335 | +--rw elapsed-time? uint32 336 | +--rw suspect-status? boolean 337 | +--rw frame-delay-two-way-min? uint32 338 | +--rw frame-delay-two-way-max? uint32 339 | +--rw frame-delay-two-way-average? uint32 340 | +--rw frame-delay-forward-min? uint32 341 | +--rw frame-delay-forward-average? uint32 342 | +--rw frame-delay-forward-max? uint32 343 | +--rw frame-delay-backward-min? uint32 344 | +--rw frame-delay-backward-max? uint32 345 | +--rw frame-delay-backward-average? uint32 346 | +--rw frame-delay-variation-backward-min? uint32 347 | +--rw frame-delay-variation-backward-max? uint32 348 | +--rw frame-delay-variation-backward-average? uint32 349 | +--rw frame-delay-variation-forward-min? uint32 350 | +--rw frame-delay-variation-forward-average? uint32 351 | +--rw frame-delay-variation-forward-max? uint32 352 | +--rw frame-delay-variation-two-way-min? uint32 353 | +--rw frame-delay-variation-two-way-average? uint32 354 | +--rw frame-delay-variation-two-way-max? uint32 355 +--rw history-stats* [id] 356 +--rw id uint32 357 +--rw start-time? yang:date-and-time 358 +--rw elapsed-time? uint32 359 +--rw suspect-status? boolean 360 +--rw frame-delay-two-way-min? uint32 361 +--rw frame-delay-two-way-max? uint32 362 +--rw frame-delay-two-way-average? uint32 363 +--rw frame-delay-forward-min? uint32 364 +--rw frame-delay-forward-average? uint32 365 +--rw frame-delay-forward-max? uint32 366 +--rw frame-delay-backward-min? uint32 367 +--rw frame-delay-backward-max? uint32 368 +--rw frame-delay-backward-average? uint32 369 +--rw frame-delay-variation-backward-min? uint32 370 +--rw frame-delay-variation-backward-max? uint32 371 +--rw frame-delay-variation-backward-average? uint32 372 +--rw frame-delay-variation-forward-min? uint32 373 +--rw frame-delay-variation-forward-average? uint32 374 +--rw frame-delay-variation-forward-max? uint32 375 +--rw frame-delay-variation-two-way-min? uint32 376 +--rw frame-delay-variation-two-way-average? uint32 377 +--rw frame-delay-variation-two-way-max? uint32 378 augment /goam:domains/goam:domain/goam:MAs/goam:MA/goam:MEP: 379 +--rw loss-measurements 380 +--ro loss-measurements* [session-cookie] 381 | +--ro session-cookie uint32 382 | +--ro id? string 383 | +--ro status? boolean 384 +--rw measurement-type? enumeration 385 +--rw enabled-counters? bits 386 +--rw message-period? uint32 387 +--rw frame-size? uint32 388 +--rw data-pattern? enumeration 389 +--rw measurement-interval? uint32 390 +--rw number-intervals-stored? uint32 391 +--rw session-type? enumeration 392 +--rw start-time 393 | +--rw (start-time)? 394 | +--:(immediate) 395 | | +--rw immediate! 396 | +--:(absolute) 397 | +--rw absolute? yang:date-and-time 398 +--rw stop-time 399 | +--rw (stop-time)? 400 | +--:(none) 401 | | +--rw none! 402 | +--:(absolute) 403 | +--rw absolute? yang:date-and-time 404 +--rw destination-mep 405 | +--rw (mp-address)? 406 | | +--:(mac-address) 407 | | | +--rw mac-address? yang:mac-address 408 | | +--:(ipv4-address) 409 | | | +--rw ipv4-address? inet:ipv4-address 410 | | +--:(ipv6-address) 411 | | +--rw ipv6-address? inet:ipv6-address 412 | +--rw mep-id? toam:tril-rb-nickname 413 +--rw measurement-forward-flr? yang:gauge32 414 +--rw measurement-backward-flr? yang:gauge32 415 +--rw current-stats 416 | +--rw start-time? yang:date-and-time 417 | +--rw elapsed-time? uint32 418 | +--rw suspect-status? boolean 419 | +--rw backward-transmitted-frames? yang:gauge32 420 | +--rw backward-received-frames? yang:gauge32 421 | +--rw backward-min-frame-loss-ration? uint32 422 | +--rw backward-max-frame-loss-ration? uint32 423 | +--rw backward-average-frame-loss-ration? uint32 424 | +--rw forward-transmitted-frames? yang:gauge32 425 | +--rw forward-received-frames? yang:gauge32 426 | +--rw forward-min-frame-loss-ration? uint32 427 | +--rw forward-max-frame-loss-ration? uint32 428 | +--rw forward-average-frame-loss-ration? uint32 429 +--rw history-stats* [id] 430 +--rw id uint32 431 +--rw start-time? yang:date-and-time 432 +--rw elapsed-time? uint32 433 +--rw suspect-status? boolean 434 +--rw backward-transmitted-frames? yang:gauge32 435 +--rw backward-received-frames? yang:gauge32 436 +--rw backward-min-frame-loss-ration? uint32 437 +--rw backward-max-frame-loss-ration? uint32 438 +--rw backward-average-frame-loss-ration? uint32 439 +--rw forward-transmitted-frames? yang:gauge32 440 +--rw forward-received-frames? yang:gauge32 441 +--rw forward-min-frame-loss-ration? uint32 442 +--rw forward-max-frame-loss-ration? uint32 443 +--rw forward-average-frame-loss-ration? uint32 444 rpcs: 445 +---x create-loss-measurement 446 | +--ro input 447 | | +--ro measurement-type? enumeration 448 | | +--ro enabled-counters? bits 449 | | +--ro message-period? uint32 450 | | +--ro frame-size? uint32 451 | | +--ro data-pattern? enumeration 452 | | +--ro measurement-interval? uint32 453 | | +--ro number-intervals-stored? uint32 454 | | +--ro session-type? enumeration 455 | | +--ro start-time 456 | | | +--ro (start-time)? 457 | | | +--:(immediate) 458 | | | | +--ro immediate! 459 | | | +--:(absolute) 460 | | | +--ro absolute? yang:date-and-time 461 | | +--ro stop-time 462 | | | +--ro (stop-time)? 463 | | | +--:(none) 464 | | | | +--ro none! 465 | | | +--:(absolute) 466 | | | +--ro absolute? yang:date-and-time 467 | | +--ro destination-mep 468 | | | +--ro (mp-address)? 469 | | | | +--:(mac-address) 470 | | | | | +--ro mac-address? yang:mac-address 471 | | | | +--:(ipv4-address) 472 | | | | | +--ro ipv4-address? inet:ipv4-address 473 | | | | +--:(ipv6-address) 474 | | | | +--ro ipv6-address? inet:ipv6-address 475 | | | +--ro mep-id? toam:tril-rb-nickname 476 | | +--ro flow-entropy? toam:flow-entropy-trill 477 | | +--ro context-type? boolean 478 | | +--ro context-id-vlan? toam:vlan 479 | | +--ro context-id-fgl? toam:fgl 480 | +--ro output 481 | +--ro session-id uint32 482 +---x abort-loss-measurement 483 | +--ro input 484 | +--ro technology identityref 485 | +--ro MD-name-string MD-name-string 486 | +--ro MA-name-string? MA-name-string 487 | +--ro destination-mep 488 | | +--ro (mp-address)? 489 | | | +--:(mac-address) 490 | | | | +--ro mac-address? yang:mac-address 491 | | | +--:(ipv4-address) 492 | | | | +--ro ipv4-address? inet:ipv4-address 493 | | | +--:(ipv6-address) 494 | | | +--ro ipv6-address? inet:ipv6-address 495 | | +--ro mep-id? toam:tril-rb-nickname 496 | +--ro session-id uint32 497 +---x create-delay-measurement 498 | +--ro input 499 | | +--ro measurement-type? enumeration 500 | | +--ro measurement-enable? bits 501 | | +--ro message-period? uint32 502 | | +--ro frame-size? uint32 503 | | +--ro data-pattern? enumeration 504 | | +--ro measurement-interval? uint32 505 | | +--ro number-intervals-stored? uint32 506 | | +--ro ifdv-selection-offset? uint32 507 | | +--ro session-type? enumeration 508 | | +--ro start-time 509 | | | +--ro (start-time)? 510 | | | +--:(immediate) 511 | | | | +--ro immediate! 512 | | | +--:(absolute) 513 | | | +--ro absolute? yang:date-and-time 514 | | +--ro stop-time 515 | | | +--ro (stop-time)? 516 | | | +--:(none) 517 | | | | +--ro none! 518 | | | +--:(absolute) 519 | | | +--ro absolute? yang:date-and-time 520 | | +--ro destination-mep 521 | | | +--ro (mp-address)? 522 | | | | +--:(mac-address) 523 | | | | | +--ro mac-address? yang:mac-address 524 | | | | +--:(ipv4-address) 525 | | | | | +--ro ipv4-address? inet:ipv4-address 526 | | | | +--:(ipv6-address) 527 | | | | +--ro ipv6-address? inet:ipv6-address 528 | | | +--ro mep-id? toam:tril-rb-nickname 529 | | +--ro flow-entropy? toam:flow-entropy-trill 530 | | +--ro context-type? boolean 531 | | +--ro context-id-vlan? toam:vlan 532 | | +--ro context-id-fgl? toam:fgl 533 | +--ro output 534 | +--ro session-id uint32 535 +---x abort-delay-measurement 536 +--ro input 537 +--ro technology identityref 538 +--ro MD-name-string MD-name-string 539 +--ro MA-name-string? MA-name-string 540 +--ro destination-mep 541 | +--ro (mp-address)? 542 | | +--:(mac-address) 543 | | | +--ro mac-address? yang:mac-address 544 | | +--:(ipv4-address) 545 | | | +--ro ipv4-address? inet:ipv4-address 546 | | +--:(ipv6-address) 547 | | +--ro ipv6-address? inet:ipv6-address 548 | +--ro mep-id? toam:tril-rb-nickname 549 +--ro context-type? boolean 550 +--ro context-id-vlan? toam:vlan 551 +--ro context-id-fgl? toam:fgl 552 +--ro session-id uint32 554 6. TRILL PM YANG module 556 file "ietf-trill-oam-pm.yang" 557 module ietf-trill-oam-pm { 558 namespace "urn:ietf:params:xml:ns:yang:ietf-trill-oam-pm"; 559 prefix trilloampm; 561 import ietf-gen-oam { 562 prefix goam; 563 } 564 import ietf-trill-oam { 565 prefix toam; 566 } 567 import ietf-yang-types { 568 prefix yang; 569 } 570 organization "IETF TRILL Working Group"; 571 contact 572 "Deepak Kumar dekumar@cisco.com"; 573 description 574 "This YANG module defines the configuration for TRILL, 575 OAM Performance Management statistics and rpc"; 577 revision 2015-01-11 { 578 description 579 "Initial revision."; 580 reference "RFC 7456"; 581 } 583 identity trill { 584 base goam:technology-types; 585 description 586 "trill type"; 587 } 589 grouping context-id-group { 590 leaf context-type { 591 type boolean; 592 description 593 "context Identifier"; 594 } 595 description 596 "If context-type is set then it's context-id-vlan, else 597 it's context-id-fgl."; 598 leaf context-id-vlan { 599 type toam:vlan; 600 description 601 "context Identifier vlan."; 602 } 603 leaf context-id-fgl { 604 type toam:fgl; 605 description 606 "context Identifier Fine Grain label."; 607 } 608 } 610 grouping loss-measurement-configuration-group { 611 description 612 "This grouping includes configuration objects for Frame Loss 613 Measurement function defined in TRILL-PM."; 614 reference 615 TRILL-PM; 617 leaf measurement-type { 618 type enumeration { 619 enum slm { 620 description 621 "TRILL PM SLM Frames generated and 622 received SLR responses 624 tracked."; 625 } 626 enum 1sl { 627 description 628 "TRILL PM 1SL Frames generated."; 629 } 630 } 631 default slm; 633 description 634 "This object specifies what type of Loss Measurement will be 635 performed."; 636 reference 637 TRILL-PM; 638 } 640 leaf enabled-counters { 641 type bits { 642 bit forward-min-flr { 643 description 644 "Forward minimum Frame Loss Ratio."; 645 } 646 bit forward-max-flr { 647 description 648 "Forward maximum Frame Loss Ratio."; 649 } 650 bit forward-average-flr { 651 description 652 "Forward average Frame Loss Ratio."; 653 } 654 bit backward-min-flr { 655 description 656 "Backward Minimum Frame Loss Ratio."; 657 } 658 bit backward-max-flr { 659 description 660 "Backward Maximum Frame Loss Ratio."; 661 } 662 bit backward-average-flr { 663 description 664 "Backward Average Frame Loss Ratio."; 665 } 666 bit TRILL-PM-pdus-sent { 667 description 668 "TRILL PM Packets sent."; 669 } 670 bit TRILL-PM-pdus-received { 671 description 672 "TRILL PM Packets received."; 673 } 674 } 675 default " "; 677 description 678 "A vector of bits that indicates the type of TRILL-PM loss 679 measurement coutners found in the 680 current-stats and history 681 that are enabled. 683 A present bit enables the specific counter. A not present 684 bit disables the specific counter. 686 Not all counters are supported for all 687 TRILL-PM Loss Measurement types."; 688 } 690 leaf message-period { 691 type uint32; 692 default 1000; 694 description 695 "This objects specifies the interval between Loss 696 Measurement OAM message transmission. Default value is 697 1 sec."; 698 } 700 leaf frame-size { 701 type uint32 { 702 range "64 .. 9600"; 703 } 704 default 64; 705 description 706 "This object specifies the Loss 707 Measurement OAM frame size. 708 The adjustment of the frame size of the 709 standard frame size is 710 accomplished by addition of a Data TLV 711 as mention in TRILL-PM. 712 "; 713 } 715 leaf data-pattern { 716 type enumeration { 717 enum zeroes { 718 description "Indicates the Data TLV contains all 0s."; 719 } 720 enum ones { 721 description "Indicates the Data TLV contains all 1s."; 722 } 723 } 724 default zeroes; 726 description 727 "This object specifies the LM data pattern included in OAM 728 frame."; 729 } 731 leaf measurement-interval { 732 type uint32; 733 units minutes; 734 default 15; 736 description 737 "This object specifies a Measurement Interval in minutes."; 738 } 740 leaf number-intervals-stored { 741 type uint32 { 742 range "2..10"; 743 } 744 default 10; 745 description 746 "This object specifies the number of 747 completed measurement 748 intervals to store in the history statistics table."; 749 } 751 leaf session-type { 752 type enumeration { 753 enum proactive { 754 description 755 "The current session is 'proactive'."; 756 } 757 enum on-demand { 758 description 759 "The current session is on-demand."; 760 } 761 } 762 description 763 "This object indicates whether the current session is defined 764 to be proactive or on-demand."; 765 } 766 } 767 grouping loss-stats-group { 768 description 769 "This grouping includes statistics object for TRILL PM Loss 770 Measurement session."; 771 leaf suspect-status { 772 type boolean; 773 description 774 "if bit is set it means measurement 775 interval statistics is 776 not valid."; 777 } 779 leaf backward-transmitted-frames { 780 type yang:gauge32; 782 description 783 "This object contains the number of 784 frames transmitted in the 785 backward direction by this session. 786 This is count of TRILL-PM SLM and 1SL frames."; 787 } 788 leaf backward-received-frames { 789 type yang:gauge32; 791 description 792 "This object contains the number of 793 frames received in the 794 backward direction by this session. 795 This is count of TRILL-PM SLM and 1SL frames."; 796 } 797 leaf backward-min-frame-loss-ration { 798 type uint32 { 799 range "0..100000"; 800 } 801 units milli-percent; 803 description 804 "This object contains the minimum 805 one-way frame loss ratio 806 in the backward direction calculated by this 807 MEP for the session 808 in this Measurement Interval. 809 The FLR value is a ratio that 810 is expressed as a percent with a value 0 811 (ratio 0.00) through 812 100000 (ration 1.00)"; 813 } 814 leaf backward-max-frame-loss-ration { 815 type uint32 { 816 range "0..100000"; 817 } 818 units milli-percent; 820 description 821 "This object contains the maximum 822 one-way frame loss ratio 823 in the backward direction calculated by 824 this MEP for the session 825 in this Measurement Interval. 826 The FLR value is a ratio that 827 is expressed as a percent with a value 0 828 (ratio 0.00) through 829 100000 (ration 1.00)"; 830 } 831 leaf backward-average-frame-loss-ration { 832 type uint32 { 833 range "0..100000"; 834 } 835 units milli-percent; 837 description 838 "This object contains the average 839 one-way frame loss ratio 840 in the backward direction calculated 841 by this MEP for the session 842 in this Measurement Interval. 843 The FLR value is a ratio that 844 is expressed as a percent with a 845 value 0 (ratio 0.00) through 846 100000 (ration 1.00)"; 847 } 849 leaf forward-transmitted-frames { 850 type yang:gauge32; 852 description 853 "This object contains the number of 854 frames transmitted in the 855 forward direction by this session. 856 This is count of TRILL-PM SLM and 1SL frames."; 857 } 858 leaf forward-received-frames { 859 type yang:gauge32; 861 description 862 "This object contains the number 863 of frames received in the 864 forward direction by this session. 865 This is count of TRILL-PM SLM and 1SL frames."; 866 } 867 leaf forward-min-frame-loss-ration { 868 type uint32 { 869 range "0..100000"; 870 } 871 units milli-percent; 873 description 874 "This object contains the minimum one-way 875 frame loss ratio 876 in the forward direction calculated by this MEP 877 for the session 878 in this Measurement Interval. 879 The FLR value is a ratio that 880 is expressed as a percent with a value 881 0 (ratio 0.00) through 882 100000 (ration 1.00)"; 883 } 884 leaf forward-max-frame-loss-ration { 885 type uint32 { 886 range "0..100000"; 887 } 888 units milli-percent; 890 description 891 "This object contains the maximum one-way 892 frame loss ratio 893 in the forward direction calculated by this MEP 894 for the session 895 in this Measurement Interval. The FLR value is 896 a ratio that 897 is expressed as a percent with a value 898 0 (ratio 0.00) through 899 100000 (ration 1.00)"; 900 } 901 leaf forward-average-frame-loss-ration { 902 type uint32 { 903 range "0..100000"; 904 } 905 units milli-percent; 907 description 908 "This object contains the average one-way 909 frame loss ratio 910 in the forward direction calculated by this 911 MEP for the session 912 in this Measurement Interval. The FLR value 913 is a ratio that 914 is expressed as a percent with a value 915 0 (ratio 0.00) through 916 100000 (ration 1.00)"; 917 } 919 } 921 grouping measurement-timing-group { 922 description 923 "This grouping includes objects used for 924 proactive and on-demand 925 scheduling of PM measurement sessions."; 927 container start-time { 928 description 929 "This container defines the session start time."; 931 choice start-time { 932 description 933 "Measurement sessions tart time can be immediate, relative, or 934 absolute."; 936 container immediate { 937 presence "Start the measurement session immediately."; 938 description 939 "Immediate start time."; 940 } 941 leaf absolute { 942 type yang:date-and-time; 944 description 945 "This objects specifies the scheduled start time 946 to perform the on-demand monitoring operations."; 947 } 948 } 949 } 951 container stop-time { 952 description 953 "This container defines the session stop time."; 955 choice stop-time { 956 description 957 "Measurement session stop time can be none, or absolute."; 958 container none { 959 presence "Never end the measurement session."; 960 description 961 "None."; 962 } 964 leaf absolute { 965 type yang:date-and-time; 967 description 968 "This objects specifies the scheduled stop time 969 to perform the on-demand monitoring operations."; 970 } 971 } 972 } 973 } 975 grouping delay-measurement-configuration-group { 976 description 977 "This grouping includes configuration objects for Delay 978 Measurement function defined in TRILL-PM."; 979 reference 980 "TRILL-PM."; 982 leaf measurement-type { 983 type enumeration { 984 enum dmm { 985 description 986 "DMM PDU generated, DMR responses received."; 987 } 988 enum dm1-transmitted { 989 description 990 "1DM PDU generated."; 991 } 992 enum dm1-received { 993 description 994 "1DM PDU received and measurement generated."; 995 } 996 } 997 description 998 "Measurement type."; 999 } 1001 leaf measurement-enable { 1002 type bits { 1003 bit toam-sent { 1004 description 1005 "Trill oam sent."; 1007 } 1008 bit toam-received { 1009 description 1010 "Trill oam received."; 1011 } 1012 bit frame-delay-two-way-min { 1013 description 1014 "Frame Delay Two Way Minimum."; 1015 } 1016 bit frame-delay-two-way-max { 1017 description 1018 "Frame Delay Two way Maximum."; 1019 } 1020 bit frame-delay-two-way-average { 1021 description 1022 "Frame Delay Two way Average."; 1023 } 1024 bit frame-delay-forward-min { 1025 description 1026 "Frame Delay Forward Minimum."; 1027 } 1028 bit frame-delay-forward-max { 1029 description 1030 "Frame Delay forward Maximum."; 1031 } 1032 bit frame-delay-forward-average { 1033 description 1034 "Frame Delay forward Average."; 1035 } 1036 bit frame-delay-backward-min { 1037 description 1038 "Frame Delay backward minimum."; 1039 } 1040 bit frame-delay-backward-max { 1041 description 1042 "Frame Delay backward maximum."; 1043 } 1044 bit frame-delay-backward-average { 1045 description 1046 "Frame Delay backward average."; 1047 } 1048 bit inter-frame-delay-variation-forward-min { 1049 description 1050 "Inter Frame Delay variation forward minimum."; 1051 } 1052 bit inter-frame-delay-variation-forward-max { 1053 description 1054 "Inter Frame delay variation forward maximum."; 1056 } 1057 bit inter-frame-delay-variation-forward-average { 1058 description 1059 "Inter Frame delay variation forward average."; 1060 } 1061 bit inter-frame-delay-variation-backward-min { 1062 description 1063 "Inter frame delay variation backward minimum."; 1064 } 1065 bit inter-frame-delay-variation-backward-max { 1066 description 1067 "Inter Frame Delay variation backward maximum."; 1068 } 1069 bit inter-frame-delay-variation-backward-average { 1070 description 1071 "Inter Frame delay variation backward average."; 1072 } 1073 bit inter-frame-delay-variation-two-way-min { 1074 description 1075 "Inter Frame delay variation two way minimum."; 1076 } 1077 bit inter-frame-delay-variation-two-way-max { 1078 description 1079 "Inter Frame delay variation two way maximum."; 1080 } 1081 bit inter-frame-delay-variation-two-way-average { 1082 description 1083 "Inter Frame delay variation Two way Average."; 1084 } 1085 } 1086 default " "; 1088 description 1089 "A vector of bits that indicates the type of DM counters 1090 that are enabled. A set bit enables the specific DM 1091 counter. A clear bit disables the specific DM counter. 1092 Not all DM counters are supported for all DM types."; 1093 } 1094 leaf message-period { 1095 type uint32; 1096 default 100; 1098 description 1099 "This objects specifies the interval between Delay 1100 Measurement OAM message transmission. Default value is 1101 100ms."; 1102 } 1103 leaf frame-size { 1104 type uint32 { 1105 range "64 .. 9600"; 1106 } 1107 default 64; 1109 description 1110 "This object specifies the Delay Measurement OAM frame size. 1111 The adjustment of the frame size of the 1112 standard frame size is 1113 accomplished by addition of a Data TLV as 1114 mention in TRILL-PM. 1115 "; 1116 } 1118 leaf data-pattern { 1119 type enumeration { 1120 enum zeroes { 1121 description "Indicates the Data TLV contains all 0s."; 1122 } 1123 enum ones { 1124 description "Indicates the Data TLV contains all 1s."; 1125 } 1126 } 1127 default zeroes; 1129 description 1130 "This object specifies the DM data pattern included in OAM 1131 frame."; 1132 } 1134 leaf measurement-interval { 1135 type uint32; 1136 units minutes; 1137 default 15; 1139 description 1140 "This object specifies a Measurement Interval in minutes."; 1141 } 1143 leaf number-intervals-stored { 1144 type uint32 { 1145 range "2..10"; 1146 } 1147 default 10; 1148 description 1149 "This object specifies the number of completed measurement 1150 intervals to store in the history statistics table."; 1152 } 1154 leaf ifdv-selection-offset { 1155 type uint32 { 1156 range "1..10"; 1157 } 1158 default 1; 1159 description 1160 "This object specifies the selection offset for Inter 1161 Frame Delay variation measurements. If this value is set 1162 to n, then the IFDV is calculated by taking the difference in 1163 frame delay between frame F and frame (F+n)."; 1164 } 1166 leaf session-type { 1167 type enumeration { 1168 enum proactive { 1169 description 1170 "The current session is 'proactive'."; 1171 } 1172 enum on-demand { 1173 description 1174 "The current session is on-demand."; 1175 } 1176 } 1177 description 1178 "This object indicates whether the current session is defined 1179 to be proactive or on-demand."; 1180 } 1182 } 1184 grouping delay-measurement-stats-group { 1185 description 1186 "This grouping includes statistics objects for a TRILL PM 1187 Delay Measurement session."; 1189 leaf suspect-status { 1190 type boolean; 1191 description 1192 "if bit is set it means measurement interval statistics is 1193 not valid."; 1194 } 1196 leaf frame-delay-two-way-min { 1197 type uint32; 1198 units microseconds; 1199 description 1200 "Frame delay two way minimum."; 1201 } 1202 leaf frame-delay-two-way-max { 1203 type uint32; 1204 units microseconds; 1205 description 1206 "Frame delay two way maximum."; 1207 } 1209 leaf frame-delay-two-way-average { 1210 type uint32; 1211 units microseconds; 1212 description 1213 "Frame delay two way average."; 1214 } 1216 leaf frame-delay-forward-min { 1217 type uint32; 1218 units microseconds; 1219 description 1220 "Frame delay forward direction minimum."; 1221 } 1222 leaf frame-delay-forward-average { 1223 type uint32; 1224 units microseconds; 1225 description 1226 "Frame delay forward direction average."; 1227 } 1228 leaf frame-delay-forward-max { 1229 type uint32; 1230 units microseconds; 1231 description 1232 "Frame delay forward direction maximum."; 1233 } 1234 leaf frame-delay-backward-min { 1235 type uint32; 1236 units microseconds; 1237 description 1238 "Frame delay backward direction minimum."; 1239 } 1240 leaf frame-delay-backward-max { 1241 type uint32; 1242 units microseconds; 1243 description 1244 "Frame delay backward direction maximum."; 1245 } 1246 leaf frame-delay-backward-average { 1247 type uint32; 1248 units microseconds; 1249 description 1250 "Frame delay backward direction average.."; 1251 } 1252 leaf frame-delay-variation-backward-min { 1253 type uint32; 1254 units microseconds; 1255 description 1256 "Frame delay variation backward minimum."; 1257 } 1258 leaf frame-delay-variation-backward-max { 1259 type uint32; 1260 units microseconds; 1261 description 1262 "Frame delay variation backward maximum."; 1263 } 1264 leaf frame-delay-variation-backward-average { 1265 type uint32; 1266 units microseconds; 1267 description 1268 "Frame delay variation backward average."; 1269 } 1270 leaf frame-delay-variation-forward-min { 1271 type uint32; 1272 units microseconds; 1273 description 1274 "Frame delay variation forward minimum."; 1275 } 1276 leaf frame-delay-variation-forward-average { 1277 type uint32; 1278 units microseconds; 1279 description 1280 "Frame delay variation forward average."; 1281 } 1282 leaf frame-delay-variation-forward-max { 1283 type uint32; 1284 units microseconds; 1285 description 1286 "Frame delay variation forward maximum."; 1287 } 1288 leaf frame-delay-variation-two-way-min { 1289 type uint32; 1290 units microseconds; 1291 description 1292 "Frame delay variation two way minimum."; 1293 } 1294 leaf frame-delay-variation-two-way-average { 1295 type uint32; 1296 units microseconds; 1297 description 1298 "Frame delay variation two way average."; 1299 } 1300 leaf frame-delay-variation-two-way-max { 1301 type uint32; 1302 units microseconds; 1303 description 1304 "Frame delay variation two way maximum."; 1305 } 1306 } 1308 augment "/goam:domains/goam:domain/goam:MAs/goam:MA/goam:MEP" { 1309 description 1310 "This set of data definitions extends the MEP as described 1311 in goam"; 1313 leaf delay-responder { 1314 type boolean; 1315 default true; 1317 description 1318 "This object specifies whether Delay Measurement (DMM) 1319 single ended 1320 Responder is enabled. 1321 The value 'false' indicates the Delay measurement 1322 responder is disabled 1323 and received DMM will be discarded."; 1325 } 1326 } 1327 augment "/goam:domains/goam:domain/goam:MAs/goam:MA/goam:MEP" { 1328 description 1329 "This set of data definitions extends the MEP as described 1330 in goam, specially with regards to Delay Measurements."; 1332 container delay-measurements { 1333 description 1334 "This container contains a collection of data definitions 1335 related to Delay Measurements as defined in TRILL-PM."; 1337 list delay-measurements { 1338 key "session-cookie"; 1339 config false; 1340 description 1341 "List of Delay Measurement PM Sessions where each 1342 instance is uniquely identified by an session-cookie 1343 attribute."; 1344 leaf session-cookie { 1345 type uint32; 1346 config false; 1347 description 1348 "cookie to identify Delay Measurement session."; 1349 } 1351 leaf id { 1352 type string; 1354 description 1355 "This object uniquely identifies a scheduled measurement 1356 time."; 1357 } 1359 leaf status { 1360 type boolean; 1361 config false; 1362 description 1363 "This object indicates DM session status, true means 1364 Active, false means not-active."; 1365 } 1366 } 1368 uses delay-measurement-configuration-group; 1369 uses measurement-timing-group; 1370 container destination-mep { 1371 uses goam:mp-address; 1372 leaf mep-id { 1373 type toam:tril-rb-nickname; 1374 description 1375 "MEP Identifier."; 1376 } 1377 description 1378 "Delay Measurement configuration group"; 1379 } 1381 leaf frame-delay-two-way { 1382 type yang:gauge32; 1383 units microseconds; 1384 description 1385 "This object contains the frame delay 1386 calculated by this MEP from the last 1387 received TRILL-PM frame. 1388 This object is undefined if 1389 measurement-type is dm1."; 1390 } 1391 leaf frame-delay-forward { 1392 type yang:gauge32; 1393 units microseconds; 1394 description 1395 "This object contains the frame delay in the 1396 forward direction 1397 calculated by this MEP from the last received 1398 TRILL-PM frame. 1399 One way Delay require sufficiently precise clock 1400 Synchronization. 1401 This object is undefined if it's dm1-transmitted."; 1402 } 1403 leaf frame-delay-backward { 1404 type yang:gauge32; 1405 units microseconds; 1406 description 1407 "This object contains the frame delay in the 1408 backward direction 1409 calculated by this MEP from the last received 1410 TRILL-PM frame. 1411 One way Delay require sufficiently precise clock 1412 Synchronization. 1413 This object is undefined if it's dm1-transmitted or 1414 dm1-received."; 1415 } 1416 leaf inter-frame-delay-variation-two-way { 1417 type yang:gauge32; 1418 units microseconds; 1420 description 1421 "This object contains the last two-way 1422 inter-frame delay 1423 interval calculated by this MEP. 1425 The value of this object is undefined 1426 when measurement-type 1427 is dm1-transmitted or dm1-received."; 1428 } 1429 leaf inter-frame-delay-variation-forward { 1430 type yang:gauge32; 1431 units microseconds; 1433 description 1434 "This object contains the last one-way 1435 inter-frame delay in 1436 the forward direction calculated by this MEP. 1438 The value of this object is undefined when 1439 measurement-type 1440 is dm1-transmitted."; 1441 } 1442 leaf inter-frame-delay-variation-backward { 1443 type yang:gauge32; 1444 units microseconds; 1446 description 1447 "This object contains the last one-way inter-frame 1448 delay in 1449 the backward direction calculated by this MEP. 1451 The value of this object is undefined when 1452 measurement-type 1453 is dm1-transmitted or dm-received."; 1454 } 1456 container current-stats { 1457 description 1458 "This container contains result of the 1459 current Measurement 1460 Interval in a TRILL-PM Delay measurement 1461 session gathered 1462 during the interval indicated by 1463 measurement-interval."; 1465 leaf start-time { 1466 type yang:date-and-time; 1468 description 1469 "Start time for current measurement interval."; 1470 } 1472 leaf elapsed-time { 1473 type uint32; 1475 description 1476 "Elapsed time for current measurement 1477 interval in 0.01 1478 seconds."; 1479 } 1480 uses delay-measurement-stats-group; 1481 } 1483 list history-stats { 1484 key id; 1486 description 1487 "This list contains the result for 1488 historic Measurement 1489 Interval for TRILL-PM session."; 1491 leaf id { 1492 type uint32; 1493 description 1494 "Identifier"; 1495 } 1497 leaf start-time { 1498 type yang:date-and-time; 1500 description 1501 "Start time for measurement interval."; 1502 } 1504 leaf elapsed-time { 1505 type uint32; 1507 description 1508 "Elapsed time for measurement interval in 0.01 1509 seconds."; 1510 } 1511 uses delay-measurement-stats-group; 1512 } 1513 } 1514 } 1516 augment "/goam:domains/goam:domain/goam:MAs/goam:MA/goam:MEP" { 1518 description 1519 "This set of data definitions extends the MEP as described 1520 in goam, specially with regards to Loss Measurements."; 1522 container loss-measurements { 1523 description 1524 "This container contains a collection of data definitions 1525 related to Loss Measurements as defined in TRILL-PM."; 1527 list loss-measurements { 1528 key "session-cookie"; 1529 config false; 1530 description 1531 "List of Loss Measurement PM Sessions where each 1532 instance is uniquely identified by an session-cookie 1533 attribute."; 1534 leaf session-cookie { 1535 type uint32; 1536 config false; 1537 description 1538 "cookie to identify Loss Measurement session."; 1539 } 1541 leaf id { 1542 type string; 1544 description 1545 "This object uniquely identifies a scheduled measurement 1546 time."; 1547 } 1549 leaf status { 1550 type boolean; 1551 config false; 1552 description 1553 "This object indicates DM session status, true means 1554 Active, false means not-active."; 1555 } 1556 } 1558 uses loss-measurement-configuration-group; 1559 uses measurement-timing-group; 1560 container destination-mep { 1561 uses goam:mp-address; 1562 leaf mep-id { 1563 type toam:tril-rb-nickname; 1564 description 1565 "Trill Rbridge Nickname MP address"; 1566 } 1567 description 1568 "Destination MEP"; 1569 } 1570 leaf measurement-forward-flr { 1571 type yang:gauge32 { 1572 range "0..100000"; 1573 } 1574 units milli-percent; 1576 description 1577 "This object contains the Frame loss Ratio in forward 1578 direction."; 1579 } 1580 leaf measurement-backward-flr { 1581 type yang:gauge32 { 1582 range "0..100000"; 1583 } 1584 units milli-percent; 1586 description 1587 "This object contains the Frame loss Ratio 1588 in backward direction."; 1589 } 1590 container current-stats { 1591 description 1592 "This container contains result of the 1593 current Measurement 1594 Interval in a TRILL-PM Loss measurement 1595 session gathered 1596 during the interval indicated by 1597 measurement-interval."; 1599 leaf start-time { 1600 type yang:date-and-time; 1602 description 1603 "Start time for current measurement interval."; 1604 } 1606 leaf elapsed-time { 1607 type uint32; 1609 description 1610 "Elapsed time for current measurement 1611 interval in 0.01 seconds."; 1612 } 1613 uses loss-stats-group; 1614 } 1616 list history-stats { 1617 key id; 1619 description 1620 "This list contains the result for 1621 historic Measurement 1622 Interval for TRILL-PM session."; 1624 leaf id { 1625 type uint32; 1626 description 1627 "Identifier."; 1628 } 1629 leaf start-time { 1630 type yang:date-and-time; 1632 description 1633 "Start time for measurement interval."; 1634 } 1636 leaf elapsed-time { 1637 type uint32; 1639 description 1640 "Elapsed time for measurement interval in 0.01 1641 seconds."; 1642 } 1643 uses loss-stats-group; 1644 } 1645 } 1646 } 1648 //RPCs related to TRILLOAM PM 1650 rpc create-loss-measurement { 1651 description 1652 "Schedule a one-way and two-way on-demand or proactive 1653 performance 1654 monitoring loss measurements on a specific MEP and Flow. 1656 A list entry associated with the newly created session 1657 will be 1658 created in the loss-measurements container and the assigned 1659 session identifier will be returned in the 1660 output parameter."; 1662 input { 1663 uses loss-measurement-configuration-group; 1664 uses measurement-timing-group; 1665 container destination-mep { 1666 uses goam:mp-address; 1667 leaf mep-id { 1668 type toam:tril-rb-nickname; 1669 description 1670 "MEP Id."; 1671 } 1672 description 1673 ""; 1674 } 1675 leaf flow-entropy { 1676 type toam:flow-entropy-trill; 1677 description 1678 ""; 1679 } 1680 uses context-id-group; 1681 } 1682 output { 1683 leaf session-id { 1684 type uint32; 1685 mandatory true; 1687 description 1688 "The session identifier of the newly 1689 created loss measurement session."; 1690 } 1691 } 1693 } //end of rpc 1695 rpc abort-loss-measurement { 1696 description 1697 "Abort a currently running or scheduled 1698 single-ended on-demand TRILL 1699 PM function."; 1701 input { 1702 uses goam:maintenance-domain-id; 1703 uses goam:ma-identifier; 1704 container destination-mep { 1705 uses goam:mp-address; 1706 leaf mep-id { 1707 type toam:tril-rb-nickname; 1708 description 1709 "MEP Identifier."; 1710 } 1711 description 1712 ""; 1713 } 1714 leaf session-id { 1715 type uint32; 1717 mandatory true; 1718 description 1719 "The session Id of the measurement session to 1720 be aborted."; 1721 } 1723 } 1724 } //end of RPC 1725 rpc create-delay-measurement { 1726 description 1727 "Schedule a one-way and two-way on-demand or proactive 1728 performance 1729 monitoring delay measurements on a specific MEP and Flow. 1731 A list entry associated with the newly created session 1732 will be created in the delay-measurements container 1733 and the assigned 1734 session identifier will be returned in the 1735 output parameter."; 1737 input { 1738 uses delay-measurement-configuration-group; 1739 uses measurement-timing-group; 1740 container destination-mep { 1741 uses goam:mp-address; 1742 leaf mep-id { 1743 type toam:tril-rb-nickname; 1744 description 1745 "MEP Identifier."; 1746 } 1747 description 1748 "Destination MEP."; 1749 } 1750 leaf flow-entropy { 1751 type toam:flow-entropy-trill; 1752 description 1753 "Flow Entropy"; 1754 } 1755 uses context-id-group; 1756 } 1757 output { 1758 leaf session-id { 1759 type uint32; 1760 mandatory true; 1762 description 1763 "The session identifier of the newly created 1764 delay measurement session."; 1765 } 1766 } 1768 } //end of rpc 1770 rpc abort-delay-measurement { 1771 description 1772 "Abort a currently running or scheduled single-ended 1773 on-demand TRILL PM function."; 1775 input { 1776 uses goam:maintenance-domain-id; 1777 uses goam:ma-identifier; 1778 container destination-mep { 1779 uses goam:mp-address; 1780 leaf mep-id { 1781 type toam:tril-rb-nickname; 1782 description 1783 "MEP Identifier."; 1784 } 1785 description 1786 "Destination MEP."; 1787 } 1788 uses context-id-group; 1789 leaf session-id { 1790 type uint32; 1792 mandatory true; 1793 description 1794 "The session Id of the measurement session to 1795 be aborted."; 1796 } 1798 } 1799 } //end of RP 1800 } 1802 1804 7. Security Considerations 1806 There are no security considerations relevant to this document. 1808 8. IANA Considerations 1810 No actions are required from IANA as result of the publication of 1811 this document. 1813 9. References 1815 9.1. Normative References 1817 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1818 Requirement Levels", BCP 14, RFC 2119, March 1997. 1820 [GENYANGGOAM] Senevirathne, T., et.al., "Generic YANG Data Model for 1821 Operations, Administration and Maintenance (OAM)", Work in 1822 Progress, October, 2014. 1824 [TRILLOAMYANG] Senevirathne, T., et.al., "YANG Data Model for TRILL 1825 Operations, Administration, Maintenance(OAM)", Work in 1826 Progress, September, 2014. 1828 9.2. Informative References 1830 [RFC7174] TRILL OAM Framework 1832 [802.1Q] IEEE, "IEEE Standard for Local and metropolitan area 1833 networks - Media Access Control (MAC) Bridges and Virtual 1834 Bridge Local Area Networks", IEEE Std 802.1Q-2011, 31 1835 August 2011. 1837 [RFC6371] Busi, I., et.al., "Operations, Administration, and 1838 Maintenance Framework for MPLS-Based Transport Networks, 1839 RFC 6317, September 2011. 1841 [RFC6291] Andersson, L., et.al., "Guidelines for the use of the "OAM" 1842 Acronym in the IETF" RFC 6291, June 2011. 1844 [RFC6325] Perlman, R., et.al., "Routing Bridges (RBridges): Base 1845 Protocol Specification", RFC 6325, July 2011. 1847 [TRILL-FM] Senevirathne, T., et.al., "TRILL Fault Management", draft- 1848 ietf-trill-oam-fm, Work in Progress. 1850 [TRILL-PM] Mizrahi, T., et.al., "Loss and delay in Transparent 1851 Interconnection of Lots of Links (TRILL)", draft-ietf- 1852 trill-loss-delay, Work in Progress. 1854 Authors' Addresses 1856 Tissa Senevirathne 1857 CISCO Systems 1858 375 East Tasman Drive. 1860 San Jose, CA 95134 1861 USA. 1863 Phone: 408-853-2291 1864 Email: tsenevir@gmail.com 1866 Deepak Kumar 1867 CISCO Systems 1868 510 McCarthy Blvd 1869 Milpitas, CA 95035. 1871 Email: dekumar@cisco.com 1873 Tapraj Singh 1874 Juniper Networks 1875 1194 N Mathilda Avenue 1876 Sunnyvale, CA 94089 1878 Email: tsingh@juniper.net 1880 Qin Wu 1881 Huawei 1882 101 Software Avenue, Yuhua District 1883 Nanjing, Jiangsu 210012 1885 Email: bill.wu@huawei.com 1887 Weiguo Hao 1888 Huawei 1890 Email: haoweiguo@huawei.com