idnits 2.17.1 draft-ietf-ccamp-mw-yang-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 == Line 171 has weird spacing: '...ections uni...' -- The document date (April 22, 2017) is 2561 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) ** Obsolete normative reference: RFC 7223 (Obsoleted by RFC 8343) -- Obsolete informational reference (is this intentional?): RFC 6536 (Obsoleted by RFC 8341) Summary: 1 error (**), 0 flaws (~~), 2 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 CCAMP J. Ahlberg 2 Internet Draft Ericsson 3 Intended status: Standards Track M. Ye 4 Huawei 5 X. Li 6 NEC Laboratories Europe 7 K. Kawada 8 NEC Corporation 9 CJ. Bernardos 10 UC3M 11 Expires: October 2017 April 22, 2017 13 A YANG Data Model for Microwave Radio Link 15 draft-ietf-ccamp-mw-yang-00 17 Abstract 19 This document defines a YANG data model in order to 20 control and manage the radio link interfaces, and the 21 connectivity to packet (typically Ethernet) interfaces 22 in a microwave/millimeter wave node. 24 Status of this Memo 26 This Internet-Draft is submitted in full conformance 27 with the provisions of BCP 78 and BCP 79. 29 Internet-Drafts are working documents of the Internet 30 Engineering Task Force (IETF). Note that other groups 31 may also distribute working documents as Internet- 32 Drafts. The list of current Internet-Drafts is at 33 http://datatracker.ietf.org/drafts/current/. 35 Internet-Drafts are draft documents valid for a maximum 36 of six months and may be updated, replaced, or obsoleted 37 by other documents at any time. It is inappropriate to 38 use Internet-Drafts as reference material or to cite 39 them other than as "work in progress." 41 This Internet-Draft will expire on October 22, 2017. 43 Copyright Notice 45 Copyright (c) 2016 IETF Trust and the persons identified 46 as the document authors. All rights reserved. 48 This document is subject to BCP 78 and the IETF Trust's 49 Legal Provisions Relating to IETF Documents 50 (http://trustee.ietf.org/license-info) in effect on the 51 date of publication of this document. Please review 52 these documents carefully, as they describe your rights 53 and restrictions with respect to this document. Code 54 Components extracted from this document must include 55 Simplified BSD License text as described in Section 4.e 56 of the Trust Legal Provisions and are provided without 57 warranty as described in the Simplified BSD License. 59 Table of Contents 61 1. Terminology and Definitions ........................2 62 2. Introduction........................................3 63 3. YANG Data Model (Tree Structure)....................3 64 4. YANG Module.........................................7 65 5. Security Considerations ...........................63 66 6. IANA Considerations ...............................63 67 7. References.........................................63 68 7.1. Normative References .........................63 69 7.2. Informative References .......................63 71 1. Terminology and Definitions 73 The following terms are used in this document: 75 Carrier Termination (CT) is an interface for the 76 capacity provided over the air by a single carrier. It 77 is typically defined by its transmitting and receiving 78 frequencies. 80 Radio Link Terminal (RLT) is an interface providing 81 packet capacity and/or TDM capacity to the associated 82 Ethernet and/or TDM interfaces in a node and used for 83 setting up a transport service over a 84 microwave/millimeter wave link. 86 The following acronyms are used in this document: 87 ACM Adaptive Coding Modulation 88 ATPC Automatic Transmit Power Control 89 CM Coding Modulation 90 CT Carrier Termination 91 RLT Radio Link Terminal 92 RTPC Remote Transmit Power Control 93 XPIC Cross Polarization Interference Cancellation 94 MIMO Multiple-Input Multiple-Output 96 2. Introduction 98 This document defines a YANG data model for management 99 and control of the radio link interface(s) and the 100 relationship to packet (typically Ethernet) and/or TDM 101 interfaces in a microwave/millimeter wave node. The date 102 model includes configuration and state data. 104 The design of the data model follows the framework for 105 management and control of microwave and millimeter wave 106 interface parameters defined in [mw-fmwk]. This 107 framework identifies the need and the scope of the YANG 108 data model, the use cases and requirements that the 109 model needs to support. Moreover, it provides a detailed 110 gap analysis to identify the missing parameters and 111 functionalities of the existing and established models 112 to support the specified use cases and requirements, and 113 based on that recommends how the gaps should be filled 114 with the development of the new model. 116 According to the conclusion of the gap analysis, the 117 structure of the data model is based on the structure 118 defined in [I-D.ahlberg-ccamp-microwave-radio-link] and 119 it augments RFC 7223 to align with the same structure 120 for management of the packet interfaces. More 121 specifically, the model will include interface layering 122 to manage the capacity provided by a radio link terminal 123 for the associated Ethernet and TDM interfaces, using 124 the principles for interface layering described in RFC 125 7223 as a basis. 127 The designed YANG data model uses the IETF: Radio Link 128 Model [I-D.ahlberg-ccamp-microwave-radio-link] and the 129 ONF: Microwave Modeling [ONF-model] as the basis for the 130 definition of the detailed leafs/parameters, and 131 proposes new ones to cover identified gaps which are 132 analyzed in [mw-fmwk]. 134 3. YANG Data Model (Tree Structure) 135 module: ietf-microwave-radio-link 136 +--rw radio-link-protection-groups 137 | +--rw radio-link-protection-group* [name] 138 | +--rw name string 139 | +--rw protection-architecture-type? identityref 140 | +--rw protection-operation-type? enumeration 141 | +--rw working-entity* if:interface-ref 142 | +--rw revertive-wait-to-restore? uint16 143 | +--rw radio-link-protection-members* if:interface-ref 144 | +---x protection-external-commands 145 | +---w input 146 | +---w protection-external-command? identityref 147 +--ro radio-link-protection-groups-state 148 | +--ro radio-link-protection-group* [name] 149 | +--ro name string 150 | +--ro protection-status? identityref 151 +--rw xpic-pairs {xpic}? 152 | +--rw xpic-pair* [name] 153 | +--rw name string 154 | +--rw enabled? boolean 155 | +--rw xpic-members* if:interface-ref 156 +--rw mimo-groups {mimo}? 157 +--rw mimo-group* [name] 158 +--rw name string 159 +--rw enabled? boolean 160 +--rw mimo-members* if:interface-ref 161 augment /if:interfaces/if:interface: 162 +--rw id? string 163 +--rw mode identityref 164 +--rw carrier-terminations* if:interface-ref 165 +--rw rlp-groups* -> /radio-link-protection-groups 166 /radio-link-protection-group/name 167 +--rw xpic-pairs* -> /xpic-pairs/xpic-pair/name {xpic}? 168 +--rw mimo-group? -> /mimo-groups/mimo-group/name {mimo}? 169 +--rw tdm-connections* [tdm-type] {tdm}? 170 +--rw tdm-type identityref 171 +--rw tdm-connections unit16 172 augment /if:interfaces/if:interface: 173 +--rw carrier-id? string 174 +--rw tx-enabled? boolean 175 +--rw tx-frequency uint32 176 +--rw rx-frequency? uint32 177 +--rw rx-frequency-config? boolean 178 +--rw duplex-distance uint32 179 +--rw channel-separation decimal64 180 +--rw polarization? enumeration 181 +--rw power-mode enumeration 182 +--rw selected-output-power power 183 +--rw atpc-lower-threshold power 184 +--rw atpc-upper-threshold power 185 +--rw coding-modulation-mode enumeration 186 +--rw selected-cm identityref 187 +--rw selected-min-acm identityref 188 +--rw selected-max-acm identityref 189 +--rw if-loop? enumeration 190 +--rw rf-loop? enumeration 191 +--rw ct-performance-thresholds 192 +--rw received-level-alarm-threshold? power 193 +--rw transmitted-level-alarm-threshold? power 194 +--rw ber-alarm-threshold? enumeration 195 augment /if:interfaces-state/if:interface: 196 +--ro tx-oper-status? enumeration 197 +--ro actual-transmitted-level? power 198 +--ro actual-received-level? power 199 +--ro actual-tx-cm? identityref 200 +--ro actual-snir? decimal64 201 +--ro actual-xpi? decimal64 {xpic}? 202 +--ro capabilities 203 +--ro min-tx-frequency? uint32 204 +--ro max-tx-frequency? uint32 205 +--ro min-rx-frequency? uint32 206 +--ro max-rx-frequency? uint32 207 +--ro available-min-output-power? power 208 +--ro available-max-output-power? power 209 +--ro available-min-acm? identityref 210 +--ro available-max-acm? identityref 211 augment /if:interfaces-state/if:interface/if:statistics: 212 +--ro bbe? yang:counter32 213 +--ro es? yang:counter32 214 +--ro ses? yang:counter32 215 +--ro uas? yang:counter32 216 +--ro min-rltm? power 217 +--ro max-rltm? power 218 +--ro min-tltm? power 219 +--ro max-tltm? power 221 4. YANG Module 223 file "ietf-microwave-radio-link.yang" 225 module ietf-microwave-radio-link { 226 yang-version 1.1; 227 namespace "urn:ietf:params:xml:ns:yang:ietf-microwave-radio-link"; 228 prefix mrl; 230 import ietf-yang-types { 231 prefix yang; 232 } 234 import ietf-interfaces { 235 prefix if; 236 } 238 import iana-if-type { 239 prefix ianaift; 240 } 242 organization 243 "IETF CCAMP Working Group"; 244 contact 245 "jonas.ahlberg@ericsson.com 246 amy.yemin@huawei.com 247 Xi.Li@neclab.eu 248 cjbc@it.uc3m.es 249 k-kawada@ah.jp.nec.com"; 251 description 252 "This is a module for the entities in a generic 253 microwave system."; 255 revision 2016-12-22 { 256 description 257 "Draft revision covering a complete scope for 258 configuration and state data for radio link 259 interfaces."; 261 reference ""; 262 } 263 revision 2016-10-29 { 264 description 265 "Draft revision."; 266 reference ""; 267 } 269 /* 270 * Features 271 */ 273 feature xpic { 274 description 275 "Indicates that the device supports XPIC."; 276 } 278 feature mimo { 279 description 280 "Indicates that the device supports MIMO."; 281 } 283 feature tdm { 284 description 285 "Indicates that the device supports TDM."; 286 } 288 /* 289 * Interface identities 290 */ 292 identity radio-link-terminal { 293 base ianaift:iana-interface-type; 294 description 295 "Interface identity for a radio link terminal."; 296 } 298 identity carrier-termination { 299 base ianaift:iana-interface-type; 300 description 301 "Interface identity for a carrier termination."; 302 } 304 /* 305 * Radio-link-terminal mode identities 306 */ 307 identity rlt-mode { 308 description 309 "A description of the mode in which the radio 310 link terminal is configured. The format is X 311 plus Y. X represent the number of bonded 312 carrier terminations. Y represent the number 313 of protecting carrier terminations."; 314 } 316 identity one-plus-zero { 317 base rlt-mode; 318 description 319 "1 carrier termination only."; 320 } 322 identity one-plus-one { 323 base rlt-mode; 324 description 325 "1 carrier termination 326 and 1 protecting carrier termination."; 327 } 329 identity two-plus-zero { 330 base rlt-mode; 331 description 332 "2 bonded carrier terminations."; 333 } 335 /* 336 * Coding and modulation identities 337 */ 339 identity coding-modulation { 340 description 341 "The coding and modulation schemes."; 342 } 344 identity half-bpsk-strong { 345 base coding-modulation; 346 description 347 "Half BPSK strong coding and modulation scheme."; 348 } 349 identity half-bpsk { 350 base coding-modulation; 351 description 352 "Half BPSK coding and modulation scheme."; 353 } 355 identity half-bpsk-light { 356 base coding-modulation; 357 description 358 "Half BPSK light coding and modulation scheme."; 359 } 361 identity bpsk-strong { 362 base coding-modulation; 363 description 364 "BPSK strong coding and modulation scheme."; 365 } 367 identity bpsk { 368 base coding-modulation; 369 description 370 "BPSK coding and modulation scheme."; 371 } 373 identity bpsk-light { 374 base coding-modulation; 375 description 376 "BPSK light coding and modulation scheme."; 377 } 379 identity qpsk { 380 base coding-modulation; 381 description 382 "QPSK coding and modulation scheme."; 383 } 385 identity qam-4-strong { 386 base coding-modulation; 387 description 388 "4 QAM strong coding and modulation scheme."; 389 } 391 identity qam-4 { 392 base coding-modulation; 393 description 394 "4 QAM coding and modulation scheme."; 395 } 396 identity qam-4-light { 397 base coding-modulation; 398 description 399 "4 QAM light coding and modulation scheme."; 400 } 402 identity qam-16-strong { 403 base coding-modulation; 404 description 405 "16 QAM strong coding and modulation scheme."; 406 } 408 identity qam-16 { 409 base coding-modulation; 410 description 411 "16 QAM coding and modulation scheme."; 412 } 414 identity qam-16-light { 415 base coding-modulation; 416 description 417 "16 QAM light coding and modulation scheme."; 418 } 420 identity qam-32-strong { 421 base coding-modulation; 422 description 423 "32 QAM strong coding and modulation scheme."; 424 } 426 identity qam-32 { 427 base coding-modulation; 428 description 429 "32 QAM coding and modulation scheme."; 430 } 432 identity qam-32-light { 433 base coding-modulation; 434 description 435 "32 QAM light coding and modulation scheme."; 436 } 438 identity qam-64-strong { 439 base coding-modulation; 440 description 441 "64 QAM strong coding and modulation scheme."; 442 } 443 identity qam-64 { 444 base coding-modulation; 445 description 446 "64 QAM coding and modulation scheme."; 447 } 449 identity qam-64-light { 450 base coding-modulation; 451 description 452 "64 QAM light coding and modulation scheme."; 453 } 455 identity qam-128-strong { 456 base coding-modulation; 457 description 458 "128 QAM strong coding and modulation scheme."; 459 } 461 identity qam-128 { 462 base coding-modulation; 463 description 464 "128 QAM coding and modulation scheme."; 465 } 467 identity qam-128-light { 468 base coding-modulation; 469 description 470 "128 QAM light coding and modulation scheme."; 471 } 473 identity qam-256-strong { 474 base coding-modulation; 475 description 476 "256 QAM strong coding and modulation scheme."; 477 } 479 identity qam-256 { 480 base coding-modulation; 481 description 482 "256 QAM coding and modulation scheme."; 483 } 485 identity qam-256-light { 486 base coding-modulation; 487 description 488 "256 QAM light coding and modulation scheme."; 489 } 490 identity qam-512-strong { 491 base coding-modulation; 492 description 493 "512 QAM strong coding and modulation scheme."; 494 } 496 identity qam-512 { 497 base coding-modulation; 498 description 499 "512 QAM coding and modulation scheme."; 500 } 502 identity qam-512-light { 503 base coding-modulation; 504 description 505 "512 QAM light coding and modulation scheme."; 506 } 508 identity qam-1024-strong { 509 base coding-modulation; 510 description 511 "1024 QAM strong coding and modulation scheme."; 512 } 514 identity qam-1024 { 515 base coding-modulation; 516 description 517 "1024 QAM coding and modulation scheme."; 518 } 520 identity qam-1024-light { 521 base coding-modulation; 522 description 523 "1024 QAM light coding and modulation scheme."; 524 } 526 identity qam-2048-strong { 527 base coding-modulation; 528 description 529 "2048 QAM strong coding and modulation scheme."; 530 } 532 identity qam-2048 { 533 base coding-modulation; 534 description 535 "2048 QAM coding and modulation scheme."; 536 } 537 identity qam-2048-light { 538 base coding-modulation; 539 description 540 "2048 QAM light coding and modulation scheme."; 541 } 543 identity qam-4096-strong { 544 base coding-modulation; 545 description 546 "4096 QAM strong coding and modulation scheme."; 547 } 549 identity qam-4096 { 550 base coding-modulation; 551 description 552 "4096 QAM coding and modulation scheme."; 553 } 555 identity qam-4096-light { 556 base coding-modulation; 557 description 558 "4096 QAM light coding and modulation scheme."; 559 } 561 /* 562 * Protection architecture type identities 563 */ 564 identity protection-architecture-type { 565 description 566 "protection architecture type"; 567 } 569 identity one-plus-one-type { 570 base protection-architecture-type; 571 description 572 "One carrier termination and 573 one protecting carrier termination."; 574 } 576 identity one-to-n-type { 577 base protection-architecture-type; 578 description 579 "One carrier termination protecting 580 n other carrier terminations."; 581 } 582 /* 583 * Protection states identities 584 */ 586 identity protection-states { 587 description 588 "Identities describing the status of the protection, 589 in a group of carrier terminations configured in 590 a radio link protection mode."; 591 } 593 identity unprotected { 594 base protection-states; 595 description "Not protected"; 596 } 598 identity protected { 599 base protection-states; 600 description "Protected"; 601 } 603 identity unable-to-protect { 604 base protection-states; 605 description "Unable to protect"; 606 } 608 /* 609 * protection-external-commands identities 610 */ 612 identity protection-external-commands{ 613 description 614 "Protection external commands for trouble shooting 615 purpose."; 616 } 618 identity manual-switch{ 619 base protection-external-commands; 620 description 621 "A switch action initiated by an operator command. 622 It switches normal traffic signal to the protection 623 transport entity."; 624 } 625 /* 626 * TDM-type identities 627 */ 628 identity tdm-type { 629 description 630 "A description of the type of TDM connection, 631 also indicating the supported capacity of the 632 connection."; 633 } 635 identity E1 { 636 base tdm-type; 637 description 638 "E1 connection, 2,048 Mbit/s."; 639 } 641 identity STM-1 { 642 base tdm-type; 643 description 644 "STM-1 connection, 155,52 Mbit/s."; 645 } 647 /* 648 * Typedefs 649 */ 650 typedef power { 651 type decimal64 { 652 fraction-digits 1; 653 } 654 description 655 "Type used for power values, selected and measured."; 656 } 658 /* 659 * Radio Link Terminal (RLT) - Configuration data nodes 660 */ 661 augment "/if:interfaces/if:interface" { 662 when "if:type = 'mrl:radio-link-terminal'"; 663 description 664 "Addition of data nodes for radio link terminal to 665 the standard Interface data model, for interfaces of 666 the type 'radio-link-terminal'."; 668 leaf id { 669 type string; 670 default ""; 671 description 672 "ID of the radio link terminal. Used by far-end when 673 checking that it's connected to the correct RLT."; 674 } 676 leaf mode { 677 type identityref { 678 base rlt-mode; 679 } 680 mandatory true; 681 description 682 "A description of the mode in which the radio link 683 terminal is configured. The format is X plus Y. 684 X represent the number of bonded carrier terminations. 685 Y represent the number of protecting carrier 686 terminations."; 687 } 689 leaf-list carrier-terminations { 690 type if:interface-ref; 691 must "/if:interfaces/if:interface[if:name = current()]" 692 + "/if:type = 'mrl:carrier-termination'" { 693 description 694 "The type of interface must be 695 'carrier-termination'."; 696 } 697 min-elements 1; 698 description 699 "A list of references to carrier terminations 700 included in the radio link terminal."; 701 } 703 leaf-list rlp-groups { 704 type leafref { 705 path "/mrl:radio-link-protection-groups/" 706 + "mrl:radio-link-protection-group/mrl:name"; 707 } 708 description 709 "A list of references to the carrier termination 710 groups configured for radio link protection in this 711 radio link terminal."; 712 } 713 leaf-list xpic-pairs { 714 if-feature xpic; 715 type leafref { 716 path "/mrl:xpic-pairs/mrl:xpic-pair/mrl:name"; 717 } 718 description 719 "A list of references to the XPIC pairs used in this 720 radio link terminal. One pair can be used by two 721 terminals."; 722 } 724 leaf mimo-group { 725 if-feature mimo; 726 type leafref { 727 path "/mrl:mimo-groups/mrl:mimo-group/mrl:name"; 728 } 729 description 730 "A reference to the MIMO group used in this 731 radio link terminal. One group can be used by more 732 than one terminal."; 733 } 735 list tdm-connections { 736 if-feature tdm; 737 key "tdm-type"; 738 description 739 "A list stating the number of TDM connections of a 740 specified tdm-type that is supported by the RLT."; 741 leaf tdm-type { 742 type identityref { 743 base tdm-type; 744 } 745 description 746 "The type of TDM connection, which also indicates 747 the supported capacity."; 748 } 750 leaf tdm-connections { 751 type uint16; 752 mandatory true; 753 description "Number of connections of the specified type."; 754 } 755 } 756 } 757 /* 758 * Carrier Termination - Configuration data nodes 759 */ 761 augment "/if:interfaces/if:interface" { 762 when "if:type = 'mrl:carrier-termination'"; 763 description 764 "Addition of data nodes for carrier termination to 765 the standard Interface data model, for interfaces 766 of the type 'carrier-termination'."; 767 leaf carrier-id { 768 type string; 769 default "A"; 770 description 771 "ID of the carrier. (e.g. A, B, C or D) 772 Used in XPIC & MIMO configurations to check that 773 the carrier termination is connected to the correct 774 far-end carrier termination. Should be the same 775 carrier ID on both sides of the hop. 776 Defaulted when not MIMO or XPIC."; 777 } 779 leaf tx-enabled { 780 type boolean; 781 default "false"; 782 description 783 " Disables (false) or enables (true) the 784 transmitter.Only applicable when the interface 785 is enabled (interface:enabled = true) otherwise 786 it's always disabled."; 787 } 789 leaf tx-frequency { 790 type uint32; 791 units "kHz"; 792 mandatory true; 793 description 794 "Selected transmitter frequency."; 795 } 796 leaf rx-frequency { 797 type uint32; 798 units "kHz"; 799 description 800 "Selected receiver frequency. 801 Mandatory and writeable when rx-frequency-config=true. 802 Otherwise read-only and calculated from tx-frequency 803 and duplex-distance."; 804 } 806 leaf rx-frequency-config { 807 type boolean; 808 default "true"; 809 description 810 "Enable (true) or disable (false) direct 811 configuration of rx-frequency and instead 812 using a defined duplex distance."; 813 } 815 leaf duplex-distance { 816 when "../rx-frequency-config = 'false'"; 817 type uint32; 818 units "kHz"; 819 mandatory true; 820 description 821 "Distance between Tx & Rx frequencies. 822 Used to calaculate rx-frequency when 823 rx-frequency-config=false."; 824 } 826 leaf channel-separation { 827 type decimal64 { 828 fraction-digits 1; 829 } 830 units "MHz"; 831 mandatory true; 832 description 833 "The amount of bandwidth allocated to a carrier."; 834 } 836 leaf polarization { 837 type enumeration { 838 enum "horizontal" { 839 description "Horizontal polarization."; 840 } 841 enum "vertical" { 842 description "Vertical polarization."; 843 } 844 enum "not-specified" { 845 description "Polarization not specified."; 846 } 847 } 848 default "not-specified"; 849 description 850 "Polarization - A textual description for info only."; 851 } 853 leaf power-mode { 854 type enumeration { 855 enum rtpc { 856 description "Remote Transmit Power Control (RTPC)."; 857 } 858 enum atpc { 859 description "Automatic Transmit Power Contro 860 (ATPC)."; 861 } 862 } 863 mandatory true; 864 description 865 "A choice of Remote Transmit Power Control (RTPC) 866 or Automatic Transmit Power Control (ATPC)."; 867 } 869 leaf selected-output-power { 870 type power { 871 range "-99..40"; 872 } 873 units "dBm"; 874 mandatory true; 875 description 876 "Selected output power in RTPC mode and selected 877 maximum selected maximum output power in ATPC mode. 878 Minimum ouput power in ATPC mode is the same as the 879 system capability, available-min-output-power."; 880 } 882 leaf atpc-lower-threshold { 883 when "../power-mode = 'atpc'"; 884 type power { 885 range "-99..-30"; 886 } 887 units "dBm"; 888 mandatory true; 889 description 890 "The lower threshold for the input power at far-end used in 891 the ATPC mode."; 892 } 894 leaf atpc-upper-threshold { 895 when "../power-mode = 'atpc'"; 896 type power { 897 range "-99..-30"; 898 } 899 units "dBm"; 900 mandatory true; 901 description 902 "The upper threshold for the input power 903 at far-end used in the ATPC mode."; 904 } 906 leaf coding-modulation-mode { 907 type enumeration { 908 enum fixed { 909 description "Fixed coding/modulation."; 910 } 911 enum adaptive { 912 description "Adaptive coding/modulation."; 913 } 914 } 915 mandatory true; 916 description 917 "A selection of fixed or 918 adaptive coding/modulation mode."; 919 } 921 leaf selected-cm { 922 when "../coding-modulation-mode = 'fixed'"; 923 type identityref { 924 base coding-modulation; 925 } 926 mandatory true; 927 description 928 "Selected fixed coding/modulation."; 929 } 930 leaf selected-min-acm { 931 when "../coding-modulation-mode = 'adaptive'"; 932 type identityref { 933 base coding-modulation; 934 } 935 mandatory true; 936 description 937 "Selected minimum coding/modulation. 938 Adaptive coding/modulation shall not go 939 below this value."; 940 } 942 leaf selected-max-acm { 943 when "../coding-modulation-mode = 'adaptive'"; 944 type identityref { 945 base coding-modulation; 946 } 947 mandatory true; 948 description 949 "Selected maximum coding/modulation. 950 Adaptive coding/modulation shall not go 951 above this value."; 952 } 954 leaf if-loop { 955 type enumeration { 956 enum disabled { 957 description "Disables the IF Loop."; 958 } 959 enum client { 960 description "Loops the signal back to the client side."; 961 } 962 enum radio { 963 description "Loops the signal back to the radio side."; 964 } 965 } 966 default "disabled"; 967 description 968 "Enable (client/radio) or disable (disabled) the IF loop, 969 which loops the signal back to the client side or the 970 radio side."; 971 } 972 leaf rf-loop { 973 type enumeration { 974 enum disabled { 975 description "Disables the RF Loop."; 976 } 977 enum client { 978 description "Loops the signal back to the client side."; 979 } 980 enum radio { 981 description "Loops the signal back to the radio side."; 982 } 983 } 984 default "disabled"; 985 description 986 "Enable (client/radio) or disable (disabled) the RF loop, 987 which loops the signal back to the client side or 988 the radio side."; 989 } 991 container ct-performance-thresholds { 992 description 993 "Specification of thresholds for when alarms should 994 be sent and cleared for various performance counters."; 996 leaf received-level-alarm-threshold { 997 type power { 998 range "-99..-30"; 999 } 1000 units "dBm"; 1001 default "-99"; 1002 description 1003 "Specification of at which received power level an alarm 1004 should be raised."; 1005 } 1007 leaf transmitted-level-alarm-threshold { 1008 type power { 1009 range "-99..40"; 1010 } 1011 units "dBm"; 1012 default "-99"; 1013 description 1014 "An alarm is sent when the transmitted power level 1015 is below the specified threshold."; 1016 } 1017 leaf ber-alarm-threshold { 1018 type enumeration { 1019 enum "10e-9" { 1020 description "Threshold at 10e-9."; 1021 } 1022 enum "10e-8" { 1023 description "Threshold at 10e-8."; 1024 } 1025 enum "10e-7" { 1026 description "Threshold at 10e-7."; 1027 } 1028 enum "10e-6" { 1029 description "Threshold at 10e-6."; 1030 } 1031 enum "10e-5" { 1032 description "Threshold at 10e-5."; 1033 } 1034 enum "10e-4" { 1035 description "Threshold at 10e-4."; 1036 } 1037 enum "10e-3" { 1038 description "Threshold at 10e-3."; 1039 } 1040 enum "10e-2" { 1041 description "Threshold at 10e-2."; 1042 } 1043 enum "10e-1" { 1044 description "Threshold at 10e-1."; 1045 } 1046 } 1047 default "10e-6"; 1048 description 1049 "Specification of at which BER an alarm should 1050 be raised."; 1051 } 1052 } 1053 } 1055 /* 1056 * Radio Link Terminal - Operational state data nodes 1057 * Currently nothing in addition to the general 1058 * interface-state model. 1059 */ 1061 /* 1062 * Carrier Termination - Operational state data nodes 1063 */ 1065 augment "/if:interfaces-state/if:interface" { 1066 when "if:type = 'mrl:carrier-termination'"; 1067 description 1068 "Addition of state data nodes for carrier termination to 1069 the standard Interface state data model, for interfaces 1070 of the type 'carrier-termination'."; 1072 leaf tx-oper-status { 1073 type enumeration { 1074 enum "off" { 1075 description "Transmitter is off."; 1076 } 1077 enum "on" { 1078 description "Transmitter is on."; 1079 } 1080 enum "standby" { 1081 description "Transmitter is in standby."; 1082 } 1083 } 1084 description 1085 "Shows the operative status of the transmitter."; 1086 } 1088 leaf actual-transmitted-level { 1089 type power { 1090 range "-99..40"; 1091 } 1092 units "dBm"; 1093 description 1094 "Actual transmitted power level (0.1 dBm resolution)."; 1095 } 1097 leaf actual-received-level { 1098 type power { 1099 range "-99..-20"; 1100 } 1101 units "dBm"; 1102 description 1103 "Actual received power level (0.1 dBm resolution)."; 1104 } 1106 leaf actual-tx-cm { 1107 type identityref { 1108 base coding-modulation; 1109 } 1110 description 1111 "Actual coding/modulation in transmitting direction."; 1112 } 1113 leaf actual-snir { 1114 type decimal64 { 1115 fraction-digits 1; 1116 range "0..99"; 1117 } 1118 units "dB"; 1119 description 1120 "Actual signal to noise plus interference ratio. 1121 (0.1 dB resolution)."; 1122 } 1124 leaf actual-xpi { 1125 if-feature xpic; 1126 type decimal64 { 1127 fraction-digits 1; 1128 range "0..99"; 1129 } 1130 units "dB"; 1131 description 1132 "The actual carrier to cross-polar interference. 1133 Only valid if XPIC is enabled. (0.1 dB resolution)."; 1134 } 1136 container capabilities { 1137 description 1138 "Capabilities of the the installed equipment and 1139 some selected configurations."; 1141 leaf min-tx-frequency { 1142 type uint32; 1143 units "kHz"; 1144 description 1145 "Minimum Tx frequency possible to use."; 1146 } 1148 leaf max-tx-frequency { 1149 type uint32; 1150 units "kHz"; 1151 description 1152 "Maximum Tx frequency possible to use."; 1153 } 1154 leaf min-rx-frequency { 1155 type uint32; 1156 units "kHz"; 1157 description 1158 "Minimum Rx frequency possible to use."; 1159 } 1161 leaf max-rx-frequency { 1162 type uint32; 1163 units "kHz"; 1164 description 1165 "Maximum Tx frequency possible to use."; 1166 } 1168 leaf available-min-output-power { 1169 type power; 1170 units "dBm"; 1171 description 1172 "The minimum output power supported."; 1173 } 1175 leaf available-max-output-power { 1176 type power; 1177 units "dBm"; 1178 description 1179 "The maximum output power supported."; 1180 } 1182 leaf available-min-acm { 1183 type identityref { 1184 base coding-modulation; 1185 } 1186 description 1187 "Minimum coding-modulation possible to use."; 1188 } 1190 leaf available-max-acm { 1191 type identityref { 1192 base coding-modulation; 1193 } 1194 description 1195 "Maximum coding-modulation possible to use."; 1196 } 1197 } 1198 } 1199 augment "/if:interfaces-state/if:interface/if:statistics" { 1200 when "../if:type = 'mrl:carrier-termination'"; 1201 description 1202 "Addition of state data nodes in the container statistics 1203 for carrier terminations to the standard Interface data 1204 model, for interfaces of the type 'carrier-termination'."; 1206 leaf bbe { 1207 type yang:counter32; 1208 units "number of block errors"; 1209 description 1210 "Number of Background Block Errors (BBE) during the 1211 interval. A BBE is an errored block not occurring as 1212 part of an SES."; 1213 } 1215 leaf es { 1216 type yang:counter32; 1217 units "seconds"; 1218 description 1219 "Number of Errored Seconds (ES) since last 1220 reset. An ES is a one-second period with 1221 one or more errored blocks or at least one 1222 defect."; 1223 } 1225 leaf ses { 1226 type yang:counter32; 1227 units "seconds"; 1228 description 1229 "Number of Severely Errored Seconds (SES) during the 1230 interval. SES is a one-second period which contains 1231 equal or more than 30% errored blocks or at least 1232 one defect. SES is a subset of ES."; 1233 } 1235 leaf uas { 1236 type yang:counter32; 1237 units "seconds"; 1238 description 1239 "Number of Unavailable Seconds (UAS), that is, the 1240 total time that the node has been unavailable during 1241 a fixed measurement interval."; 1242 } 1243 leaf min-rltm { 1244 type power { 1245 range "-99..-20"; 1246 } 1247 units "dBm"; 1248 description 1249 "Minimum received power level since last reset."; 1250 } 1252 leaf max-rltm { 1253 type power { 1254 range "-99..-20"; 1255 } 1256 units "dBm"; 1257 description 1258 "Maximum received power level since last reset."; 1259 } 1261 leaf min-tltm { 1262 type power { 1263 range "-99..40"; 1264 } 1265 units "dBm"; 1266 description 1267 "Minimum transmitted power level since last reset."; 1268 } 1270 leaf max-tltm { 1271 type power { 1272 range "-99..40"; 1273 } 1274 units "dBm"; 1275 description 1276 "Maximum transmitted power level since last reset."; 1277 } 1278 } 1280 /* 1281 * Radio Link Protection Groups - Configuration data nodes 1282 */ 1284 container radio-link-protection-groups { 1285 description 1286 "Configuration of radio link protected groups 1287 (1+1) of carrier terminations in a radio link. 1288 More than one protected group per radio-link-terminal 1289 is allowed."; 1291 list radio-link-protection-group { 1292 key "name"; 1293 description 1294 "List of protected groups of carrier terminations 1295 in a radio link."; 1297 leaf name { 1298 type string; 1299 description 1300 "Name used for identification of the radio 1301 link protection group"; 1302 } 1304 leaf protection-architecture-type { 1305 type identityref{ 1306 base protection-architecture-type; 1307 } 1308 default "one-plus-one-type"; 1309 description 1310 "The type of protection architecture 1311 used, e.g. one carrier termination 1312 protecting one carrier termination."; 1313 } 1315 leaf protection-operation-type { 1316 type enumeration { 1317 enum "non-revertive" { 1318 description 1319 "In non revertive operation, the 1320 traffic does not return to the 1321 working carrier termination if the 1322 switch requests are terminated. "; 1323 } 1324 enum "revertive" { 1325 description 1326 "In revertive operation, the 1327 traffic always returns to (or 1328 remains on) the working carrier 1329 termination if the switch requests 1330 are terminated. "; 1331 } 1332 } 1333 default "non-revertive"; 1334 description 1335 "The type of protection operation, i.e. 1336 revertive or non-revertive operation."; 1337 } 1339 leaf-list working-entity { 1340 when "../protection-operation-type = 'revertive'"; 1341 type if:interface-ref; 1342 must "/if:interfaces/if:interface[if:name = current()]" 1343 + "/if:type = 'mrl:carrier-termination'" { 1344 description 1345 "The type of a working-entity must be 1346 'carrier-termination'."; 1347 } 1348 min-elements 1; 1349 description 1350 "The carrier terminations over which the 1351 traffic normally should be transported 1352 over when there is no need to use the 1353 protecting carrier termination."; 1354 } 1356 leaf revertive-wait-to-restore { 1357 when "../protection-operation-type = 'revertive'"; 1358 type uint16; 1359 units "seconds"; 1360 default "0"; 1361 description 1362 "The time to wait before switching back 1363 to the working carrier termination if 1364 protection-operation-type is revertive."; 1365 } 1367 leaf-list radio-link-protection-members { 1368 type if:interface-ref; 1369 must "/if:interfaces/if:interface[if:name = current()]" 1370 + "/if:type = 'mrl:carrier-termination'" { 1371 description 1372 "The type of a protection member must 1373 be 'carrier-termination'."; 1374 } 1375 min-elements 2; 1376 description 1377 "Association to a group of carrier 1378 terminations configured for radio link 1379 protection and used in the radio link terminal."; 1380 } 1382 action protection-external-commands { 1383 input { 1384 leaf protection-external-command { 1385 type identityref { 1386 base protection-external-commands; 1387 } 1388 description 1389 "Execution of protection external 1390 commands for trouble shooting purpose."; 1391 } 1392 } 1393 } 1394 } 1395 } 1397 /* 1398 * Radio Link Protection - Operational state data nodes 1399 */ 1400 container radio-link-protection-groups-state { 1401 config false; 1402 description 1403 "State data for radio link protected groups 1404 of carrier terminations in a radio link."; 1405 list radio-link-protection-group { 1406 key "name"; 1407 description 1408 "List of protected groups of carrier 1409 terminations in a radio link."; 1411 leaf name { 1412 type string; 1413 description 1414 "Name used for identification of the 1415 radio link protection group."; 1416 } 1418 leaf protection-status { 1419 type identityref { 1420 base protection-states; 1421 } 1422 description 1423 "Status of the protection, in a group of 1424 carrier terminations configured in a 1425 radio link protection mode."; 1426 } 1427 } 1428 } 1429 /* 1430 * XPIC & MIMO - Configuration data nodes 1431 */ 1433 container xpic-pairs { 1434 if-feature xpic; 1435 description 1436 "Configuration of carrier termination pairs 1437 for operation in XPIC mode."; 1439 list xpic-pair { 1440 key "name"; 1441 description 1442 "List of carrier termination pairs in XPIC mode."; 1444 leaf name { 1445 type string; 1446 description 1447 "Name used for identification of the XPIC pair."; 1448 } 1449 leaf enabled { 1450 type boolean; 1451 default "false"; 1452 description 1453 "Enable(true)/disable(false) XPIC"; 1454 } 1456 leaf-list xpic-members { 1457 type if:interface-ref; 1458 must "/if:interfaces/if:interface[if:name = current()]" 1459 + "/if:type = 'mrl:carrier-termination'" { 1460 description 1461 "The type of a xpic-member must be 1462 'carrier-termination'."; 1463 } 1464 min-elements 2; 1465 max-elements 2; 1466 description 1467 "Association to XPIC pairs used in the 1468 radio link terminal."; 1469 } 1470 } 1471 } 1472 container mimo-groups { 1473 if-feature mimo; 1474 description 1475 "Configuration of carrier terminations 1476 for operation in MIMO mode."; 1478 list mimo-group { 1479 key "name"; 1480 description 1481 "List of carrier terminations in MIMO mode."; 1483 leaf name { 1484 type string; 1485 description 1486 "Name used for identification of the MIMO group."; 1487 } 1489 leaf enabled { 1490 type boolean; 1491 default "false"; 1492 description 1493 "Enable(true)/disable(false) MIMO"; 1494 } 1496 leaf-list mimo-members { 1497 type if:interface-ref; 1498 must "/if:interfaces/if:interface[if:name = current()]" 1499 + "/if:type = 'mrl:carrier-termination'" { 1500 description 1501 "The type of a mimo-member must be 1502 'carrier-termination'."; 1503 } 1504 min-elements 2; 1505 description 1506 "Association to a MIMO group if used in 1507 the radio link terminal."; 1509 } 1510 } 1511 } 1512 } 1513 1514 5. Security Considerations 1516 The YANG module defined in this memo is designed to be 1517 accessed via the NETCONF protocol [RFC6241]. The lowest 1518 NETCONF layer is the secure transport layer and the 1519 mandatory-to-implement secure transport is SSH 1520 [RFC6242]. The NETCONF access control model [RFC6536] 1521 provides the means to restrict access for particular 1522 NETCONF users to a pre-configured subset of all 1523 available NETCONF protocol operations and content. 1525 There are a number of data nodes defined in the YANG 1526 module which are writable/creatable/deletable (i.e., 1527 config true, which is the default). These data nodes 1528 may be considered sensitive or vulnerable in some 1529 network environments. Write operations (e.g., ) to these data nodes without proper protection 1531 can have a negative effect on network operations. 1533 The security considerations of [RFC7223] also apply to 1534 this document. 1536 6. IANA Considerations 1538 TBD. 1540 7. References 1542 7.1. Normative References 1544 [RFC7223] Bjorklund M., "A YANG Data Model for Interface 1545 Management", RFC 7223, DOI 10.17487/RFC7223, 1546 May 2014, . 1549 7.2. Informative References 1551 [draft-ietf-ccamp-microwave-framework-00] 1552 Ahlberg J., et al., " A framework for 1553 Management and Control of microwave and 1554 millimeter wave interface parameters ", draft- 1555 ietf-ccamp-microwave-framework-00 (work in 1556 progress), December 2016. 1558 [I-D.ahlberg-ccamp-microwave-radio-link] 1559 Ahlberg J., Carlson J., Lund H., Olausson T., 1560 Ye M., and Vaupotic M., "Microwave Radio Link 1561 YANG Data Models", draft-ahlberg-ccamp- 1562 microwave-radio-link-01 (work in progress), 1563 May 2016. 1565 [ONF-model] 1566 "Microwave Modeling - ONF Wireless Transport 1567 Group", May 2016. 1569 [RFC6241] Enns, R., Bjorklund, M., Schoenwaelder, J., 1570 and A.Bierman, "Network Configuration Protocol 1571 (NETCONF)",RFC 6241, June 2011. 1573 [RFC6242] Wasserman, M., "Using the NETCONF Protocol 1574 over SecureShell (SSH)", RFC 6242, June 2011. 1576 [RFC6536] Bierman, A. and M. Bjorklund, "Network 1577 ConfigurationProtocol (NETCONF) Access Control 1578 Model", RFC 6536,March 2012. 1580 Authors' Addresses 1582 Jonas Ahlberg 1583 Ericsson AB 1584 Lindholmspiren 11 1585 Goeteborg 417 56 1586 Sweden 1588 Email: jonas.ahlberg@ericsson.com 1590 Ye Min 1591 Huawei Technologies Co., Ltd. 1592 No.1899, Xiyuan Avenue 1593 Chengdu 611731 1594 P.R.China 1596 Email: amy.yemin@huawei.com 1598 Xi Li 1599 NEC Laboratories Europe 1600 Kurfursten-Anlage 36 1601 69115 Heidelberg 1602 Germany 1604 Email: Xi.Li@neclab.eu 1606 Koji Kawada 1607 NEC Corporation 1608 1753, Shimonumabe Nakahara-ku 1609 Kawasaki, Kanagawa 211-8666 1610 Japan 1612 Email: k-kawada@ah.jp.nec.com 1614 Carlos J. Bernardos 1615 Universidad Carlos III de Madrid 1616 Av. Universidad, 30 1617 Leganes, Madrid 28911 1618 Spain 1620 Email: cjbc@it.uc3m.es