idnits 2.17.1 draft-mwdt-ccamp-mw-yang-01.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 172 has weird spacing: '...ections uni...' -- The document date (December 23, 2016) is 2681 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: June 2017 December 23, 2016 13 A YANG Data Model for Microwave Radio Link 15 draft-mwdt-ccamp-mw-yang-01 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 June 23, 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) 136 module: ietf-microwave-radio-link 137 +--rw radio-link-protection-groups 138 | +--rw radio-link-protection-group* [name] 139 | +--rw name string 140 | +--rw protection-architecture-type? identityref 141 | +--rw protection-operation-type? enumeration 142 | +--rw working-entity* if:interface-ref 143 | +--rw revertive-wait-to-restore? uint16 144 | +--rw radio-link-protection-members* if:interface-ref 145 | +---x protection-external-commands 146 | +---w input 147 | +---w protection-external-command? identityref 148 +--ro radio-link-protection-groups-state 149 | +--ro radio-link-protection-group* [name] 150 | +--ro name string 151 | +--ro protection-status? identityref 152 +--rw xpic-pairs {xpic}? 153 | +--rw xpic-pair* [name] 154 | +--rw name string 155 | +--rw enabled? boolean 156 | +--rw xpic-members* if:interface-ref 157 +--rw mimo-groups {mimo}? 158 +--rw mimo-group* [name] 159 +--rw name string 160 +--rw enabled? boolean 161 +--rw mimo-members* if:interface-ref 162 augment /if:interfaces/if:interface: 163 +--rw id? string 164 +--rw mode identityref 165 +--rw carrier-terminations* if:interface-ref 166 +--rw rlp-groups* -> /radio-link-protection-groups 167 /radio-link-protection-group/name 168 +--rw xpic-pairs* -> /xpic-pairs/xpic-pair/name {xpic}? 169 +--rw mimo-group? -> /mimo-groups/mimo-group/name {mimo}? 170 +--rw tdm-connections* [tdm-type] {tdm}? 171 +--rw tdm-type identityref 172 +--rw tdm-connections unit16 173 augment /if:interfaces/if:interface: 174 +--rw carrier-id? string 175 +--rw tx-enabled? boolean 176 +--rw tx-frequency uint32 177 +--rw rx-frequency? uint32 178 +--rw rx-frequency-config? boolean 179 +--rw duplex-distance uint32 180 +--rw channel-separation decimal64 181 +--rw polarization? enumeration 182 +--rw power-mode enumeration 183 +--rw selected-output-power power 184 +--rw atpc-lower-threshold power 185 +--rw atpc-upper-threshold power 186 +--rw coding-modulation-mode enumeration 187 +--rw selected-cm identityref 188 +--rw selected-min-acm identityref 189 +--rw selected-max-acm identityref 190 +--rw if-loop? enumeration 191 +--rw rf-loop? enumeration 192 +--rw ct-performance-thresholds 193 +--rw received-level-alarm-threshold? power 194 +--rw transmitted-level-alarm-threshold? power 195 +--rw ber-alarm-threshold? enumeration 196 augment /if:interfaces-state/if:interface: 197 +--ro tx-oper-status? enumeration 198 +--ro actual-transmitted-level? power 199 +--ro actual-received-level? power 200 +--ro actual-tx-cm? identityref 201 +--ro actual-snir? decimal64 202 +--ro actual-xpi? decimal64 {xpic}? 203 +--ro capabilities 204 +--ro min-tx-frequency? uint32 205 +--ro max-tx-frequency? uint32 206 +--ro min-rx-frequency? uint32 207 +--ro max-rx-frequency? uint32 208 +--ro available-min-output-power? power 209 +--ro available-max-output-power? power 210 +--ro available-min-acm? identityref 211 +--ro available-max-acm? identityref 212 augment /if:interfaces-state/if:interface/if:statistics: 213 +--ro bbe? yang:counter32 214 +--ro es? yang:counter32 215 +--ro ses? yang:counter32 216 +--ro uas? yang:counter32 217 +--ro min-rltm? power 218 +--ro max-rltm? power 219 +--ro min-tltm? power 220 +--ro max-tltm? power 222 4. YANG Module 224 file "ietf-microwave-radio-link.yang" 226 module ietf-microwave-radio-link { 227 yang-version 1.1; 228 namespace "urn:ietf:params:xml:ns:yang:ietf-microwave-radio-link"; 229 prefix mrl; 231 import ietf-yang-types { 232 prefix yang; 233 } 235 import ietf-interfaces { 236 prefix if; 237 } 239 import iana-if-type { 240 prefix ianaift; 241 } 243 organization 244 "IETF CCAMP Working Group"; 245 contact 246 "jonas.ahlberg@ericsson.com 247 amy.yemin@huawei.com 248 Xi.Li@neclab.eu 249 cjbc@it.uc3m.es 250 k-kawada@ah.jp.nec.com"; 252 description 253 "This is a module for the entities in a generic 254 microwave system."; 256 revision 2016-12-22 { 257 description 258 "Draft revision covering a complete scope for 259 configuration and state data for radio link 260 interfaces."; 262 reference ""; 263 } 265 revision 2016-10-29 { 266 description 267 "Draft revision."; 268 reference ""; 269 } 271 /* 272 * Features 273 */ 275 feature xpic { 276 description 277 "Indicates that the device supports XPIC."; 278 } 280 feature mimo { 281 description 282 "Indicates that the device supports MIMO."; 283 } 285 feature tdm { 286 description 287 "Indicates that the device supports TDM."; 288 } 290 /* 291 * Interface identities 292 */ 294 identity radio-link-terminal { 295 base ianaift:iana-interface-type; 296 description 297 "Interface identity for a radio link terminal."; 298 } 300 identity carrier-termination { 301 base ianaift:iana-interface-type; 302 description 303 "Interface identity for a carrier termination."; 304 } 306 /* 307 * Radio-link-terminal mode identities 308 */ 310 identity rlt-mode { 311 description 312 "A description of the mode in which the radio 313 link terminal is configured. The format is X 314 plus Y. X represent the number of bonded 315 carrier terminations. Y represent the number 316 of protecting carrier terminations."; 317 } 319 identity one-plus-zero { 320 base rlt-mode; 321 description 322 "1 carrier termination only."; 323 } 325 identity one-plus-one { 326 base rlt-mode; 327 description 328 "1 carrier termination 329 and 1 protecting carrier termination."; 330 } 332 identity two-plus-zero { 333 base rlt-mode; 334 description 335 "2 bonded carrier terminations."; 336 } 338 /* 339 * Coding and modulation identities 340 */ 342 identity coding-modulation { 343 description 344 "The coding and modulation schemes."; 345 } 347 identity half-bpsk-strong { 348 base coding-modulation; 349 description 350 "Half BPSK strong coding and modulation scheme."; 351 } 353 identity half-bpsk { 354 base coding-modulation; 355 description 356 "Half BPSK coding and modulation scheme."; 357 } 359 identity half-bpsk-light { 360 base coding-modulation; 361 description 362 "Half BPSK light coding and modulation scheme."; 363 } 365 identity bpsk-strong { 366 base coding-modulation; 367 description 368 "BPSK strong coding and modulation scheme."; 369 } 371 identity bpsk { 372 base coding-modulation; 373 description 374 "BPSK coding and modulation scheme."; 375 } 377 identity bpsk-light { 378 base coding-modulation; 379 description 380 "BPSK light coding and modulation scheme."; 381 } 383 identity qpsk { 384 base coding-modulation; 385 description 386 "QPSK coding and modulation scheme."; 387 } 389 identity qam-4-strong { 390 base coding-modulation; 391 description 392 "4 QAM strong coding and modulation scheme."; 393 } 395 identity qam-4 { 396 base coding-modulation; 397 description 398 "4 QAM coding and modulation scheme."; 399 } 401 identity qam-4-light { 402 base coding-modulation; 403 description 404 "4 QAM light coding and modulation scheme."; 405 } 407 identity qam-16-strong { 408 base coding-modulation; 409 description 410 "16 QAM strong coding and modulation scheme."; 411 } 413 identity qam-16 { 414 base coding-modulation; 415 description 416 "16 QAM coding and modulation scheme."; 417 } 419 identity qam-16-light { 420 base coding-modulation; 421 description 422 "16 QAM light coding and modulation scheme."; 423 } 425 identity qam-32-strong { 426 base coding-modulation; 427 description 428 "32 QAM strong coding and modulation scheme."; 429 } 431 identity qam-32 { 432 base coding-modulation; 433 description 434 "32 QAM coding and modulation scheme."; 435 } 437 identity qam-32-light { 438 base coding-modulation; 439 description 440 "32 QAM light coding and modulation scheme."; 441 } 443 identity qam-64-strong { 444 base coding-modulation; 445 description 446 "64 QAM strong coding and modulation scheme."; 447 } 449 identity qam-64 { 450 base coding-modulation; 451 description 452 "64 QAM coding and modulation scheme."; 453 } 455 identity qam-64-light { 456 base coding-modulation; 457 description 458 "64 QAM light coding and modulation scheme."; 459 } 461 identity qam-128-strong { 462 base coding-modulation; 463 description 464 "128 QAM strong coding and modulation scheme."; 465 } 467 identity qam-128 { 468 base coding-modulation; 469 description 470 "128 QAM coding and modulation scheme."; 471 } 473 identity qam-128-light { 474 base coding-modulation; 475 description 476 "128 QAM light coding and modulation scheme."; 477 } 479 identity qam-256-strong { 480 base coding-modulation; 481 description 482 "256 QAM strong coding and modulation scheme."; 483 } 485 identity qam-256 { 486 base coding-modulation; 487 description 488 "256 QAM coding and modulation scheme."; 489 } 491 identity qam-256-light { 492 base coding-modulation; 493 description 494 "256 QAM light coding and modulation scheme."; 495 } 497 identity qam-512-strong { 498 base coding-modulation; 499 description 500 "512 QAM strong coding and modulation scheme."; 501 } 503 identity qam-512 { 504 base coding-modulation; 505 description 506 "512 QAM coding and modulation scheme."; 507 } 509 identity qam-512-light { 510 base coding-modulation; 511 description 512 "512 QAM light coding and modulation scheme."; 513 } 515 identity qam-1024-strong { 516 base coding-modulation; 517 description 518 "1024 QAM strong coding and modulation scheme."; 519 } 521 identity qam-1024 { 522 base coding-modulation; 523 description 524 "1024 QAM coding and modulation scheme."; 525 } 527 identity qam-1024-light { 528 base coding-modulation; 529 description 530 "1024 QAM light coding and modulation scheme."; 531 } 533 identity qam-2048-strong { 534 base coding-modulation; 535 description 536 "2048 QAM strong coding and modulation scheme."; 537 } 539 identity qam-2048 { 540 base coding-modulation; 541 description 542 "2048 QAM coding and modulation scheme."; 543 } 545 identity qam-2048-light { 546 base coding-modulation; 547 description 548 "2048 QAM light coding and modulation scheme."; 549 } 551 identity qam-4096-strong { 552 base coding-modulation; 553 description 554 "4096 QAM strong coding and modulation scheme."; 555 } 557 identity qam-4096 { 558 base coding-modulation; 559 description 560 "4096 QAM coding and modulation scheme."; 561 } 563 identity qam-4096-light { 564 base coding-modulation; 565 description 566 "4096 QAM light coding and modulation scheme."; 567 } 569 /* 570 * Protection architecture type identities 571 */ 572 identity protection-architecture-type { 573 description 574 "protection architecture type"; 575 } 577 identity one-plus-one-type { 578 base protection-architecture-type; 579 description 580 "One carrier termination and 581 one protecting carrier termination."; 582 } 584 identity one-to-n-type { 585 base protection-architecture-type; 586 description 587 "One carrier termination protecting 588 n other carrier terminations."; 589 } 591 /* 592 * Protection states identities 593 */ 595 identity protection-states { 596 description 597 "Identities describing the status of the protection, 598 in a group of carrier terminations configured in 599 a radio link protection mode."; 600 } 602 identity unprotected { 603 base protection-states; 604 description "Not protected"; 605 } 607 identity protected { 608 base protection-states; 609 description "Protected"; 610 } 612 identity unable-to-protect { 613 base protection-states; 614 description "Unable to protect"; 615 } 617 /* 618 * protection-external-commands identities 619 */ 621 identity protection-external-commands{ 622 description 623 "Protection external commands for trouble shooting 624 purpose."; 625 } 627 identity manual-switch{ 628 base protection-external-commands; 629 description 630 "A switch action initiated by an operator command. 631 It switches normal traffic signal to the protection 632 transport entity."; 633 } 635 /* 636 * TDM-type identities 637 */ 638 identity tdm-type { 639 description 640 "A description of the type of TDM connection, 641 also indicating the supported capacity of the 642 connection."; 643 } 645 identity E1 { 646 base tdm-type; 647 description 648 "E1 connection, 2,048 Mbit/s."; 649 } 651 identity STM-1 { 652 base tdm-type; 653 description 654 "STM-1 connection, 155,52 Mbit/s."; 655 } 657 /* 658 * Typedefs 659 */ 660 typedef power { 661 type decimal64 { 662 fraction-digits 1; 663 } 664 description 665 "Type used for power values, selected and measured."; 666 } 668 /* 669 * Radio Link Terminal (RLT) - Configuration data nodes 670 */ 671 augment "/if:interfaces/if:interface" { 672 when "if:type = 'mrl:radio-link-terminal'"; 673 description 674 "Addition of data nodes for radio link terminal to 675 the standard Interface data model, for interfaces of 676 the type 'radio-link-terminal'."; 677 leaf id { 678 type string; 679 default ""; 680 description 681 "ID of the radio link terminal. Used by far-end when 682 checking that it's connected to the correct RLT."; 683 } 685 leaf mode { 686 type identityref { 687 base rlt-mode; 688 } 689 mandatory true; 690 description 691 "A description of the mode in which the radio link 692 terminal is configured. The format is X plus Y. 693 X represent the number of bonded carrier terminations. 694 Y represent the number of protecting carrier 695 terminations."; 696 } 698 leaf-list carrier-terminations { 699 type if:interface-ref; 700 must "/if:interfaces/if:interface[if:name = current()]" 701 + "/if:type = 'mrl:carrier-termination'" { 702 description 703 "The type of interface must be 704 'carrier-termination'."; 705 } 706 min-elements 1; 707 description 708 "A list of references to carrier terminations 709 included in the radio link terminal."; 710 } 712 leaf-list rlp-groups { 713 type leafref { 714 path "/mrl:radio-link-protection-groups/" 715 + "mrl:radio-link-protection-group/mrl:name"; 716 } 717 description 718 "A list of references to the carrier termination 719 groups configured for radio link protection in this 720 radio link terminal."; 721 } 722 leaf-list xpic-pairs { 723 if-feature xpic; 724 type leafref { 725 path "/mrl:xpic-pairs/mrl:xpic-pair/mrl:name"; 726 } 727 description 728 "A list of references to the XPIC pairs used in this 729 radio link terminal. One pair can be used by two 730 terminals."; 731 } 733 leaf mimo-group { 734 if-feature mimo; 735 type leafref { 736 path "/mrl:mimo-groups/mrl:mimo-group/mrl:name"; 737 } 738 description 739 "A reference to the MIMO group used in this 740 radio link terminal. One group can be used by more 741 than one terminal."; 742 } 744 list tdm-connections { 745 if-feature tdm; 746 key "tdm-type"; 747 description 748 "A list stating the number of TDM connections of a 749 specified tdm-type that is supported by the RLT."; 750 leaf tdm-type { 751 type identityref { 752 base tdm-type; 753 } 754 description 755 "The type of TDM connection, which also indicates 756 the supported capacity."; 757 } 759 leaf tdm-connections { 760 type uint16; 761 mandatory true; 762 description "Number of connections of the specified type."; 763 } 764 } 765 } 767 /* 768 * Carrier Termination - Configuration data nodes 769 */ 771 augment "/if:interfaces/if:interface" { 772 when "if:type = 'mrl:carrier-termination'"; 773 description 774 "Addition of data nodes for carrier termination to 775 the standard Interface data model, for interfaces 776 of the type 'carrier-termination'."; 777 leaf carrier-id { 778 type string; 779 default "A"; 780 description 781 "ID of the carrier. (e.g. A, B, C or D) 782 Used in XPIC & MIMO configurations to check that 783 the carrier termination is connected to the correct 784 far-end carrier termination. Should be the same 785 carrier ID on both sides of the hop. 786 Defaulted when not MIMO or XPIC."; 787 } 789 leaf tx-enabled { 790 type boolean; 791 default "false"; 792 description 793 " Disables (false) or enables (true) the 794 transmitter.Only applicable when the interface 795 is enabled (interface:enabled = true) otherwise 796 it's always disabled."; 797 } 799 leaf tx-frequency { 800 type uint32; 801 units "kHz"; 802 mandatory true; 803 description 804 "Selected transmitter frequency."; 805 } 806 leaf rx-frequency { 807 type uint32; 808 units "kHz"; 809 description 810 "Selected receiver frequency. 811 Mandatory and writeable when rx-frequency-config=true. 812 Otherwise read-only and calculated from tx-frequency 813 and duplex-distance."; 814 } 816 leaf rx-frequency-config { 817 type boolean; 818 default "true"; 819 description 820 "Enable (true) or disable (false) direct 821 configuration of rx-frequency and instead 822 using a defined duplex distance."; 823 } 825 leaf duplex-distance { 826 when "../rx-frequency-config = 'false'"; 827 type uint32; 828 units "kHz"; 829 mandatory true; 830 description 831 "Distance between Tx & Rx frequencies. 832 Used to calaculate rx-frequency when 833 rx-frequency-config=false."; 834 } 836 leaf channel-separation { 837 type decimal64 { 838 fraction-digits 1; 839 } 840 units "MHz"; 841 mandatory true; 842 description 843 "The amount of bandwidth allocated to a carrier."; 844 } 846 leaf polarization { 847 type enumeration { 848 enum "horizontal" { 849 description "Horizontal polarization."; 850 } 851 enum "vertical" { 852 description "Vertical polarization."; 853 } 854 enum "not-specified" { 855 description "Polarization not specified."; 856 } 857 } 858 default "not-specified"; 859 description 860 "Polarization - A textual description for info only."; 861 } 863 leaf power-mode { 864 type enumeration { 865 enum rtpc { 866 description "Remote Transmit Power Control (RTPC)."; 867 } 868 enum atpc { 869 description "Automatic Transmit Power Contro 870 (ATPC)."; 871 } 872 } 873 mandatory true; 874 description 875 "A choice of Remote Transmit Power Control (RTPC) 876 or Automatic Transmit Power Control (ATPC)."; 877 } 879 leaf selected-output-power { 880 type power { 881 range "-99..40"; 882 } 883 units "dBm"; 884 mandatory true; 885 description 886 "Selected output power in RTPC mode and selected 887 maximum selected maximum output power in ATPC mode. 888 Minimum ouput power in ATPC mode is the same as the 889 system capability, available-min-output-power."; 890 } 892 leaf atpc-lower-threshold { 893 when "../power-mode = 'atpc'"; 894 type power { 895 range "-99..-30"; 896 } 897 units "dBm"; 898 mandatory true; 899 description 900 "The lower threshold for the input power at far-end used in 901 the ATPC mode."; 902 } 904 leaf atpc-upper-threshold { 905 when "../power-mode = 'atpc'"; 906 type power { 907 range "-99..-30"; 908 } 909 units "dBm"; 910 mandatory true; 911 description 912 "The upper threshold for the input power 913 at far-end used in the ATPC mode."; 914 } 916 leaf coding-modulation-mode { 917 type enumeration { 918 enum fixed { 919 description "Fixed coding/modulation."; 920 } 921 enum adaptive { 922 description "Adaptive coding/modulation."; 923 } 924 } 925 mandatory true; 926 description 927 "A selection of fixed or 928 adaptive coding/modulation mode."; 929 } 931 leaf selected-cm { 932 when "../coding-modulation-mode = 'fixed'"; 933 type identityref { 934 base coding-modulation; 935 } 936 mandatory true; 937 description 938 "Selected fixed coding/modulation."; 939 } 940 leaf selected-min-acm { 941 when "../coding-modulation-mode = 'adaptive'"; 942 type identityref { 943 base coding-modulation; 944 } 945 mandatory true; 946 description 947 "Selected minimum coding/modulation. 948 Adaptive coding/modulation shall not go 949 below this value."; 950 } 952 leaf selected-max-acm { 953 when "../coding-modulation-mode = 'adaptive'"; 954 type identityref { 955 base coding-modulation; 956 } 957 mandatory true; 958 description 959 "Selected maximum coding/modulation. 960 Adaptive coding/modulation shall not go 961 above this value."; 962 } 964 leaf if-loop { 965 type enumeration { 966 enum disabled { 967 description "Disables the IF Loop."; 968 } 969 enum client { 970 description "Loops the signal back to the client side."; 971 } 972 enum radio { 973 description "Loops the signal back to the radio side."; 974 } 975 } 976 default "disabled"; 977 description 978 "Enable (client/radio) or disable (disabled) the IF loop, 979 which loops the signal back to the client side or the 980 radio side."; 981 } 982 leaf rf-loop { 983 type enumeration { 984 enum disabled { 985 description "Disables the RF Loop."; 986 } 987 enum client { 988 description "Loops the signal back to the client side."; 989 } 990 enum radio { 991 description "Loops the signal back to the radio side."; 992 } 993 } 994 default "disabled"; 995 description 996 "Enable (client/radio) or disable (disabled) the RF loop, 997 which loops the signal back to the client side or 998 the radio side."; 999 } 1001 container ct-performance-thresholds { 1002 description 1003 "Specification of thresholds for when alarms should 1004 be sent and cleared for various performance counters."; 1006 leaf received-level-alarm-threshold { 1007 type power { 1008 range "-99..-30"; 1009 } 1010 units "dBm"; 1011 default "-99"; 1012 description 1013 "Specification of at which received power level an alarm 1014 should be raised."; 1015 } 1017 leaf transmitted-level-alarm-threshold { 1018 type power { 1019 range "-99..40"; 1020 } 1021 units "dBm"; 1022 default "-99"; 1023 description 1024 "An alarm is sent when the transmitted power level 1025 is below the specified threshold."; 1026 } 1027 leaf ber-alarm-threshold { 1028 type enumeration { 1029 enum "10e-9" { 1030 description "Threshold at 10e-9."; 1031 } 1032 enum "10e-8" { 1033 description "Threshold at 10e-8."; 1034 } 1035 enum "10e-7" { 1036 description "Threshold at 10e-7."; 1037 } 1038 enum "10e-6" { 1039 description "Threshold at 10e-6."; 1040 } 1041 enum "10e-5" { 1042 description "Threshold at 10e-5."; 1043 } 1044 enum "10e-4" { 1045 description "Threshold at 10e-4."; 1046 } 1047 enum "10e-3" { 1048 description "Threshold at 10e-3."; 1049 } 1050 enum "10e-2" { 1051 description "Threshold at 10e-2."; 1052 } 1053 enum "10e-1" { 1054 description "Threshold at 10e-1."; 1055 } 1056 } 1057 default "10e-6"; 1058 description 1059 "Specification of at which BER an alarm should 1060 be raised."; 1061 } 1062 } 1063 } 1065 /* 1066 * Radio Link Terminal - Operational state data nodes 1067 * Currently nothing in addition to the general 1068 * interface-state model. 1069 */ 1071 /* 1072 * Carrier Termination - Operational state data nodes 1073 */ 1075 augment "/if:interfaces-state/if:interface" { 1076 when "if:type = 'mrl:carrier-termination'"; 1077 description 1078 "Addition of state data nodes for carrier termination to 1079 the standard Interface state data model, for interfaces 1080 of the type 'carrier-termination'."; 1082 leaf tx-oper-status { 1083 type enumeration { 1084 enum "off" { 1085 description "Transmitter is off."; 1086 } 1087 enum "on" { 1088 description "Transmitter is on."; 1089 } 1090 enum "standby" { 1091 description "Transmitter is in standby."; 1092 } 1093 } 1094 description 1095 "Shows the operative status of the transmitter."; 1096 } 1098 leaf actual-transmitted-level { 1099 type power { 1100 range "-99..40"; 1101 } 1102 units "dBm"; 1103 description 1104 "Actual transmitted power level (0.1 dBm resolution)."; 1105 } 1107 leaf actual-received-level { 1108 type power { 1109 range "-99..-20"; 1110 } 1111 units "dBm"; 1112 description 1113 "Actual received power level (0.1 dBm resolution)."; 1114 } 1116 leaf actual-tx-cm { 1117 type identityref { 1118 base coding-modulation; 1119 } 1120 description 1121 "Actual coding/modulation in transmitting direction."; 1122 } 1123 leaf actual-snir { 1124 type decimal64 { 1125 fraction-digits 1; 1126 range "0..99"; 1127 } 1128 units "dB"; 1129 description 1130 "Actual signal to noise plus interference ratio. 1131 (0.1 dB resolution)."; 1132 } 1134 leaf actual-xpi { 1135 if-feature xpic; 1136 type decimal64 { 1137 fraction-digits 1; 1138 range "0..99"; 1139 } 1140 units "dB"; 1141 description 1142 "The actual carrier to cross-polar interference. 1143 Only valid if XPIC is enabled. (0.1 dB resolution)."; 1144 } 1146 container capabilities { 1147 description 1148 "Capabilities of the the installed equipment and 1149 some selected configurations."; 1151 leaf min-tx-frequency { 1152 type uint32; 1153 units "kHz"; 1154 description 1155 "Minimum Tx frequency possible to use."; 1156 } 1158 leaf max-tx-frequency { 1159 type uint32; 1160 units "kHz"; 1161 description 1162 "Maximum Tx frequency possible to use."; 1163 } 1164 leaf min-rx-frequency { 1165 type uint32; 1166 units "kHz"; 1167 description 1168 "Minimum Rx frequency possible to use."; 1169 } 1171 leaf max-rx-frequency { 1172 type uint32; 1173 units "kHz"; 1174 description 1175 "Maximum Tx frequency possible to use."; 1176 } 1178 leaf available-min-output-power { 1179 type power; 1180 units "dBm"; 1181 description 1182 "The minimum output power supported."; 1183 } 1185 leaf available-max-output-power { 1186 type power; 1187 units "dBm"; 1188 description 1189 "The maximum output power supported."; 1190 } 1192 leaf available-min-acm { 1193 type identityref { 1194 base coding-modulation; 1195 } 1196 description 1197 "Minimum coding-modulation possible to use."; 1198 } 1200 leaf available-max-acm { 1201 type identityref { 1202 base coding-modulation; 1203 } 1204 description 1205 "Maximum coding-modulation possible to use."; 1206 } 1207 } 1208 } 1210 augment "/if:interfaces-state/if:interface/if:statistics" { 1211 when "../if:type = 'mrl:carrier-termination'"; 1212 description 1213 "Addition of state data nodes in the container statistics 1214 for carrier terminations to the standard Interface data 1215 model, for interfaces of the type 'carrier-termination'."; 1217 leaf bbe { 1218 type yang:counter32; 1219 units "number of block errors"; 1220 description 1221 "Number of Background Block Errors (BBE) during the 1222 interval. A BBE is an errored block not occurring as 1223 part of an SES."; 1224 } 1226 leaf es { 1227 type yang:counter32; 1228 units "seconds"; 1229 description 1230 "Number of Errored Seconds (ES) since last 1231 reset. An ES is a one-second period with 1232 one or more errored blocks or at least one 1233 defect."; 1234 } 1236 leaf ses { 1237 type yang:counter32; 1238 units "seconds"; 1239 description 1240 "Number of Severely Errored Seconds (SES) during the 1241 interval. SES is a one-second period which contains 1242 equal or more than 30% errored blocks or at least 1243 one defect. SES is a subset of ES."; 1244 } 1246 leaf uas { 1247 type yang:counter32; 1248 units "seconds"; 1249 description 1250 "Number of Unavailable Seconds (UAS), that is, the 1251 total time that the node has been unavailable during 1252 a fixed measurement interval."; 1253 } 1254 leaf min-rltm { 1255 type power { 1256 range "-99..-20"; 1257 } 1258 units "dBm"; 1259 description 1260 "Minimum received power level since last reset."; 1261 } 1263 leaf max-rltm { 1264 type power { 1265 range "-99..-20"; 1266 } 1267 units "dBm"; 1268 description 1269 "Maximum received power level since last reset."; 1270 } 1272 leaf min-tltm { 1273 type power { 1274 range "-99..40"; 1275 } 1276 units "dBm"; 1277 description 1278 "Minimum transmitted power level since last reset."; 1279 } 1281 leaf max-tltm { 1282 type power { 1283 range "-99..40"; 1284 } 1285 units "dBm"; 1286 description 1287 "Maximum transmitted power level since last reset."; 1288 } 1289 } 1291 /* 1292 * Radio Link Protection Groups - Configuration data nodes 1293 */ 1295 container radio-link-protection-groups { 1296 description 1297 "Configuration of radio link protected groups 1298 (1+1) of carrier terminations in a radio link. 1299 More than one protected group per radio-link-terminal 1300 is allowed."; 1301 list radio-link-protection-group { 1302 key "name"; 1303 description 1304 "List of protected groups of carrier terminations 1305 in a radio link."; 1307 leaf name { 1308 type string; 1309 description 1310 "Name used for identification of the radio 1311 link protection group"; 1312 } 1314 leaf protection-architecture-type { 1315 type identityref{ 1316 base protection-architecture-type; 1317 } 1318 default "one-plus-one-type"; 1319 description 1320 "The type of protection architecture 1321 used, e.g. one carrier termination 1322 protecting one carrier termination."; 1323 } 1325 leaf protection-operation-type { 1326 type enumeration { 1327 enum "non-revertive" { 1328 description 1329 "In non revertive operation, the 1330 traffic does not return to the 1331 working carrier termination if the 1332 switch requests are terminated. "; 1333 } 1334 enum "revertive" { 1335 description 1336 "In revertive operation, the 1337 traffic always returns to (or 1338 remains on) the working carrier 1339 termination if the switch requests 1340 are terminated. "; 1341 } 1342 } 1343 default "non-revertive"; 1344 description 1345 "The type of protection operation, i.e. 1346 revertive or non-revertive operation."; 1347 } 1348 leaf-list working-entity { 1349 when "../protection-operation-type = 'revertive'"; 1350 type if:interface-ref; 1351 must "/if:interfaces/if:interface[if:name = current()]" 1352 + "/if:type = 'mrl:carrier-termination'" { 1353 description 1354 "The type of a working-entity must be 1355 'carrier-termination'."; 1356 } 1357 min-elements 1; 1358 description 1359 "The carrier terminations over which the 1360 traffic normally should be transported 1361 over when there is no need to use the 1362 protecting carrier termination."; 1363 } 1365 leaf revertive-wait-to-restore { 1366 when "../protection-operation-type = 'revertive'"; 1367 type uint16; 1368 units "seconds"; 1369 default "0"; 1370 description 1371 "The time to wait before switching back 1372 to the working carrier termination if 1373 protection-operation-type is revertive."; 1374 } 1376 leaf-list radio-link-protection-members { 1377 type if:interface-ref; 1378 must "/if:interfaces/if:interface[if:name = current()]" 1379 + "/if:type = 'mrl:carrier-termination'" { 1380 description 1381 "The type of a protection member must 1382 be 'carrier-termination'."; 1383 } 1384 min-elements 2; 1385 description 1386 "Association to a group of carrier 1387 terminations configured for radio link 1388 protection and used in the radio link terminal."; 1389 } 1390 action protection-external-commands { 1391 input { 1392 leaf protection-external-command { 1393 type identityref { 1394 base protection-external-commands; 1395 } 1396 description 1397 "Execution of protection external 1398 commands for trouble shooting purpose."; 1399 } 1400 } 1401 } 1402 } 1403 } 1405 /* 1406 * Radio Link Protection - Operational state data nodes 1407 */ 1408 container radio-link-protection-groups-state { 1409 config false; 1410 description 1411 "State data for radio link protected groups 1412 of carrier terminations in a radio link."; 1413 list radio-link-protection-group { 1414 key "name"; 1415 description 1416 "List of protected groups of carrier 1417 terminations in a radio link."; 1419 leaf name { 1420 type string; 1421 description 1422 "Name used for identification of the 1423 radio link protection group."; 1424 } 1426 leaf protection-status { 1427 type identityref { 1428 base protection-states; 1429 } 1430 description 1431 "Status of the protection, in a group of 1432 carrier terminations configured in a 1433 radio link protection mode."; 1434 } 1435 } 1436 } 1438 /* 1439 * XPIC & MIMO - Configuration data nodes 1440 */ 1442 container xpic-pairs { 1443 if-feature xpic; 1444 description 1445 "Configuration of carrier termination pairs 1446 for operation in XPIC mode."; 1448 list xpic-pair { 1449 key "name"; 1450 description 1451 "List of carrier termination pairs in XPIC mode."; 1453 leaf name { 1454 type string; 1455 description 1456 "Name used for identification of the XPIC pair."; 1457 } 1458 leaf enabled { 1459 type boolean; 1460 default "false"; 1461 description 1462 "Enable(true)/disable(false) XPIC"; 1463 } 1465 leaf-list xpic-members { 1466 type if:interface-ref; 1467 must "/if:interfaces/if:interface[if:name = current()]" 1468 + "/if:type = 'mrl:carrier-termination'" { 1469 description 1470 "The type of a xpic-member must be 1471 'carrier-termination'."; 1472 } 1473 min-elements 2; 1474 max-elements 2; 1475 description 1476 "Association to XPIC pairs used in the 1477 radio link terminal."; 1478 } 1479 } 1480 } 1482 container mimo-groups { 1483 if-feature mimo; 1484 description 1485 "Configuration of carrier terminations 1486 for operation in MIMO mode."; 1488 list mimo-group { 1489 key "name"; 1490 description 1491 "List of carrier terminations in MIMO mode."; 1493 leaf name { 1494 type string; 1495 description 1496 "Name used for identification of the MIMO group."; 1497 } 1499 leaf enabled { 1500 type boolean; 1501 default "false"; 1502 description 1503 "Enable(true)/disable(false) MIMO"; 1504 } 1506 leaf-list mimo-members { 1507 type if:interface-ref; 1508 must "/if:interfaces/if:interface[if:name = current()]" 1509 + "/if:type = 'mrl:carrier-termination'" { 1510 description 1511 "The type of a mimo-member must be 1512 'carrier-termination'."; 1513 } 1514 min-elements 2; 1515 description 1516 "Association to a MIMO group if used in 1517 the radio link terminal."; 1519 } 1520 } 1521 } 1522 } 1523 1525 5. Security Considerations 1527 The YANG module defined in this memo is designed to be 1528 accessed via the NETCONF protocol [RFC6241]. The lowest 1529 NETCONF layer is the secure transport layer and the 1530 mandatory-to-implement secure transport is SSH 1531 [RFC6242]. The NETCONF access control model [RFC6536] 1532 provides the means to restrict access for particular 1533 NETCONF users to a pre-configured subset of all 1534 available NETCONF protocol operations and content. 1536 There are a number of data nodes defined in the YANG 1537 module which are writable/creatable/deletable (i.e., 1538 config true, which is the default). These data nodes 1539 may be considered sensitive or vulnerable in some 1540 network environments. Write operations (e.g., ) to these data nodes without proper protection 1542 can have a negative effect on network operations. 1544 The security considerations of [RFC7223] also apply to 1545 this document. 1547 6. IANA Considerations 1549 TBD. 1551 7. References 1553 7.1. Normative References 1555 [RFC7223] Bjorklund M., "A YANG Data Model for Interface 1556 Management", RFC 7223, DOI 10.17487/RFC7223, 1557 May 2014, . 1560 7.2. Informative References 1562 [draft-ietf-ccamp-microwave-framework-00] 1563 Ahlberg J., et al., " A framework for 1564 Management and Control of microwave and 1565 millimeter wave interface parameters ", draft- 1566 ietf-ccamp-microwave-framework-00 (work in 1567 progress), December 2016. 1569 [I-D.ahlberg-ccamp-microwave-radio-link] 1570 Ahlberg J., Carlson J., Lund H., Olausson T., 1571 Ye M., and Vaupotic M., "Microwave Radio Link 1572 YANG Data Models", draft-ahlberg-ccamp- 1573 microwave-radio-link-01 (work in progress), 1574 May 2016. 1576 [ONF-model] 1577 "Microwave Modeling - ONF Wireless Transport 1578 Group", May 2016. 1580 [RFC6241] Enns, R., Bjorklund, M., Schoenwaelder, J., 1581 and A.Bierman, "Network Configuration Protocol 1582 (NETCONF)",RFC 6241, June 2011. 1584 [RFC6242] Wasserman, M., "Using the NETCONF Protocol 1585 over SecureShell (SSH)", RFC 6242, June 2011. 1587 [RFC6536] Bierman, A. and M. Bjorklund, "Network 1588 ConfigurationProtocol (NETCONF) Access Control 1589 Model", RFC 6536,March 2012. 1591 Authors' Addresses 1593 Jonas Ahlberg 1594 Ericsson AB 1595 Lindholmspiren 11 1596 Goeteborg 417 56 1597 Sweden 1599 Email: jonas.ahlberg@ericsson.com 1601 Ye Min 1602 Huawei Technologies Co., Ltd. 1603 No.1899, Xiyuan Avenue 1604 Chengdu 611731 1605 P.R.China 1607 Email: amy.yemin@huawei.com 1609 Xi Li 1610 NEC Laboratories Europe 1611 Kurfursten-Anlage 36 1612 69115 Heidelberg 1613 Germany 1615 Email: Xi.Li@neclab.eu 1617 Koji Kawada 1618 NEC Corporation 1619 1753, Shimonumabe Nakahara-ku 1620 Kawasaki, Kanagawa 211-8666 1621 Japan 1623 Email: k-kawada@ah.jp.nec.com 1625 Carlos J. Bernardos 1626 Universidad Carlos III de Madrid 1627 Av. Universidad, 30 1628 Leganes, Madrid 28911 1629 Spain 1631 Email: cjbc@it.uc3m.es