idnits 2.17.1 draft-ietf-netmod-entity-00.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 : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document seems to lack the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). -- The document date (May 13, 2016) is 2898 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) == Outdated reference: A later version (-14) exists of draft-ietf-netmod-rfc6020bis-12 Summary: 0 errors (**), 0 flaws (~~), 3 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group A. Bierman 3 Internet-Draft YumaWorks 4 Intended status: Standards Track M. Bjorklund 5 Expires: November 14, 2016 Tail-f Systems 6 J. Dong 7 Huawei Technologies 8 D. Romascanu 9 Avaya 10 May 13, 2016 12 A YANG Data Model for Entity Management 13 draft-ietf-netmod-entity-00 15 Abstract 17 This document defines a YANG data model for the management of 18 multiple physical entities managed by a single server. 20 Status of This Memo 22 This Internet-Draft is submitted in full conformance with the 23 provisions of BCP 78 and BCP 79. 25 Internet-Drafts are working documents of the Internet Engineering 26 Task Force (IETF). Note that other groups may also distribute 27 working documents as Internet-Drafts. The list of current Internet- 28 Drafts is at http://datatracker.ietf.org/drafts/current/. 30 Internet-Drafts are draft documents valid for a maximum of six months 31 and may be updated, replaced, or obsoleted by other documents at any 32 time. It is inappropriate to use Internet-Drafts as reference 33 material or to cite them other than as "work in progress." 35 This Internet-Draft will expire on November 14, 2016. 37 Copyright Notice 39 Copyright (c) 2016 IETF Trust and the persons identified as the 40 document authors. All rights reserved. 42 This document is subject to BCP 78 and the IETF Trust's Legal 43 Provisions Relating to IETF Documents 44 (http://trustee.ietf.org/license-info) in effect on the date of 45 publication of this document. Please review these documents 46 carefully, as they describe your rights and restrictions with respect 47 to this document. Code Components extracted from this document must 48 include Simplified BSD License text as described in Section 4.e of 49 the Trust Legal Provisions and are provided without warranty as 50 described in the Simplified BSD License. 52 Table of Contents 54 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 55 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 2 56 1.1.1. Tree Diagrams . . . . . . . . . . . . . . . . . . . . 2 57 2. Objectives . . . . . . . . . . . . . . . . . . . . . . . . . 3 58 3. Entity Data Model . . . . . . . . . . . . . . . . . . . . . . 3 59 3.1. The Physical Entry Lists . . . . . . . . . . . . . . . . 5 60 4. Relationship to ENTITY-MIB . . . . . . . . . . . . . . . . . 5 61 5. Relationship to ENTITY-SENSOR-MIB . . . . . . . . . . . . . . 6 62 6. Relationship to ENTITY-STATE-MIB . . . . . . . . . . . . . . 6 63 7. Entity YANG Module . . . . . . . . . . . . . . . . . . . . . 6 64 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 34 65 9. Security Considerations . . . . . . . . . . . . . . . . . . . 35 66 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 35 67 11. Normative References . . . . . . . . . . . . . . . . . . . . 35 68 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 35 70 1. Introduction 72 This document defines a YANG [I-D.ietf-netmod-rfc6020bis] data model 73 for the management of multiple physical entities managed by a single 74 server. 76 The data model includes configuration data and state data (status 77 information and counters for the collection of statistics). 79 1.1. Terminology 81 The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 82 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 83 "OPTIONAL" in this document are to be interpreted as described in BCP 84 14, [RFC2119]. 86 1.1.1. Tree Diagrams 88 A simplified graphical representation of the data model is used in 89 this document. The meaning of the symbols in these diagrams is as 90 follows: 92 o Brackets "[" and "]" enclose list keys. 94 o Abbreviations before data node names: "rw" means configuration 95 data (read-write) and "ro" state data (read-only). 97 o Symbols after data node names: "?" means an optional node, "!" 98 means a presence container, and "*" denotes a list and leaf-list. 100 o Parentheses enclose choice and case nodes, and case nodes are also 101 marked with a colon (":"). 103 o Ellipsis ("...") stands for contents of subtrees that are not 104 shown. 106 2. Objectives 108 This section describes some of the design objectives for the entity 109 model. 111 o There are many common properties used to identify the entities, 112 which need to be supported in the entity data module. 114 o There are many important information and states about the 115 entities, which needs to be collected from the devices which 116 support the entity data model. 118 o The entity data model SHOULD be suitable for new implementations 119 to use as is. 121 o The entity data model defined in this document can be implemented 122 on a system that also implements ENTITY-MIB, thus the mapping 123 between the entity data model and ENTITY-MIB SHOULD be clear. 125 3. Entity Data Model 127 This document defines the YANG module "ietf-entity", which has the 128 following structure: 130 module: ietf-entity 131 +--ro entity-state 132 | +--ro last-change? yang:date-and-time 133 | +--ro physical-entity* [name] 134 | +--ro name string 135 | +--ro class? identityref 136 | +--ro physical-index? int32 {entity-mib}? 137 | +--ro description? string 138 | +--ro contained-in* -> ../../physical-entity/name 139 | +--ro contains-child* -> ../../physical-entity/name 140 | +--ro parent-rel-pos? int32 141 | +--ro hardware-rev? string 142 | +--ro firmware-rev? string 143 | +--ro software-rev? string 144 | +--ro serial-num? string 145 | +--ro mfg-name? string 146 | +--ro model-name? string 147 | +--ro alias? string 148 | +--ro asset-id? string 149 | +--ro is-fru? boolean 150 | +--ro mfg-date? yang:date-and-time 151 | +--ro uri* inet:uri 152 | +--ro uuid? yang:uuid 153 | +--ro state {entity-state}? 154 | | +--ro state-last-changed? yang:date-and-time 155 | | +--ro admin-state? entity-admin-state 156 | | +--ro oper-state? entity-oper-state 157 | | +--ro usage-state? entity-usage-state 158 | | +--ro alarm-status? entity-alarm-status 159 | | +--ro standby-status? entity-standby-status 160 | +--ro sensor-data {entity-sensor}? 161 | +--ro data-type? entity-sensor-data-type 162 | +--ro data-scale? entity-sensor-data-scale 163 | +--ro precision? entity-sensor-precision 164 | +--ro value? entity-sensor-value 165 | +--ro oper-status? entity-sensor-status 166 | +--ro sensor-units-display? string 167 | +--ro value-timestamp? yang:date-and-time 168 | +--ro value-update-rate? uint32 169 +--rw entity {entity-config}? 170 +--rw physical-entity* [name] 171 +--rw name string 172 +--rw serial-num? string 173 +--rw alias? string 174 +--rw asset-id? string 175 +--rw uri* inet:uri 176 +--rw admin-state? entity-admin-state {entity-state}? 178 notifications: 179 +---n ent-config-change 180 +---n ent-state-oper-enabled {entity-state}? 181 | +--ro name? -> /entity-state/physical-entity 182 /name 183 | +--ro admin-state? -> /entity-state/physical-entity 184 /state/admin-state 185 | +--ro alarm-status? -> /entity-state/physical-entity 186 /state/alarm-status 187 +---n ent-state-oper-disabled {entity-state}? 188 +--ro name? -> /entity-state/physical-entity 189 /name 190 +--ro admin-state? -> /entity-state/physical-entity 191 /state/admin-state 192 +--ro alarm-status? -> /entity-state/physical-entity 193 /state/alarm-status 195 3.1. The Physical Entry Lists 197 The data model for physical entities presented in this document uses 198 a flat list of entities. Each entity in the list is identified by 199 its name. Furthermore, each entity has a mandatory "class" leaf. 201 The "iana-entity" module defines YANG identities for the hardware 202 types in the IANA-maintained "IANA-ENTITY-MIB" registry. 204 The "class" leaf is a YANG identity that describes the type of the 205 hardware. Vendors are encouraged to either directly use one of the 206 common IANA-defined identities, or derive a more specific identity 207 from one of them. 209 There is one optional list of configured physical entities ("/entity/ 210 physical-entity"), and a separate list for the operational state of 211 all physical entities ("/entity-state/physical-entity"). 213 4. Relationship to ENTITY-MIB 215 If the device implements the ENTITY-MIB [RFC6933], each entry in the 216 /entity-state/physical-entity list is mapped to one EntPhysicalEntry. 217 Objects that are writable in the MIB are mapped to nodes in the 218 /entity/physical-entity list. 220 The "physical-index" leaf MUST contain the value of the corresponding 221 entPhysicalEntry's entPhysicalIndex. 223 The "class" leaf is mapped to both entPhysicalClass and 224 entPhysicalVendorType. If the value of the "class" leaf is an 225 identity that is either derived from or is one of the identities in 226 the "iana-entity" module, then entPhysicalClass contains the 227 corresponding IANAPhysicalClass enumeration value. Otherwise, 228 entPhysicalClass contains the IANAPhysicalClass value "other(1)". 229 Vendors are encouraged to define an identity (derived from an 230 identity in "iana-entity" if possible) for each enterprise-specific 231 registration identifier used for entPhysicalVendorType, and use that 232 identity for the "class" leaf. 234 The following tables list the YANG data nodes with corresponding 235 objects in the ENTITY-MIB. 237 -- YANG data nodes and related ENTITY-MIB objects 238 +------------------------------------+------------------------------+ 239 | YANG data node in /entity-state | ENTITY-MIB object | 240 | /physical-entity | | 241 +------------------------------------+------------------------------+ 242 | name | entPhysicalName | 243 | class | entPhysicalClass | 244 | | entPhysicalVendorType | 245 | physical-index | entPhysicalIndex | 246 | description | entPhysicalDescr | 247 | contained-in | entPhysicalContainedIn | 248 | contains-child | entPhysicalChildIndex | 249 | parent-rel-pos | entPhysicalParentRelPos | 250 | hardware-rev | entPhysicalHardwareRev | 251 | firmware-rev | entPhysicalFirmwareRev | 252 | software-rev | entPhysicalSoftwareRev | 253 | serial-num | entPhysicalSerialNum | 254 | mfg-name | entPhysicalMfgName | 255 | model-name | entPhysicalModelName | 256 | alias | entPhysicalAlias | 257 | asset-id | entPhysicalAssetID | 258 | is-fru | entPhysicalIsFRU | 259 | mfg-date | entPhysicalMfgDate | 260 | uri | entPhysicalUris | 261 | uuid | entPhysicalUUID | 262 +------------------------------------+------------------------------+ 264 5. Relationship to ENTITY-SENSOR-MIB 266 TBD relationship to [RFC3433]. 268 6. Relationship to ENTITY-STATE-MIB 270 TBD relationship to [RFC4268]. 272 7. Entity YANG Module 274 file "ietf-entity@2016-05-13.yang" 276 module ietf-entity { 277 yang-version 1.1; 278 namespace "urn:ietf:params:xml:ns:yang:ietf-entity"; 279 prefix ent; 281 import ietf-inet-types { 282 prefix inet; 283 } 284 import ietf-yang-types { 285 prefix yang; 287 } 289 organization 290 "IETF NETMOD (NETCONF Data Modeling Language) Working Group"; 292 contact 293 "WG Web: 294 WG List: 296 WG Chair: Lou Berger 297 299 WG Chair: Juergen Schoenwaelder 300 302 WG Chair: Kent Watsen 303 305 Editor: Andy Bierman 306 308 Editor: Martin Bjorklund 309 311 Editor: Jie Dong 312 314 Editor: Dan Romascanu 315 "; 317 // RFC Ed.: replace XXXX with actual RFC number and remove this 318 // note. 320 description 321 "This module contains a collection of YANG definitions for 322 managing physical entities. 324 Copyright (c) 2016 IETF Trust and the persons identified as 325 authors of the code. All rights reserved. 327 Redistribution and use in source and binary forms, with or 328 without modification, is permitted pursuant to, and subject 329 to the license terms contained in, the Simplified BSD License 330 set forth in Section 4.c of the IETF Trust's Legal Provisions 331 Relating to IETF Documents 332 (http://trustee.ietf.org/license-info). 334 This version of this YANG module is part of RFC XXXX; see 335 the RFC itself for full legal notices."; 337 // RFC Ed.: update the date below with the date of RFC publication 338 // and remove this note. 339 revision 2016-05-13 { 340 description 341 "Initial revision."; 342 reference 343 "RFC XXXX: A YANG Data Model for Entity Management"; 344 } 346 /* 347 * Features 348 */ 350 feature entity-mib { 351 description 352 "This feature indicates that the device implements 353 the ENTITY-MIB."; 354 reference "RFC 6933: Entity MIB (Version 4)"; 355 } 357 feature entity-config { 358 description 359 "Indicates that the server supports configuration of 360 physical entities."; 361 } 363 feature entity-state { 364 description 365 "Indicates the ENTITY-STATE-MIB objects are supported"; 366 reference "RFC 4268: Entity State MIB"; 367 } 369 feature entity-sensor { 370 description 371 "Indicates the ENTITY-SENSOR-MIB objects are supported"; 372 reference "RFC 3433: Entity Sensor MIB"; 373 } 375 /* 376 * Typedefs 377 */ 379 typedef entity-admin-state { 380 type enumeration { 381 enum unknown { 382 value 1; 383 description 384 "The resource is unable to report administrative state."; 385 } 386 enum locked { 387 value 2; 388 description 389 "The resource is administratively prohibited from use."; 390 } 391 enum shutting-down { 392 value 3; 393 description 394 "The resource usage is administratively limited to current 395 instances of use."; 396 } 397 enum unlocked { 398 value 4; 399 description 400 "The resource is not administratively prohibited from use."; 401 } 402 } 403 description 404 "Represents the various possible administrative states."; 405 reference "RFC 4268: EntityAdminState"; 406 } 408 typedef entity-oper-state { 409 type enumeration { 410 enum unknown { 411 value 1; 412 description 413 "The resource is unable to report operational state."; 414 } 415 enum disabled { 416 value 2; 417 description 418 "The resource is totally inoperable."; 419 } 420 enum enabled { 421 value 3; 422 description 423 "The resource is partially or fully operable."; 424 } 425 enum testing { 426 value 4; 427 description 428 "The resource is currently being tested and cannot 429 therefore report whether it is operational or not."; 430 } 432 } 433 description 434 "Represents the possible values of operational states."; 435 reference "RFC 4268: EntityOperState"; 436 } 438 typedef entity-usage-state { 439 type enumeration { 440 enum unknown { 441 value 1; 442 description 443 "The resource is unable to report usage state."; 444 } 445 enum idle { 446 value 2; 447 description 448 "The resource is servicing no users."; 449 } 450 enum active { 451 value 3; 452 description 453 "The resource is currently in use and it has sufficient 454 spare capacity to provide for additional users."; 455 } 456 enum busy { 457 value 4; 458 description 459 "The resource is currently in use, but it currently has 460 no spare capacity to provide for additional users."; 461 } 462 } 463 description 464 "Represents the possible values of usage states."; 465 reference "RFC 4268, EntityUsageState"; 466 } 468 typedef entity-alarm-status { 469 type bits { 470 bit unknown { 471 position 0; 472 description 473 "The resource is unable to report alarm state."; 474 } 475 bit under-repair { 476 position 1; 477 description 478 "The resource is currently being repaired, which, depending 479 on the implementation, may make the other values in this 480 bit string not meaningful."; 481 } 482 bit critical { 483 position 2; 484 description 485 "One or more critical alarms are active against the 486 resource."; 487 } 488 bit major { 489 position 3; 490 description 491 "One or more major alarms are active against the resource."; 492 } 493 bit minor { 494 position 4; 495 description 496 "One or more minor alarms are active against the resource."; 497 } 498 bit warning { 499 position 5; 500 description 501 "One or more warning alarms are active against the resource. 502 This alarm status is not defined in X.733."; 503 } 504 bit indeterminate { 505 position 6; 506 description 507 "One or more alarms of whose perceived severity cannot be 508 determined are active against this resource. 509 This alarm status is not defined in X.733."; 510 } 511 } 512 description 513 "Represents the possible values of alarm status. 514 An Alarm [RFC3877] is a persistent indication of an error or 515 warning condition. 517 When no bits of this attribute are set, then no active 518 alarms are known against this entity and it is not under 519 repair."; 520 reference "RFC 4268: EntityAlarmStatus"; 521 } 523 typedef entity-standby-status { 524 type enumeration { 525 enum unknown { 526 value 1; 527 description 528 "The resource is unable to report standby state."; 529 } 530 enum hot-standby { 531 value 2; 532 description 533 "The resource is not providing service, but it will be 534 immediately able to take over the role of the resource 535 to be backed up, without the need for initialization 536 activity, and will contain the same information as the 537 resource to be backed up."; 538 } 539 enum cold-standby { 540 value 3; 541 description 542 "The resource is to back up another resource, but will not 543 be immediately able to take over the role of a resource 544 to be backed up, and will require some initialization 545 activity."; 546 } 547 enum providing-service { 548 value 4; 549 description 550 "The resource is providing service."; 551 } 552 } 553 description 554 "Represents the possible values of standby status."; 555 reference "RFC 4268: EntityStandbyStatus"; 556 } 558 typedef entity-sensor-data-type { 559 type enumeration { 560 enum other { 561 value 1; 562 description 563 "A measure other than those listed below."; 564 } 565 enum unknown { 566 value 2; 567 description 568 "An unknown measurement, or arbitrary, relative numbers"; 569 } 570 enum volts-AC { 571 value 3; 572 description 573 "A measure of electric potential (alternating current)."; 574 } 575 enum volts-DC { 576 value 4; 577 description 578 "A measure of electric potential (direct current)."; 579 } 580 enum amperes { 581 value 5; 582 description 583 "A measure of electric current."; 584 } 585 enum watts { 586 value 6; 587 description 588 "A measure of power."; 589 } 590 enum hertz { 591 value 7; 592 description 593 "A measure of frequency."; 594 } 595 enum celsius { 596 value 8; 597 description 598 "A measure of temperature."; 599 } 600 enum percent-RH { 601 value 9; 602 description 603 "A measure of percent relative humidity."; 604 } 605 enum rpm { 606 value 10; 607 description 608 "A measure of shaft revolutions per minute."; 609 } 610 enum cmm { 611 value 11; 612 description 613 "A measure of cubic meters per minute (airflow)."; 614 } 615 enum truth-value { 616 value 12; 617 description 618 "Value is one of 1 (true) or 2 (false)"; 619 } 620 } 621 description 622 "An node using this data type represents the Entity Sensor 623 measurement data type associated with a physical sensor 624 value. The actual data units are determined by examining an 625 node of this type together with the associated 626 entity-sensor-data-scale node. 628 An node of this type SHOULD be defined together with nodes 629 of type entity-sensor-data-scale and 630 entity-sensor-precision. These three types are used to 631 identify the semantics of an node of type 632 entity-sensor-value."; 633 reference "RFC 3433: EntitySensorDataType"; 634 } 636 typedef entity-sensor-data-scale { 637 type enumeration { 638 enum yocto { 639 value 1; 640 description 641 "Data scaling factor of 10^-24."; 642 } 643 enum zepto { 644 value 2; 645 description 646 "Data scaling factor of 10^-21."; 647 } 648 enum atto { 649 value 3; 650 description 651 "Data scaling factor of 10^-18."; 652 } 653 enum femto { 654 value 4; 655 description 656 "Data scaling factor of 10^-15."; 657 } 658 enum pico { 659 value 5; 660 description 661 "Data scaling factor of 10^-12."; 662 } 663 enum nano { 664 value 6; 665 description 666 "Data scaling factor of 10^-9."; 667 } 668 enum micro { 669 value 7; 670 description 671 "Data scaling factor of 10^-6."; 673 } 674 enum milli { 675 value 8; 676 description 677 "Data scaling factor of 10^-3."; 678 } 679 enum units { 680 value 9; 681 description 682 "Data scaling factor of 10^0."; 683 } 684 enum kilo { 685 value 10; 686 description 687 "Data scaling factor of 10^3."; 688 } 689 enum mega { 690 value 11; 691 description 692 "Data scaling factor of 10^6."; 693 } 694 enum giga { 695 value 12; 696 description 697 "Data scaling factor of 10^9."; 698 } 699 enum tera { 700 value 13; 701 description 702 "Data scaling factor of 10^12."; 703 } 704 enum exa { 705 value 14; 706 description 707 "Data scaling factor of 10^15."; 708 } 709 enum peta { 710 value 15; 711 description 712 "Data scaling factor of 10^18."; 713 } 714 enum zetta { 715 value 16; 716 description 717 "Data scaling factor of 10^21."; 718 } 719 enum yotta { 720 value 17; 721 description 722 "Data scaling factor of 10^24."; 723 } 724 } 725 description 726 "An node using this data type represents a data scaling 727 factor, represented with an International System of Units (SI) 728 prefix. The actual data units are determined by examining an 729 node of this type together with the associated 730 entity-sensor-data-type. 732 An node of this type SHOULD be defined together with nodes 733 of type entity-sensor-data-type and entity-sensor-precision. 734 Together, associated nodes of these three types are used to 735 identify the semantics of an node of type 736 entity-sensor-value."; 737 reference "RFC 3433: EntitySensorDataScale"; 738 } 740 typedef entity-sensor-precision { 741 type int32 { 742 range "-8 .. 9"; 743 } 744 description 745 "An node using this data type represents a sensor 746 precision range. 748 An node of this type SHOULD be defined together with nodes 749 of type entity-sensor-data-type and entity-sensor-data-scale. 750 Together, associated nodes of these three types are used to 751 identify the semantics of an node of type 752 entity-sensor-value. 754 If an node of this type contains a value in the range 1 to 9, 755 it represents the number of decimal places in the fractional 756 part of an associated entity-sensor-value fixed- point number. 758 If an node of this type contains a value in the range -8 to 759 -1, it represents the number of accurate digits in the 760 associated entity-sensor-value fixed-point number. 762 The value zero indicates the associated entity-sensor-value 763 node is not a fixed-point number. 765 Server implementors must choose a value for the associated 766 entity-sensor-precision node so that the precision and 767 accuracy of the associated entity-sensor-value node is 768 correctly indicated. 770 For example, a physical entity representing a temperature 771 sensor that can measure 0 degrees to 100 degrees C in 0.1 772 degree increments, +/- 0.05 degrees, would have an 773 entity-sensor-precision value of '1', an 774 entity-sensor-data-scale value of 'units', and an 775 entity-sensor-value ranging from '0' to '1000'. The 776 entity-sensor-value would be interpreted as 'degrees C * 10'."; 777 reference "RFC 3433: EntitySensorPrecision"; 778 } 780 typedef entity-sensor-value { 781 type int32 { 782 range "-1000000000 .. 1000000000"; 783 } 784 description 785 "An node using this data type represents an Entity Sensor 786 value. 788 An node of this type SHOULD be defined together with nodes 789 of type entity-sensor-data-type, entity-sensor-data-scale, and 790 entity-sensor-precision. Together, associated nodes of those 791 three types are used to identify the semantics of an node of 792 this data type. 794 The semantics of an node using this data type are determined 795 by the value of the associated entity-sensor-data-type node. 797 If the associated entity-sensor-data-type node is equal to 798 'voltsAC', 'voltsDC', 'amperes', 'watts', 'hertz', 799 'celsius', or 'cmm', then an node of this type MUST 800 contain a fixed point number ranging from -999,999,999 to 801 +999,999,999. The value -1000000000 indicates an underflow 802 error. The value +1000000000 indicates an overflow error. The 803 entity-sensor-precision indicates how many fractional digits 804 are represented in the associated entity-sensor-value node. 806 If the associated entity-sensor-data-type node is equal to 807 'percentRH', then an node of this type MUST contain a 808 number ranging from 0 to 100. 810 If the associated entity-sensor-data-type node is equal to 811 'rpm', then an node of this type MUST contain a number 812 ranging from -999,999,999 to +999,999,999. 814 If the associated entity-sensor-data-type node is equal to 815 'truthvalue', then an node of this type MUST contain 816 either the value 1 (true) or the value 2 (false)'. 818 If the associated entity-sensor-data-type node is equal to 819 'other' or unknown', then an node of this type MUST 820 contain a number ranging from -1000000000 to 1000000000."; 821 reference "RFC 3433: EntitySensorValue"; 822 } 824 typedef entity-sensor-status { 825 type enumeration { 826 enum ok { 827 value 1; 828 description 829 "Indicates that the server can obtain the sensor value."; 830 } 831 enum unavailable { 832 value 2; 833 description 834 "Indicates that the server presently cannot obtain the 835 sensor value."; 836 } 837 enum nonoperational { 838 value 3; 839 description 840 "Indicates that the server believes the sensor is broken. 841 The sensor could have a hard failure (disconnected wire), 842 or a soft failure such as out-of-range, jittery, or wildly 843 fluctuating readings."; 844 } 845 } 846 description 847 "An node using this data type represents the operational 848 status of a physical sensor."; 849 reference "RFC 3433: EntitySensorStatus"; 850 } 852 /* 853 * Identities 854 */ 856 identity entity-physical-class { 857 description 858 "This identity is the base for all physical entity class 859 identifiers."; 860 } 862 /* 863 * Operational state data nodes 864 */ 866 container entity-state { 867 config false; 868 description 869 "Data nodes for the operational state of physical entities."; 871 leaf last-change { 872 type yang:date-and-time; 873 description 874 "The time the '/entity-state/physical-entity' list changed."; 875 } 877 list physical-entity { 878 key name; 879 description 880 "List of physical entities"; 881 reference "RFC 6933: entPhysicalEntry"; 883 leaf name { 884 type string; 885 description 886 "Administrative name assigned to this physical entity. 887 No restrictions apply. Not required to be the same as 888 entPhysicalName."; 889 } 891 leaf class { 892 type identityref { 893 base entity-physical-class; 894 } 895 mandatory true; 896 description 897 "An indication of the general hardware type 898 of the physical entity."; 899 reference "RFC 6933: entPhysicalClass"; 900 } 902 leaf physical-index { 903 if-feature entity-mib; 904 type int32 { 905 range "1..2147483647"; 906 } 907 description 908 "The entPhysicalIndex for the entPhysicalEntry represented 909 by this list entry."; 910 reference "RFC 6933: entPhysicalIndex"; 911 } 913 leaf description { 914 type string; 915 description 916 "A textual description of physical entity. This node 917 should contain a string that identifies the manufacturer's 918 name for the physical entity and should be set to a 919 distinct value for each version or model of the physical 920 entity."; 921 reference "RFC 6933: entPhysicalDescr"; 922 } 924 leaf-list contained-in { 925 type leafref { 926 path "../../physical-entity/name"; 927 } 928 description 929 "The name of the physical entity that 'contains' 930 this physical entity."; 931 reference "RFC 6933: entPhysicalContainedIn"; 932 } 934 leaf-list contains-child { 935 type leafref { 936 path "../../physical-entity/name"; 937 } 938 description 939 "The name of the contained physical entity."; 940 reference "RFC 6933: entPhysicalChildIndex"; 941 } 943 leaf parent-rel-pos { 944 type int32 { 945 range "0 .. 2147483647"; 946 } 947 description 948 "An indication of the relative position of this child 949 component among all its sibling components. Sibling 950 components are defined as physical entities that share the 951 same instance values of each of the contained-in 952 and class elements."; 953 reference "RFC 6933: entPhysicalParentRelPos"; 954 } 956 leaf hardware-rev { 957 type string; 958 description 959 "The vendor-specific hardware revision string for the 960 physical entity. The preferred value is the hardware 961 revision identifier actually printed on the component 962 itself (if present)."; 963 reference "RFC 6933: entPhysicalHardwareRev"; 964 } 966 leaf firmware-rev { 967 type string; 968 description 969 "The vendor-specific firmware revision string for the 970 physical entity."; 971 reference "RFC 6933: entPhysicalFirmwareRev"; 972 } 974 leaf software-rev { 975 type string; 976 description 977 "The vendor-specific software revision string for the 978 physical entity."; 979 reference "RFC 6933: entPhysicalSoftwareRev"; 980 } 982 leaf serial-num { 983 type string; 984 description 985 "The vendor-specific serial number string for the physical 986 entity. The preferred value is the serial number string 987 actually printed on the component itself (if present). 989 If a serial number has been configured for this entity in 990 /entity/physical-entity/serial-num, this node contains the 991 configured value."; 992 reference "RFC 6933: entPhysicalSerialNum"; 993 } 995 leaf mfg-name { 996 type string; 997 description 998 "The name of the manufacturer of this physical component. 999 The preferred value is the manufacturer name string 1000 actually printed on the component itself (if present). 1002 Note that comparisons between instances of the model-name, 1003 firmware-rev, software-rev, and the serial-num nodes are 1004 only meaningful amongst physical entities with the same 1005 value of mfg-name. 1007 If the manufacturer name string associated with the 1008 physical component is unknown to the server, then this 1009 node will contain a zero-length string."; 1011 reference "RFC 6933: entPhysicalMfgName"; 1012 } 1014 leaf model-name { 1015 type string; 1016 description 1017 "The vendor-specific model name identifier string associated 1018 with this physical component. The preferred value is the 1019 customer-visible part number, which may be printed on the 1020 component itself. 1022 If the model name string associated with the physical 1023 component is unknown to the server, then this node will 1024 contain a zero-length string."; 1025 reference "RFC 6933: entPhysicalModelName"; 1026 } 1028 leaf alias { 1029 type string { 1030 length "0 .. 32"; 1031 } 1032 description 1033 "An 'alias' name for the physical entity, as specified by 1034 a network manager, and provides a non-volatile 'handle' 1035 for the physical entity. 1037 If an alias has been configured for this entity in 1038 /entity/physical-entity/alias, this node contains the 1039 configured value. If no such alias has been configured, 1040 the server may set the value of this node to a locally 1041 unique value."; 1042 reference "RFC 6933: entPhysicalAlias"; 1043 } 1045 leaf asset-id { 1046 type string { 1047 length "0 .. 32"; 1048 } 1049 description 1050 "This node is a user-assigned asset tracking identifier 1051 (as specified by a network manager) for the physical entity 1052 and provides non-volatile storage of this information. 1054 If an asset tracking identifier has been configured for 1055 this entity in /entity/physical-entity/addet-id, this node 1056 contains the configured value."; 1057 reference "RFC 6933: entPhysicalAssetID"; 1058 } 1059 leaf is-fru { 1060 type boolean; 1061 description 1062 "This node indicates whether or not this physical entity 1063 is considered a 'field replaceable unit' by the vendor. If 1064 this node contains the value 'true', then this 1065 physical entity identifies a field replaceable unit. For 1066 all physical entities that represent components permanently 1067 contained within a field replaceable unit, the value 1068 'false' should be returned for this node."; 1069 reference "RFC 6933: entPhysicalIsFRU"; 1070 } 1072 leaf mfg-date { 1073 type yang:date-and-time; 1074 description 1075 "The date of manufacturing of the managed entity."; 1076 reference "RFC 6933: entPhysicalMfgDate"; 1077 } 1079 leaf-list uri { 1080 type inet:uri; 1081 description 1082 "This node contains identification information about the 1083 physical entity. 1085 If uris have been configured for this entity in 1086 /entity/physical-entity/uri, this node contains the 1087 configured values."; 1088 reference "RFC 6933: entPhysicalUris"; 1089 } 1091 leaf uuid { 1092 type yang:uuid; 1093 description 1094 "A Universally Unique Identifier of the physical entity."; 1095 reference "RFC 6933: entPhysicalUUID"; 1096 } 1098 container state { 1099 if-feature entity-state; 1100 description 1101 "State-related nodes"; 1102 reference "RFC 4268: Entity State MIB"; 1104 leaf state-last-changed { 1105 type yang:date-and-time; 1106 description 1107 "The date and time when the value of any of the 1108 admin-state, oper-state, usage-state, alarm-status, or 1109 standby-status changed for this entity. 1111 If there has been no change since the last 1112 re-initialization of the local system, this node contains 1113 the date and time of local system initialization. If 1114 there has been no change since the entity was added to 1115 the local system, this node contains the date and time of 1116 the insertion."; 1117 reference "RFC 4268: entStateLastChanged"; 1118 } 1120 leaf admin-state { 1121 type entity-admin-state; 1122 description 1123 "The administrative state for this entity. 1125 This node refers to an entities administrative permission 1126 to service both other entities within its containment 1127 hierarchy as well other users of its services defined by 1128 means outside the scope of this module. 1130 Some physical entities exhibit only a subset of the 1131 remaining administrative state values. Some entities 1132 cannot be locked, and hence this node exhibits only the 1133 'unlocked' state. Other entities cannot be shutdown 1134 gracefully, and hence this node does not exhibit the 1135 'shutting-down' state."; 1136 reference "RFC 4268: entStateAdmin"; 1137 } 1139 leaf oper-state { 1140 type entity-oper-state; 1141 description 1142 "The operational state for this entity. 1144 Note that this node does not follow the administrative 1145 state. An administrative state of down does not predict 1146 an operational state of disabled. 1148 Note that some implementations may not be able to 1149 accurately report oper-state while the admin-state node 1150 has a value other than 'unlocked'. In these cases, this 1151 node MUST have a value of 'unknown'."; 1152 reference "RFC 4268: entStateOper"; 1153 } 1154 leaf usage-state { 1155 type entity-usage-state; 1156 description 1157 "The usage state for this entity. 1159 This node refers to an entity's ability to service more 1160 physical entities in a containment hierarchy. 1162 Some entities will exhibit only a subset of the usage 1163 state values. Entities that are unable to ever service 1164 any entities within a containment hierarchy will always 1165 have a usage state of 'busy'. Some entities will only 1166 ever be able to support one entity within its containment 1167 hierarchy and will therefore only exhibit values of 1168 'idle' and 'busy'."; 1169 reference "RFC 4268, entStateUsage"; 1170 } 1172 leaf alarm-status { 1173 type entity-alarm-status; 1174 description 1175 "The alarm status for this entity. It does not include 1176 the alarms raised on child components within its 1177 containment hierarchy."; 1178 reference "RFC 4268: entStateAlarm"; 1179 } 1181 leaf standby-status { 1182 type entity-standby-status; 1183 description 1184 "The standby status for this entity. 1186 Some entities will exhibit only a subset of the 1187 remaining standby state values. If this entity 1188 cannot operate in a standby role, the value of this 1189 node will always be 'providing-service'."; 1190 reference "RFC 4268: entStateStandby"; 1191 } 1192 } 1194 container sensor-data { 1195 when 'derived-from-or-self(../class, 1196 "iana-entity", "sensor")' { 1197 description 1198 "Sensor data nodes present for any entity of type 1199 'sensor'"; 1200 } 1201 if-feature entity-sensor; 1202 description 1203 "Sensor-related nodes."; 1204 reference "RFC 3433: Entity Sensor MIB"; 1206 leaf data-type { 1207 type entity-sensor-data-type; 1208 description 1209 "The type of data units associated with the 1210 sensor value"; 1211 reference "RFC 3433: entPhySensorType"; 1212 } 1214 leaf data-scale { 1215 type entity-sensor-data-scale; 1216 description 1217 "The (power of 10) scaling factor associated 1218 with the sensor value"; 1219 reference "RFC 3433: entPhySensorScale"; 1220 } 1222 leaf precision { 1223 type entity-sensor-precision; 1224 description 1225 "The number of decimal places of precision 1226 associated with the sensor value"; 1227 reference "RFC 3433: entPhySensorPrecision"; 1228 } 1230 leaf value { 1231 type entity-sensor-value; 1232 description 1233 "The most recent measurement obtained by the server 1234 for this sensor."; 1235 reference "RFC 3433: entPhySensorValue"; 1236 } 1238 leaf oper-status { 1239 type entity-sensor-status; 1240 description 1241 "The operational status of the sensor."; 1242 reference "RFC 3433: entPhySensorOperStatus"; 1243 } 1245 leaf sensor-units-display { 1246 type string; 1247 description 1248 "A textual description of the data units that should be 1249 used in the display of the sensor value."; 1251 reference "RFC 3433: entPhySensorUnitsDisplay"; 1252 } 1254 leaf value-timestamp { 1255 type yang:date-and-time; 1256 description 1257 "The time the status and/or value of this sensor was 1258 last obtained by the server."; 1259 reference "RFC 3433: entPhySensorValueTimeStamp"; 1260 } 1262 leaf value-update-rate { 1263 type uint32; 1264 units "milliseconds"; 1265 description 1266 "An indication of the frequency that the server updates 1267 the associated 'value' node, representing in 1268 milliseconds. The value zero indicates: 1270 - the sensor value is updated on demand (e.g., 1271 when polled by the server for a get-request), 1272 - the sensor value is updated when the sensor 1273 value changes (event-driven), 1274 - the server does not know the update rate."; 1275 reference "RFC 3433: entPhySensorValueUpdateRate"; 1276 } 1277 } 1278 } 1279 } 1281 /* 1282 * Configuration data nodes 1283 */ 1285 container entity { 1286 if-feature entity-config; 1287 description 1288 "Configuration parameters for physical entities."; 1290 list physical-entity { 1291 key name; 1292 description 1293 "List of configuration data for physical entities."; 1295 leaf name { 1296 type string; 1297 description 1298 "Administrative name assigned to this physical entity. 1300 No restrictions apply."; 1301 } 1303 leaf serial-num { 1304 type string; 1305 description 1306 "The vendor-specific serial number string for the physical 1307 entity. The preferred value is the serial number string 1308 actually printed on the component itself (if present). 1310 This node is indented to be used for physical entities 1311 for which the server cannot determine the serial number."; 1312 reference "RFC 6933: entPhysicalSerialNum"; 1313 } 1315 leaf alias { 1316 type string { 1317 length "0 .. 32"; 1318 } 1319 description 1320 "This node is an 'alias' name for the physical entity, as 1321 specified by a network manager, and provides a non-volatile 1322 'handle' for the physical entity."; 1323 reference "RFC 6933: entPhysicalAlias"; 1324 } 1326 leaf asset-id { 1327 type string { 1328 length "0 .. 32"; 1329 } 1330 description 1331 "This node is a user-assigned asset tracking identifier 1332 (as specified by a network manager) for the physical 1333 entity"; 1334 reference "RFC 6933: entPhysicalAssetID"; 1335 } 1337 leaf-list uri { 1338 type inet:uri; 1339 description 1340 "This node contains identification information about the 1341 physical entity."; 1342 reference "RFC 6933: entPhysicalUris"; 1343 } 1345 leaf admin-state { 1346 if-feature entity-state; 1347 type entity-admin-state; 1348 description 1349 "The administrative state for this entity. 1351 This node refers to an entity's administrative 1352 permission to service both other entities within 1353 its containment hierarchy as well other users of 1354 its services defined by means outside the scope 1355 of this module. 1357 Some physical entities exhibit only a subset of the 1358 remaining administrative state values. Some entities 1359 cannot be locked, and hence this node exhibits only 1360 the 'unlocked' state. Other entities cannot be shutdown 1361 gracefully, and hence this node does not exhibit the 1362 'shutting-down' state."; 1363 reference "RFC 4268, entStateAdmin"; 1364 } 1365 } 1366 } 1368 /* 1369 * Notifications 1370 */ 1372 notification ent-config-change { 1373 description 1374 "An ent-config-change notification is generated when the value 1375 of /entity-state/last-change changes."; 1376 reference "RFC 6933, entConfigChange"; 1377 } 1379 notification ent-state-oper-enabled { 1380 if-feature entity-state; 1381 description 1382 "An ent-state-oper-enabled notification signifies that 1383 an entity has transitioned into the 'enabled' state."; 1385 leaf name { 1386 type leafref { 1387 path "/entity-state/physical-entity/name"; 1388 } 1389 description 1390 "The name of the entity that has transitioned into the 1391 'enabled' state."; 1392 } 1393 leaf admin-state { 1394 type leafref { 1395 path "/entity-state/physical-entity/state/admin-state"; 1397 } 1398 description 1399 "The administrative state for the entity."; 1400 } 1401 leaf alarm-status { 1402 type leafref { 1403 path "/entity-state/physical-entity/state/alarm-status"; 1404 } 1405 description 1406 "The alarm status for the entity."; 1407 } 1408 reference "RFC 4268, entStateOperEnabled"; 1409 } 1411 notification ent-state-oper-disabled { 1412 if-feature entity-state; 1413 description 1414 "An ent-state-oper-disabled notification signifies that 1415 an entity has transitioned into the 'disabled' state."; 1417 leaf name { 1418 type leafref { 1419 path "/entity-state/physical-entity/name"; 1420 } 1421 description 1422 "The name of the entity that has transitioned into the 1423 'disabled' state."; 1424 } 1425 leaf admin-state { 1426 type leafref { 1427 path "/entity-state/physical-entity/state/admin-state"; 1428 } 1429 description 1430 "The administrative state for the entity."; 1431 } 1432 leaf alarm-status { 1433 type leafref { 1434 path "/entity-state/physical-entity/state/alarm-status"; 1435 } 1436 description 1437 "The alarm status for the entity."; 1438 } 1439 reference "RFC 4268, entStateOperDisabled"; 1440 } 1442 } 1444 1445 Move this to a separate document?: 1447 file "iana-entity@2016-05-13.yang" 1449 module iana-entity { 1450 namespace "urn:ietf:params:xml:ns:yang:iana-entity"; 1451 prefix ianaent; 1453 import ietf-entity { 1454 prefix ent; 1455 } 1457 organization "IANA"; 1458 contact 1459 " Internet Assigned Numbers Authority 1461 Postal: ICANN 1462 4676 Admiralty Way, Suite 330 1463 Marina del Rey, CA 90292 1465 Tel: +1 310 823 9358 1466 "; 1468 description 1469 "IANA defined identities for physical class."; 1470 reference 1471 "https://www.iana.org/assignments/ianaentity-mib/ianaentity-mib"; 1473 // RFC Ed.: replace XXXX with actual RFC number and remove this 1474 // note. 1476 // RFC Ed.: update the date below with the date of RFC publication 1477 // and remove this note. 1478 revision 2016-05-13 { 1479 description 1480 "Initial revision."; 1481 reference 1482 "RFC XXXX: A YANG Data Model for Entity Management"; 1483 } 1485 identity unknown { 1486 base ent:entity-physical-class; 1487 description 1488 "This identity is applicable if the physical entity class 1489 is unknown to the server."; 1490 } 1491 identity chassis { 1492 base ent:entity-physical-class; 1493 description 1494 "This identity is applicable if the physical entity class 1495 is an overall container for networking equipment. Any class of 1496 physical entity, except a stack, may be contained within a 1497 chassis; a chassis may only be contained within a stack."; 1498 } 1500 identity backplane { 1501 base ent:entity-physical-class; 1502 description 1503 "This identity is applicable if the physical entity class 1504 is some sort of device for aggregating and forwarding 1505 networking traffic, such as a shared backplane in a modular 1506 ethernet switch. Note that an implementation may model a 1507 backplane as a single physical entity, which is actually 1508 implemented as multiple discrete physical components (within a 1509 chassis or stack)."; 1510 } 1512 identity container { 1513 base ent:entity-physical-class; 1514 description 1515 "This identity is applicable if the physical entity class 1516 is capable of containing one or more removable physical 1517 entities, possibly of different types. For example, each 1518 (empty or full) slot in a chassis will be modeled as a 1519 container. Note that all removable physical entities should be 1520 modeled within a container entity, such as field-replaceable 1521 modules, fans, or power supplies. Note that all known 1522 containers should be modeled by the agent, including empty 1523 containers."; 1524 } 1526 identity power-supply { 1527 base ent:entity-physical-class; 1528 description 1529 "This identity is applicable if the physical entity class 1530 is a power-supplying component."; 1531 } 1533 identity fan { 1534 base ent:entity-physical-class; 1535 description 1536 "This identity is applicable if the physical entity class 1537 is a fan or other heat-reduction component."; 1538 } 1539 identity sensor { 1540 base ent:entity-physical-class; 1541 description 1542 "This identity is applicable if the physical entity class 1543 is some sort of sensor, such as a temperature sensor within a 1544 router chassis."; 1545 } 1547 identity module { 1548 base ent:entity-physical-class; 1549 description 1550 "This identity is applicable if the physical entity class 1551 is some sort of self-contained sub-system. If a 'module' 1552 entity is removable, then it should be modeled within a 1553 container entity; otherwise, it should be modeled directly 1554 within another physical entity (e.g., a chassis or another 1555 module)."; 1556 } 1558 identity port { 1559 base ent:entity-physical-class; 1560 description 1561 "This identity is applicable if the physical entity class 1562 is some sort of networking port, capable of receiving and/or 1563 transmitting networking traffic."; 1564 } 1566 identity stack { 1567 base ent:entity-physical-class; 1568 description 1569 "This identity is applicable if the physical entity class 1570 is some sort of super-container (possibly virtual) intended to 1571 group together multiple chassis entities. A stack may be 1572 realized by a 'virtual' cable, a real interconnect cable 1573 attached to multiple chassis, or multiple interconnect cables. 1574 A stack should not be modeled within any other physical 1575 entities, but a stack may be contained within another stack. 1576 Only chassis entities should be contained within a stack."; 1577 } 1579 identity cpu { 1580 base ent:entity-physical-class; 1581 description 1582 "This identity is applicable if the physical entity class 1583 is some sort of central processing unit."; 1584 } 1586 identity energy-object { 1587 base ent:entity-physical-class; 1588 description 1589 "This identity is applicable if the physical entity class 1590 is some sort of energy object, i.e., a piece of equipment that 1591 is part of or attached to a communications network that is 1592 monitored, controlled, or aids in the management of another 1593 device for Energy Management."; 1594 } 1596 identity battery { 1597 base ent:entity-physical-class; 1598 description 1599 "This identity is applicable if the physical entity class 1600 is some sort of battery."; 1601 } 1603 identity storage-drive { 1604 base ent:entity-physical-class; 1605 description 1606 "This identity is applicable if the physical entity class 1607 is some sort of entity with data storage capability as main 1608 functionality, e.g., disk drive (HDD), solid state device 1609 (SSD), hybrid (SSHD), object storage (OSD) or other."; 1610 } 1611 } 1613 1615 8. IANA Considerations 1617 This document registers a URI in the IETF XML registry [RFC3688]. 1618 Following the format in RFC 3688, the following registration is 1619 requested to be made. 1621 URI: TBD 1623 Registrant Contact: The IESG. 1625 XML: N/A, the requested URI is an XML namespace. 1627 This document registers a YANG module in the YANG Module Names 1628 registry [RFC6020]. 1630 name: ietf-entity 1631 namespace: TBD 1632 prefix: ent 1633 reference: RFC XXXX 1635 9. Security Considerations 1637 TBD 1639 10. Acknowledgements 1641 TBD 1643 11. Normative References 1645 [I-D.ietf-netmod-rfc6020bis] 1646 Bjorklund, M., "The YANG 1.1 Data Modeling Language", 1647 draft-ietf-netmod-rfc6020bis-12 (work in progress), April 1648 2016. 1650 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1651 Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/ 1652 RFC2119, March 1997, 1653 . 1655 [RFC3433] Bierman, A., Romascanu, D., and K. Norseth, "Entity Sensor 1656 Management Information Base", RFC 3433, DOI 10.17487/ 1657 RFC3433, December 2002, 1658 . 1660 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 1661 DOI 10.17487/RFC3688, January 2004, 1662 . 1664 [RFC4268] Chisholm, S. and D. Perkins, "Entity State MIB", RFC 4268, 1665 DOI 10.17487/RFC4268, November 2005, 1666 . 1668 [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for 1669 the Network Configuration Protocol (NETCONF)", RFC 6020, 1670 DOI 10.17487/RFC6020, October 2010, 1671 . 1673 [RFC6933] Bierman, A., Romascanu, D., Quittek, J., and M. 1674 Chandramouli, "Entity MIB (Version 4)", RFC 6933, DOI 1675 10.17487/RFC6933, May 2013, 1676 . 1678 Authors' Addresses 1679 Andy Bierman 1680 YumaWorks 1682 Email: andy@yumaworks.com 1684 Martin Bjorklund 1685 Tail-f Systems 1687 Email: mbj@tail-f.com 1689 Jie Dong 1690 Huawei Technologies 1692 Email: jie.dong@huawei.com 1694 Dan Romascanu 1695 Avaya 1697 Email: dromasca@avaya.com