idnits 2.17.1 draft-vanderstok-roll-mpl-yang-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: ---------------------------------------------------------------------------- == It seems as if not all pages are separated by form feeds - found 0 form feeds but 20 pages Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack a Security Considerations section. ** There are 24 instances of too long lines in the document, the longest one being 161 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 184 has weird spacing: '...o seqno uin...' == Line 437 has weird spacing: '... key domai...' == Line 442 has weird spacing: '... leaf domai...' == Line 445 has weird spacing: '...sent in mpl-p...' == Line 857 has weird spacing: '... module ietf-...' == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (October 25, 2016) is 2740 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: 'MCaddress' is mentioned on line 150, but not defined ** Obsolete normative reference: RFC 7223 (Obsoleted by RFC 8343) Summary: 3 errors (**), 0 flaws (~~), 9 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 roll P. van der Stok, Ed. 3 Internet-Draft consultant 4 Intended status: Standards Track October 25, 2016 5 Expires: April 28, 2017 7 A YANG model for Multicast Protocol for Low power and lossy Networks 8 (MPL) 9 draft-vanderstok-roll-mpl-yang-02 11 Abstract 13 This document defines a YANG data model for management of Multicast 14 Protocol for Low power and lossy Networks (MPL) implementations. The 15 data model includes configuration data and state data. 17 Note 19 Discussion and suggestions for improvement are requested, and should 20 be sent to roll@ietf.org. 22 Status of This Memo 24 This Internet-Draft is submitted in full conformance with the 25 provisions of BCP 78 and BCP 79. 27 Internet-Drafts are working documents of the Internet Engineering 28 Task Force (IETF). Note that other groups may also distribute 29 working documents as Internet-Drafts. The list of current Internet- 30 Drafts is at http://datatracker.ietf.org/drafts/current/. 32 Internet-Drafts are draft documents valid for a maximum of six months 33 and may be updated, replaced, or obsoleted by other documents at any 34 time. It is inappropriate to use Internet-Drafts as reference 35 material or to cite them other than as "work in progress." 37 This Internet-Draft will expire on April 28, 2017. 39 Copyright Notice 41 Copyright (c) 2016 IETF Trust and the persons identified as the 42 document authors. All rights reserved. 44 This document is subject to BCP 78 and the IETF Trust's Legal 45 Provisions Relating to IETF Documents 46 (http://trustee.ietf.org/license-info) in effect on the date of 47 publication of this document. Please review these documents 48 carefully, as they describe your rights and restrictions with respect 49 to this document. Code Components extracted from this document must 50 include Simplified BSD License text as described in Section 4.e of 51 the Trust Legal Provisions and are provided without warranty as 52 described in the Simplified BSD License. 54 Table of Contents 56 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 57 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 2 58 1.1.1. Tree Diagrams . . . . . . . . . . . . . . . . . . . . 3 59 2. MPL model . . . . . . . . . . . . . . . . . . . . . . . . . . 3 60 3. yang-mpl modules . . . . . . . . . . . . . . . . . . . . . . 5 61 3.1. yang-mpl-domain module . . . . . . . . . . . . . . . . . 5 62 3.2. yang-mpl-ops module . . . . . . . . . . . . . . . . . . . 8 63 3.3. yang-mpl-seeds module . . . . . . . . . . . . . . . . . . 12 64 3.4. yang-mpl-statistics module . . . . . . . . . . . . . . . 15 65 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19 66 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 19 67 6. Changelog . . . . . . . . . . . . . . . . . . . . . . . . . . 19 68 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 19 69 7.1. Normative References . . . . . . . . . . . . . . . . . . 19 70 7.2. Informative References . . . . . . . . . . . . . . . . . 20 71 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 20 73 1. Introduction 75 This document defines a YANG [RFC6020] data model for management of 76 Multicast Protocol for Low power and lossy Networks (MPL) [RFC7731] 77 implementations. The data model covers configuration of per- 78 interface MPL parameters. It also provides information about which 79 Multicast addresses are operationally used, and the seeds for which 80 packets are forwarded 82 1.1. Terminology 84 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 85 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 86 document are to be interpreted as described in [RFC2119]. 88 The following terms are defined in [RFC6241] and are not redefined 89 here: 91 o client 93 o configuration data 95 o server 96 o state data 98 The following terms are defined in [RFC6020] and are not redefined 99 here: 101 o data model 103 o data node 105 The terminology for describing YANG data models is found in 106 [RFC6020]. 108 Terms like domain, seed, I, k, c are defined in [RFC7731]. 110 1.1.1. Tree Diagrams 112 A simplified graphical representation of the data model is used in 113 the YANG modules specified in this document. The meaning of the 114 symbols in these diagrams is as follows: 116 Brackets "[" and "]" enclose list keys. 118 Abbreviations before data node names: "rw" means configuration 119 data (read-write) and "ro" state data (read-only). 121 Symbols after data node names: "?" means an optional node, "!" 122 means a presence container, and "*" denotes a list and leaf-list. 124 Parentheses enclose choice and case nodes, and case nodes are also 125 marked with a colon (":"). 127 Ellipsis ("...") stands for contents of subtrees that are not 128 shown. 130 2. MPL model 132 This document defines the YANG module "ietf-yang-mpl", which 133 specifies a data model for MPL servers. The model consists of the 134 following parts: (1) a "mpl-domain" part that describes the MPL- 135 domains and associated Multicast addresses and the interfaces on 136 which the Multicast addresses are enabled, (2) a "mpl-op" part that 137 describes the parameters settings per seed, (3) a "mpl-seeds" part 138 that describes the MPL buffer contents and the Trickle timer values, 139 and (4) a "mpl-statistics" part that describes the number of lost and 140 correctly forwarded messages. The data model, divided in four 141 modules, has the following structure for MPL configuration per node: 143 module: ietf-yang-mpl-domain 144 +--rw (single)? 145 +--:(mpl-domain) 146 | +--rw mpl-domain 147 | +--rw domains* [domainID] 148 | | +--rw domainID uint16 149 | | +--rw MClist* inet:ipv6-address 150 | +--rw addresses* [MCaddress] 151 | +--rw MCaddress inet:ipv6-address 152 | +--rw interfaces* string 153 +--:(mpl-single) 154 +--rw mpl-single 155 +--rw MCaddresses* inet:ipv6-address 157 module: ietf-yang-mpl-ops 158 +--rw mpl-ops 159 +--rw SE_LIFETIME? uint16 160 +--rw PROACTIVE_FORWARDING? boolean 161 +--rw SEED_SET_ENTRY_LIFETIME? uint64 162 +--rw mpl-parameter* [domainID] 163 +--rw domainID uint16 164 +--rw DATA_MESSAGE_IMIN? uint16 165 +--rw DATA_MESSAGE_IMAX? uint16 166 +--rw DATA_MESSAGE_K? uint16 167 +--rw DATA_MESSAGE_TIMER_EXPIRATIONS? uint16 168 +--rw CONTROL_MESSAGE_IMIN? uint16 169 +--rw CONTROL_MESSAGE_IMAX? uint16 170 +--rw CONTROL_MESSAGE_K? uint16 171 +--rw CONTROL_MESSAGE_TIMER_EXPIRATIONS? uint16 173 module: ietf-yang-mpl-seeds 174 +--ro mpl-seeds* [seedID domainID] 175 +--ro seedID uint64 176 +--ro domainID uint16 177 +--ro local? boolean 178 +--ro generate-seqno? uint8 179 +--ro life-time? uint64 180 +--ro min-seqno? uint8 181 +--ro data-number? uint8 182 +--ro control-number? uint8 183 +--ro buffered-messages* [seqno] 184 +--ro seqno uint8 185 +--ro I? uint8 186 +--ro c? uint8 187 +--ro e? uint8 188 +--ro t? uint8 190 module: ietf-yang-mpl-statistics 191 +--ro mpl-statistics* [seedID domainID] 192 +--ro seedID uint64 193 +--ro domainID uint16 194 +--ro c-too-high? uint64 195 +--ro nr-forwarded? uint64 196 +--ro nr-of-messages-received? uint64 197 +--ro nr-of-copies-received? uint64 198 +--ro nr-of-messages-forwarded? uint64 199 +--ro nr-of-copies-forwarded? uint64 200 +--ro nr-of-refused? uint64 201 +--ro nr-of-missed? uint64 202 +--ro nr-of-notreceived? uint64 203 +--ro nr-of-inconsistent-data? uint64 204 +--ro nr-of-consistent-data? uint64 205 +--ro nr-of-consistent-control? uint64 206 +--ro nr-of-inconsistent-control? uint64 208 3. yang-mpl modules 210 This section describes four yang modules. The model is based on the 211 MPL specification published in [RFC7731] and the specification of 212 [RFC6206]. The identification of the interfaces follows the 213 specification of ietf-interfaces of [RFC7223]. 215 The data model allows to set values to the parameters of the MPL 216 algorithm. This approach requires an active manager process to set 217 the values without use of DHCP as described in: [RFC7774]. 219 The names of the four modules are: yang-mpl-domain, yang-mpl-ops, 220 yang-mpl-seeds, and yang-mpl-statistics, described in subsections 221 with the same name. 223 3.1. yang-mpl-domain module 225 This modules describes (1) the MPL domains and the associated 226 multicast addresses, and (2) the interfaces and the multicast 227 addresses for which they are enabled. 229 The model features a choice such that for constrained devices with 230 only one "single" interface and only one "single" domain, the model 231 specifies a list of MC addresses for which the single interface is 232 enabled. 234 file "ietf-yang-mpl-domain@2016-10-25.yang" 235 module ietf-yang-mpl-domain { 237 yang-version 1; 239 namespace 240 "urn:ietf:params:xml:ns:yang:ietf-yang-mpl-domain"; 242 prefix mpl; 244 import ietf-inet-types{ 245 prefix inet; 246 } 248 organization 249 "IETF ROLL (Routing Over Low power and lossy networks) Working Group"; 251 contact 252 "WG Web: http://tools.ietf.org/wg/roll/ 253 WG List: mailto:roll@ietf.org 255 WG Chair: Peter van der Stok 256 mailto:consultancy@vanderstok.org 258 WG Chair: Ines Robles 259 mailto:maria.ines.robles@ericsson.com 261 Editor: Peter van der Stok 262 mailto:consultancy@vanderstok.org"; 264 description 265 "This module contains information about the state of the MPL domain. 267 Copyright (c) 2016 IETF Trust and the persons identified as 268 authors of the code. All rights reserved. 270 Redistribution and use in source and binary forms, with or 271 without modification, is permitted pursuant to, and subject 272 to the license terms contained in, the Simplified BSD License 273 set forth in Section 4.c of the IETF Trust's Legal Provisions 274 Relating to IETF Documents 275 (http://trustee.ietf.org/license-info). 277 This version of this YANG module is part of RFC XXXX; see 278 the RFC itself for full legal notices."; 280 revision "2016-10-25" { 281 description "Initial revision."; 282 reference 283 "I-D:draft-vanderstok-roll-mpl-yang: A YANG model for Multicast Protocol for Low power and lossy Networks (MPL)"; 284 } 286 choice single { 287 description 288 "A choice between single domain/interface and multiple 289 domains and interfaces."; 290 container mpl-domain { 291 description 292 "The entries describe the MPL domains, the associated 293 Multicast addresses and interfaces."; 295 list domains { 296 key domainID; 297 description 298 "The entries describe a given domain identified with domainID and the associated Multicast addresses."; 300 leaf domainID { 301 type uint16; 302 description 303 "Entry uniquely identifies the domain in the 304 forwarder."; 305 } 307 leaf-list MClist{ 308 type inet:ipv6-address; 309 description 310 "List of associated IPv6 Addresses."; 311 } 312 } // domains list 314 list addresses { 315 key MCaddress; 316 description 317 "The entries describe the interfaces enabled with the specified MC address."; 319 leaf MCaddress { 320 type inet:ipv6-address; 321 description 322 "MC address belonging to a MPL domain."; 323 } 325 leaf-list interfaces { 326 type string; 327 description 328 "List of names of interfaces enabled for this Multicast address. Interface name is defined in [RFC6206]."; 329 } 330 } // addresses list 332 } // container mpl-domain 333 container mpl-single { 334 description 335 "For small devices list of MC addresses for single 336 interface and domain."; 337 leaf-list MCaddresses{ 338 type inet:ipv6-address; 339 description 340 "list of MC addresses belonging to one single domain and interface."; 341 } 342 } // container mpl-simple 343 } // choice simple 344 } //module ietf-yang-mpl-domain 346 348 3.2. yang-mpl-ops module 350 This module models the operational aspects of MPL. Per domain MPL 351 specifies four parameters I_MAX, I_MIN, K, and TIMER_EXPIRATIONs for 352 data and control messages. The value of the MPL intervals are 353 expressed in TUNIT. The entry SE_LIFETIME taken over from [RFC7774] 354 fixes TUNIT to milliseconds. For very constrained devices with only 355 one domain there can be only one instance of mpl-parameter list. 357 file "ietf-yang-mpl-ops@2016-10-25.yang" 359 module ietf-yang-mpl-ops { 361 yang-version 1; 363 namespace 364 "urn:ietf:params:xml:ns:yang:ietf-yang-mpl-ops"; 366 prefix mpl; 368 organization 369 "IETF ROLL (Routing over Low power and lossy networks) Working Group"; 371 contact 372 "WG Web: http://tools.ietf.org/wg/roll/ 373 WG List: mailto:roll@ietf.org 375 WG Chair: Peter van der Stok 376 mailto:consultancy@vanderstok.org 378 WG Chair: Ines Robles 379 mailto:maria.ines.robles@ericsson.com 381 Editor: Peter van der Stok 382 mailto:consultancy@vanderstok.org"; 384 description 385 "This module contains information about the operation of the MPL protocol. 387 Copyright (c) 2016 IETF Trust and the persons identified as 388 authors of the code. All rights reserved. 390 Redistribution and use in source and binary forms, with or 392 without modification, is permitted pursuant to, and subject 393 to the license terms contained in, the Simplified BSD License 394 set forth in Section 4.c of the IETF Trust's Legal Provisions 395 Relating to IETF Documents 396 (http://trustee.ietf.org/license-info). 398 This version of this YANG module is part of RFC XXXX; see 399 the RFC itself for full legal notices."; 401 revision "2016-10-25" { 402 description "Initial revision."; 403 reference 404 "I-D:draft-vanderstok-roll-mpl-yang: A YANG model for Multicast Protocol for Low power and lossy Networks (MPL)"; 405 } 407 container mpl-ops { 408 description 409 "Parameter settings for each MPL server and for each individual domain of the server."; 411 leaf SE_LIFETIME { 412 type uint16; 413 description 414 "lifetime in milliseconds/(mpl timer units), 415 equivalent to SEED_SET_ENTRY_LIFETIME/TUNIT as 416 specified in RFC7774."; 417 } 419 leaf PROACTIVE_FORWARDING { 420 type boolean; 421 description 422 "The boolean value indicates whether the MPL forwarder 423 schedules MPL data message transmission after 424 receiving them for the first time."; 426 } 428 leaf SEED_SET_ENTRY_LIFETIME { 429 type uint64; 430 description 431 "The value indicates the minimum lifetime for an entry 432 in the Seed set expressed in seconds. Default value 433 is 30 minutes."; 434 } 436 list mpl-parameter{ 437 key domainID; 438 description 439 "Each domain has a set of MPL forwarding parameters 440 which regulate the forwarding operation."; 442 leaf domainID{ 443 type uint16; 444 description 445 "Each domainID must be present in mpl-parameter list."; 446 } 448 leaf DATA_MESSAGE_IMIN{ 449 type uint16; 450 description 451 "The minimum Trickle timer interval, as defined in 452 [RFC6206], for MPL Data Message transmissions."; 453 } 455 leaf DATA_MESSAGE_IMAX{ 456 type uint16; 457 description 458 "The maximum Trickle timer interval, as defined in 459 [RFC6206], for MPL Data Message transmissions."; 460 } 462 leaf DATA_MESSAGE_K{ 463 type uint16; 464 default 1; 465 description 466 "The redundancy constant, as defined in [RFC6206], for 467 MPL Data Message transmissions."; 468 } 470 leaf DATA_MESSAGE_TIMER_EXPIRATIONS{ 471 type uint16; 472 default 3; 473 description 474 "The number of Trickle timer expirations that occur 475 before terminating the Trickle algorithm's 476 retransmission of a given MPL Data Message."; 477 } 479 leaf CONTROL_MESSAGE_IMIN{ 480 type uint16; 481 description 482 "The minimum Trickle timer interval, as defined 483 in [RFC6206], for MPL Control Message 484 transmissions."; 485 } 487 leaf CONTROL_MESSAGE_IMAX{ 488 type uint16; 489 description 490 "The maximum Trickle timer interval, as defined 491 in [RFC6206], for MPL Control Message 492 transmissions."; 493 } 495 leaf CONTROL_MESSAGE_K{ 496 type uint16; 497 default 1; 498 description 499 "The redundancy constant, as defined in [RFC6206], 500 for MPL Control Message transmissions."; 501 } 503 leaf CONTROL_MESSAGE_TIMER_EXPIRATIONS{ 504 type uint16; 505 default 10; 506 description 507 "The number of Trickle time expirations that occur 508 before terminating the Trickle algorithm 509 for MPL Control Message transmissions."; 510 } 512 } // list MPL-parameter 513 } // container MPL-ops 514 } // module ietf-yang-mpl-ops 516 517 3.3. yang-mpl-seeds module 519 This module specifies the current values of the operation of the MPL 520 forwarder. The values are acquired by the client and set by the 521 server. The module specifies a set of message buffers, with a buffer 522 per seed and domain. In constrained devices there will be only one 523 domain, but probably multiple seeds. 525 The message buffer contains a set of messages where each message is 526 uniquely identified by its sequence number and seed. The associated 527 I, c, e, and t values indicate the progress of MPL with respect to 528 this message, as specified in [RFC7731]. A forwarder sends and 529 receives multiple copies of a message. When a forwarder has sent 530 (received) a copy of a message, the forwarder has sent (received) 531 that message. 533 For forwarders which are seeds, local has value true and seqno is the 534 sequence number of the next message to send. 536 file "ietf-yang-mpl-seeds@2016-10-25.yang" 538 module ietf-yang-mpl-seeds { 540 yang-version 1; 542 namespace 543 "urn:ietf:params:xml:ns:yang:ietf-yang-mpl-seeds"; 545 prefix mpl; 547 organization 548 "IETF ROLL (Routing over Low power and lossy networks) Working Group"; 550 contact 551 "WG Web: http://tools.ietf.org/wg/roll/ 552 WG List: mailto:roll@ietf.org 554 WG Chair: Peter van der Stok 555 mailto:consultancy@vanderstok.org 557 WG Chair: Ines Robles 558 mailto:maria.ines.robles@ericsson.com 560 Editor: Peter van der Stok 561 mailto:consultancy@vanderstok.org"; 563 description 564 "This module contains information about the operation of the MPL protocol. 566 Copyright (c) 2016 IETF Trust and the persons identified as 567 authors of the code. All rights reserved. 569 Redistribution and use in source and binary forms, with or 571 without modification, is permitted pursuant to, and subject 572 to the license terms contained in, the Simplified BSD License 573 set forth in Section 4.c of the IETF Trust's Legal Provisions 574 Relating to IETF Documents 575 (http://trustee.ietf.org/license-info). 577 This version of this YANG module is part of RFC XXXX; see 578 the RFC itself for full legal notices."; 580 revision "2016-10-25" { 581 description "Initial revision."; 582 reference 583 "I-D:draft-vanderstok-roll-mpl-yang: A YANG model for Multicast Protocol for Low power and lossy Networks (MPL)"; 584 } 586 list mpl-seeds{ 587 key "seedID domainID"; 588 config false; 589 description 590 "List describes all seeds that are active in the server. Seed information contains the message buffer contents and the operational values of I, c, sequence number and the life-times per message."; 592 leaf seedID{ 593 type uint64; 594 description 595 "value uniquely identifies the MPL Seed within a MPL 596 domain."; 597 } 599 leaf domainID{ 600 type uint16; 601 description 602 "together with seedID uniquely identifies buffer set."; 603 } 605 leaf local { 606 type boolean; 607 description 608 "When local == TRUE, seed is located in this forwarder. 609 WHEN local == false, seed is located in different 610 forwarder."; 612 } 614 leaf generate-seqno { 615 type uint8; 616 description 617 "Sequence number of next message to be generated by this local seed."; 618 } 620 leaf life-time { 621 type uint64; 622 description 623 " Minimum remaining lifetime of the seed entry in 624 SE_LIFETIME units."; 625 } 627 leaf min-seqno{ 628 type uint8; 629 description 630 "Lower bound sequence number in the buffer of the seed."; 631 } 633 leaf data-number{ 634 type uint8; 635 description 636 "Number of currently buffered data messages."; 637 } 639 leaf control-number{ 640 type uint8; 641 description 642 "Number of currently buffered control messages."; 643 } 645 list buffered-messages{ 646 key seqno; 647 description 648 " status of trickle intervals of the buffered message identified by seqno. and seed/domain"; 650 leaf seqno{ 651 type uint8; 652 description 653 "Sequence number of message."; 654 } 656 leaf I{ 657 type uint8; 658 description 659 "Current Trickle timer interval size in SE-LIFETIME units."; 661 } 663 leaf c{ 664 type uint8; 665 description 666 "number of times that copy of this message has been 667 received in this interval."; 668 } 670 leaf e{ 671 type uint8; 672 description 673 "number of Trickle time expirations since last 674 Trickle timer reset."; 675 } 677 leaf t{ 678 type uint8; 679 description 680 " Time expressed in SE-LIFETIME units 681 that message will be (is) forwarded"; 682 } 683 } // list seed-timers 684 } // list MPL-seeds 685 } // module ietf-yang-mpl-seeds 687 689 3.4. yang-mpl-statistics module 691 This module specifies the operation of the MPL forwarder expressed in 692 number of messages and copies. The values are acquired by the client 693 and set by the server. Statistics are specified per seed and domain. 694 In constrained devices there will be only one domain, but probably 695 multiple seeds. 697 The parameter k determines how many copies of a message can be 698 forwarded. The counters c-too-high, nr-forwarded, and nr-not- 699 forwarded give insight in the consequences of the current value of k. 701 The other counters give insight in the loss of messages caused by the 702 medium or forwarding delays. The inconsistent/consistent counters 703 indicate when consistent or inconsistent messages were received 704 according to the definition of consistent in [RFC7731]. 706 file "ietf-yang-mpl-statistics@2016-10-25.yang" 708 module ietf-yang-mpl-statistics { 710 yang-version 1; 712 namespace 713 "urn:ietf:params:xml:ns:yang:ietf-yang-mpl-statistics"; 715 prefix mpl; 717 organization 718 "IETF ROLL (Routing over Low power and lossy networks) Working Group"; 720 contact 721 "WG Web: http://tools.ietf.org/wg/roll/ 722 WG List: mailto:roll@ietf.org 724 WG Chair: Peter van der Stok 725 mailto:consultancy@vanderstok.org 727 WG Chair: Ines Robles 728 mailto:maria.ines.robles@ericsson.com 730 Editor: Peter van der Stok 731 mailto:consultancy@vanderstok.org"; 733 description 734 "This module contains information about the operation of the MPL protocol. 736 Copyright (c) 2016 IETF Trust and the persons identified as 737 authors of the code. All rights reserved. 739 Redistribution and use in source and binary forms, with or 741 without modification, is permitted pursuant to, and subject 742 to the license terms contained in, the Simplified BSD License 743 set forth in Section 4.c of the IETF Trust's Legal Provisions 744 Relating to IETF Documents 745 (http://trustee.ietf.org/license-info). 747 This version of this YANG module is part of RFC XXXX; see 748 the RFC itself for full legal notices."; 750 revision "2016-10-25" { 751 description "Initial revision."; 752 reference 753 "I-D:draft-vanderstok-roll-mpl-yang: A YANG model for Multicast Protocol for Low power and lossy Networks (MPL)"; 754 } 756 list mpl-statistics{ 757 key "seedID domainID"; 759 config false; 761 description 762 "List describes performance statistics integrated over the messages identified by seed and domain identifiers. A forwarder can receive and forward multiple copies of a message uniquely identified by seqno, domain, and seed."; 764 leaf seedID{ 765 type uint64; 766 description 767 "value uniquely identifies the MPL Seed within a MPL 768 domain."; 769 } 771 leaf domainID{ 772 type uint16; 773 description 774 "together with seed-ID uniquely identifies buffer set."; 775 } 777 leaf c-too-high { 778 type uint64; 779 description 780 "Number of times that a copy was not forwarded 781 because c > k."; 782 } 784 leaf nr-forwarded { 785 type uint64; 786 description 787 "number of times copies are forwarded, while c <= k."; 788 } 790 leaf nr-of-messages-received{ 791 type uint64; 792 description 793 "number of messages (one or more copies) received, must be smaller than or equal to seqno."; 794 } 796 leaf nr-of-copies-received{ 797 type uint64; 798 description 799 "total number of message copies received."; 800 } 802 leaf nr-of-messages-forwarded{ 803 type uint64; 804 description 805 "number of forwarded messages, must be smaller than or equal to nr-of-messages-received."; 806 } 808 leaf nr-of-copies-forwarded{ 809 type uint64; 810 description 811 "number of forwarded copies, can be larger than number-of-copies-received."; 812 } 814 leaf nr-of-refused{ 815 type uint64; 816 description 817 "number of refused copies because seqno too small."; 818 } 820 leaf nr-of-missed{ 821 type uint64; 822 description 823 "number of messages that were not received (derived from gaps in received seqno's.)"; 824 } 826 leaf nr-of-notreceived{ 827 type uint64; 828 description 829 "number of messages that were not received 830 according to control message."; 831 } 833 leaf nr-of-inconsistent-data{ 834 type uint64; 835 description 836 "number of inconsistent data messages."; 837 } 839 leaf nr-of-consistent-data{ 840 type uint64; 841 description 842 "number of consistent data messages."; 843 } 845 leaf nr-of-consistent-control{ 846 type uint64; 847 description 848 "number of consistent control messages."; 849 } 851 leaf nr-of-inconsistent-control{ 852 type uint64; 853 description 854 "number of inconsistent control messages."; 855 } 856 } // list mpl statistics 857 } // module ietf-yang-mpl-statistics 859 861 4. IANA Considerations 863 This specification has no consequences for IANA. 865 5. Acknowledgements 867 Andy Bierman has commented on the use of YANG for mpl. YANG doctors 868 pointed out a wrong use of config. 870 6. Changelog 872 Changes from version 00 to version 01 874 o config false in "statistics" and "seeds" modules 876 o separated into 4 modules 878 o inserted choice in domain modules 880 o renamed some parameters 882 o Introduced section per module 884 7. References 886 7.1. Normative References 888 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 889 Requirement Levels", BCP 14, RFC 2119, 890 DOI 10.17487/RFC2119, March 1997, 891 . 893 [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for 894 the Network Configuration Protocol (NETCONF)", RFC 6020, 895 DOI 10.17487/RFC6020, October 2010, 896 . 898 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 899 and A. Bierman, Ed., "Network Configuration Protocol 900 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 901 . 903 [RFC7223] Bjorklund, M., "A YANG Data Model for Interface 904 Management", RFC 7223, DOI 10.17487/RFC7223, May 2014, 905 . 907 [RFC7731] Hui, J. and R. Kelsey, "Multicast Protocol for Low-Power 908 and Lossy Networks (MPL)", RFC 7731, DOI 10.17487/RFC7731, 909 February 2016, . 911 7.2. Informative References 913 [RFC6206] Levis, P., Clausen, T., Hui, J., Gnawali, O., and J. Ko, 914 "The Trickle Algorithm", RFC 6206, DOI 10.17487/RFC6206, 915 March 2011, . 917 [RFC7774] Doi, Y. and M. Gillmore, "Multicast Protocol for Low-Power 918 and Lossy Networks (MPL) Parameter Configuration Option 919 for DHCPv6", RFC 7774, DOI 10.17487/RFC7774, March 2016, 920 . 922 Author's Address 924 Peter van der Stok (editor) 925 consultant 927 Phone: +31-492474673 (Netherlands), +33-966015248 (France) 928 Email: consultancy@vanderstok.org 929 URI: www.vanderstok.org