idnits 2.17.1 draft-ietf-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 188 has weird spacing: '...ections uin...' == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (July 3, 2017) is 2487 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) == Outdated reference: A later version (-07) exists of draft-ietf-ccamp-microwave-framework-01 -- Obsolete informational reference (is this intentional?): RFC 6536 (Obsoleted by RFC 8341) Summary: 1 error (**), 0 flaws (~~), 4 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 CCAMP Working Group J. Ahlberg 3 Internet-Draft Ericsson AB 4 Intended status: Standards Track M. Ye 5 Expires: January 4, 2018 Huawei Technologies 6 X. Li 7 NEC Laboratories Europe 8 K. Kawada 9 NEC Corporation 10 CJ. Bernardos 11 Universidad Carlos III de Madrid 12 D. Spreafico 13 Nokia - IT 14 M. Vaupotic 15 Aviat Networks 16 July 3, 2017 18 A YANG Data Model for Microwave Radio Link 19 draft-ietf-ccamp-mw-yang-01 21 Abstract 23 This document defines a YANG data model in order to control and 24 manage the radio link interfaces, and the connectivity to packet 25 (typically Ethernet) interfaces in a microwave/millimeter wave node. 27 Requirements Language 29 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 30 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 31 document are to be interpreted as described in [RFC2119]. 33 Status of This Memo 35 This Internet-Draft is submitted in full conformance with the 36 provisions of BCP 78 and BCP 79. 38 Internet-Drafts are working documents of the Internet Engineering 39 Task Force (IETF). Note that other groups may also distribute 40 working documents as Internet-Drafts. The list of current Internet- 41 Drafts is at http://datatracker.ietf.org/drafts/current/. 43 Internet-Drafts are draft documents valid for a maximum of six months 44 and may be updated, replaced, or obsoleted by other documents at any 45 time. It is inappropriate to use Internet-Drafts as reference 46 material or to cite them other than as "work in progress." 48 This Internet-Draft will expire on January 4, 2018. 50 Copyright Notice 52 Copyright (c) 2017 IETF Trust and the persons identified as the 53 document authors. All rights reserved. 55 This document is subject to BCP 78 and the IETF Trust's Legal 56 Provisions Relating to IETF Documents 57 (http://trustee.ietf.org/license-info) in effect on the date of 58 publication of this document. Please review these documents 59 carefully, as they describe your rights and restrictions with respect 60 to this document. Code Components extracted from this document must 61 include Simplified BSD License text as described in Section 4.e of 62 the Trust Legal Provisions and are provided without warranty as 63 described in the Simplified BSD License. 65 Table of Contents 67 1. Terminology and Definitions . . . . . . . . . . . . . . . . . 2 68 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 69 3. YANG Data Model (Tree Structure) . . . . . . . . . . . . . . 4 70 3.1. the YANG Tree . . . . . . . . . . . . . . . . . . . . . . 4 71 3.2. Explanation of the Microwave Data Model . . . . . . . . . 5 72 4. YANG Module . . . . . . . . . . . . . . . . . . . . . . . . . 6 73 5. Security Considerations . . . . . . . . . . . . . . . . . . . 33 74 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 34 75 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 34 76 7.1. Normative References . . . . . . . . . . . . . . . . . . 34 77 7.2. Informative References . . . . . . . . . . . . . . . . . 34 78 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 35 80 1. Terminology and Definitions 82 The following terms are used in this document: 84 Carrier Termination (CT) is an interface for the capacity provided 85 over the air by a single carrier. It is typically defined by its 86 transmitting and receiving frequencies. 88 Radio Link Terminal (RLT) is an interface providing packet capacity 89 and/or TDM capacity to the associated Ethernet and/or TDM interfaces 90 in a node and used for setting up a transport service over a 91 microwave/millimeter wave link. 93 The following acronyms are used in this document: 95 ACM Adaptive Coding Modulation 97 ATPC Automatic Transmit Power Control 98 CM Coding Modulation 100 CT Carrier Termination 102 RLT Radio Link Terminal 104 RTPC Remote Transmit Power Control 106 XPIC Cross Polarization Interference Cancellation 108 MIMO Multiple-Input Multiple-Output 110 2. Introduction 112 This document defines a YANG data model for management and control of 113 the radio link interface(s) and the relationship to packet (typically 114 Ethernet) and/or TDM interfaces in a microwave/millimeter wave node. 115 ETSI EN 302 217 series defines the characteristics and requirements 116 of microwave/millimeter wave equipment and antennas. Especially ETSI 117 EN 302 217-2 [EN 302 217-2] specifies the essential parameters for 118 the systems operating from 1.4GHz to 86GHz. The data model includes 119 configuration and state data. 121 The design of the data model follows the framework for management and 122 control of microwave and millimeter wave interface parameters defined 123 in [I-D.ietf-ccamp-microwave-framework]. This framework identifies 124 the need and the scope of the YANG data model, the use cases and 125 requirements that the model needs to support. Moreover, it provides 126 a detailed gap analysis to identify the missing parameters and 127 functionalities of the existing and established models to support the 128 specified use cases and requirements, and based on that recommends 129 how the gaps should be filled with the development of the new model. 131 According to the conclusion of the gap analysis, the structure of the 132 data model is based on the structure defined in 133 [I-D.ahlberg-ccamp-microwave-radio-link] and it augments RFC 7223 to 134 align with the same structure for management of the packet 135 interfaces. More specifically, the model will include interface 136 layering to manage the capacity provided by a radio link terminal for 137 the associated Ethernet and TDM interfaces, using the principles for 138 interface layering described in RFC 7223 as a basis. 140 The designed YANG data model uses established microwave equipment 141 and radio standards, such as ETSI EN 302 217-2, and the IETF: Radio 142 Link Model[I-D.ahlberg-ccamp-microwave-radio-link] and the ONF: 143 Microwave Modeling[ONF-model] as the basis for the definition of the 144 detailed leafs/parameters, and proposes new ones to cover identified 145 gaps which are analysed in[I-D.ietf-ccamp-microwave-framework]. 147 3. YANG Data Model (Tree Structure) 149 3.1. the YANG Tree 151 module: ietf-microwave-radio-link 152 +--rw radio-link-protection-groups 153 | +--rw radio-link-protection-group* [name] 154 | +--rw name string 155 | +--rw protection-architecture-type? identityref 156 | +--rw protection-operation-type? enumeration 157 | +--rw working-entity* if:interface-ref 158 | +--rw revertive-wait-to-restore? uint16 159 | +--rw radio-link-protection-members* if:interface-ref 160 | +---x protection-external-commands 161 | +---w input 162 | +---w protection-external-command? identityref 163 +--ro radio-link-protection-groups-state 164 | +--ro radio-link-protection-group* [name] 165 | +--ro name string 166 | +--ro protection-status? identityref 167 +--rw xpic-pairs {xpic}? 168 | +--rw xpic-pair* [name] 169 | +--rw name string 170 | +--rw enabled? boolean 171 | +--rw xpic-members* if:interface-ref 172 +--rw mimo-groups {mimo}? 173 +--rw mimo-group* [name] 174 +--rw name string 175 +--rw enabled? boolean 176 +--rw mimo-members* if:interface-ref 177 augment /if:interfaces/if:interface: 178 +--rw id? string 179 +--rw mode identityref 180 +--rw carrier-terminations* if:interface-ref 181 +--rw rlp-groups* leafref 182 +--rw xpic-pairs* 183 -> /xpic-pairs/xpic-pair/name {xpic}? 184 +--rw mimo-group? 185 -> /mimo-groups/mimo-group/name {mimo}? 186 +--rw tdm-connections* [tdm-type] {tdm}? 187 +--rw tdm-type identityref 188 +--rw tdm-connections uint16 189 augment /if:interfaces/if:interface: 190 +--rw carrier-id? string 191 +--rw tx-enabled? boolean 192 +--rw tx-frequency uint32 193 +--rw rx-frequency? uint32 194 +--rw duplex-distance? uint32 195 +--rw channel-separation uint32 196 +--rw polarization? enumeration 197 +--rw power-mode enumeration 198 +--rw selected-output-power power 199 +--rw atpc-lower-threshold power 200 +--rw atpc-upper-threshold power 201 +--rw coding-modulation-mode enumeration 202 +--rw selected-cm identityref 203 +--rw selected-min-acm identityref 204 +--rw selected-max-acm identityref 205 +--rw if-loop? enumeration 206 +--rw rf-loop? enumeration 207 +--rw ct-performance-thresholds 208 +--rw received-level-alarm-threshold? power 209 +--rw transmitted-level-alarm-threshold? power 210 +--rw ber-alarm-threshold? enumeration 211 augment /if:interfaces-state/if:interface: 212 +--ro tx-oper-status? enumeration 213 +--ro actual-transmitted-level? power 214 +--ro actual-received-level? power 215 +--ro actual-tx-cm? identityref 216 +--ro actual-snir? decimal64 217 +--ro actual-xpi? decimal64 {xpic}? 218 +--ro capabilities 219 +--ro min-tx-frequency? uint32 220 +--ro max-tx-frequency? uint32 221 +--ro min-rx-frequency? uint32 222 +--ro max-rx-frequency? uint32 223 +--ro available-min-output-power? power 224 +--ro available-max-output-power? power 225 +--ro available-min-acm? identityref 226 +--ro available-max-acm? identityref 227 augment /if:interfaces-state/if:interface/if:statistics: 228 +--ro bbe? yang:counter32 229 +--ro es? yang:counter32 230 +--ro ses? yang:counter32 231 +--ro uas? yang:counter32 232 +--ro min-rltm? power 233 +--ro max-rltm? power 234 +--ro min-tltm? power 235 +--ro max-tltm? power 237 3.2. Explanation of the Microwave Data Model 239 The leaves in the Interface Management Module augmented by Radio Link 240 Terminal (RLT) and Carrier Termination (CT) are not always relevant. 242 "/interfaces/interface/enabled" is not relevant for RLT. Enable and 243 disable of an interface is done in the constituent CTs. 245 The packet related measurements "in-octets", "in-unicast-pkts", "in- 246 broadcast-pkts", "in-multicast-pkts", "in-discards", "in-errors", 247 "in-unknown-protos", "out-octets", "out-unicast-pkts", "out- 248 broadcast-pkts", "out-multicast-pkts", "out-discards", "out-errors" 249 are not within the scope of the microwave radio link domain and 250 therefore not relevant for RLT and CT. 252 4. YANG Module 254 file "ietf-microwave-radio-link.yang" 256 module ietf-microwave-radio-link { 257 yang-version 1.1; 259 namespace "urn:ietf:params:xml:ns:yang:ietf-microwave-radio-link"; 260 prefix "mrl"; 262 import ietf-yang-types { 263 prefix yang; 264 } 266 import ietf-interfaces { 267 prefix if; 268 } 270 import iana-if-type { 271 prefix ianaift; 272 } 274 organization 275 "Internet Engineering Task Force (IETF) CCAMP WG"; 276 contact 277 " 278 WG List: 280 ID-draft authors: 281 Jonas Ahlberg (jonas.ahlberg@ericsson.com); 282 Min Ye (amy.yemin@huawei.com); 283 Xi Li (Xi.Li@neclab.eu); 284 Koji Kawada (k-kawada@ah.jp.nec.com) 285 Carlos J. Bernardos (cjbc@it.uc3m.es) 286 Daniela Spreafico (daniela.spreafico@nokia.com) 287 Marko Vaupotic (Marko.Vaupotic@aviatnet.com) 288 "; 290 description 291 "This is a module for the entities in a generic microwave system."; 293 revision 2017-06-21 { 294 description 295 "Updated draft revision with updates of some descriptions to 296 increase clarity and some minor adjustments of the model."; 297 reference ""; 298 } 299 revision 2016-12-22 { 300 description 301 "Draft revision covering a complete scope for configuration 302 and state data for radio link interfaces."; 303 reference ""; 304 } 305 revision 2016-10-29 { 306 description 307 "Draft revision."; 308 reference ""; 309 } 311 /* 312 * Features 313 */ 315 feature xpic { 316 description 317 "Indicates that the device supports XPIC."; 318 } 320 feature mimo { 321 description 322 "Indicates that the device supports MIMO."; 323 } 325 feature tdm { 326 description 327 "Indicates that the device supports TDM."; 328 } 330 /* 331 * Interface identities 332 */ 334 identity radio-link-terminal { 335 base ianaift:iana-interface-type; 336 description 337 "Interface identity for a radio link terminal."; 339 } 341 identity carrier-termination { 342 base ianaift:iana-interface-type; 343 description 344 "Interface identity for a carrier termination."; 345 } 347 /* 348 * Radio-link-terminal mode identities 349 */ 351 identity rlt-mode { 352 description 353 "A description of the mode in which the radio link 354 terminal is configured. The format is X plus Y. 355 X represent the number of bonded carrier terminations. 356 Y represent the number of protecting carrier 357 terminations."; 358 } 360 identity one-plus-zero { 361 base rlt-mode; 362 description 363 "1 carrier termination only."; 364 } 366 identity one-plus-one { 367 base rlt-mode; 368 description 369 "1 carrier termination 370 and 1 protecting carrier termination."; 371 } 373 identity two-plus-zero { 374 base rlt-mode; 375 description 376 "2 bonded carrier terminations."; 377 } 379 /* 380 * Coding and modulation identities 381 */ 383 identity coding-modulation { 384 description 385 "The coding and modulation schemes."; 386 } 387 identity half-bpsk-strong { 388 base coding-modulation; 389 description 390 "Half BPSK strong coding and modulation scheme."; 391 } 393 identity half-bpsk { 394 base coding-modulation; 395 description 396 "Half BPSK coding and modulation scheme."; 397 } 399 identity half-bpsk-light { 400 base coding-modulation; 401 description 402 "Half BPSK light coding and modulation scheme."; 403 } 405 identity bpsk-strong { 406 base coding-modulation; 407 description 408 "BPSK strong coding and modulation scheme."; 409 } 411 identity bpsk { 412 base coding-modulation; 413 description 414 "BPSK coding and modulation scheme."; 415 } 417 identity bpsk-light { 418 base coding-modulation; 419 description 420 "BPSK light coding and modulation scheme."; 421 } 423 identity qpsk { 424 base coding-modulation; 425 description 426 "QPSK coding and modulation scheme."; 427 } 429 identity qam-4-strong { 430 base coding-modulation; 431 description 432 "4 QAM strong coding and modulation scheme."; 433 } 434 identity qam-4 { 435 base coding-modulation; 436 description 437 "4 QAM coding and modulation scheme."; 438 } 440 identity qam-4-light { 441 base coding-modulation; 442 description 443 "4 QAM light coding and modulation scheme."; 444 } 446 identity qam-16-strong { 447 base coding-modulation; 448 description 449 "16 QAM strong coding and modulation scheme."; 450 } 452 identity qam-16 { 453 base coding-modulation; 454 description 455 "16 QAM coding and modulation scheme."; 456 } 458 identity qam-16-light { 459 base coding-modulation; 460 description 461 "16 QAM light coding and modulation scheme."; 462 } 464 identity qam-32-strong { 465 base coding-modulation; 466 description 467 "32 QAM strong coding and modulation scheme."; 468 } 470 identity qam-32 { 471 base coding-modulation; 472 description 473 "32 QAM coding and modulation scheme."; 474 } 476 identity qam-32-light { 477 base coding-modulation; 478 description 479 "32 QAM light coding and modulation scheme."; 480 } 481 identity qam-64-strong { 482 base coding-modulation; 483 description 484 "64 QAM strong coding and modulation scheme."; 485 } 487 identity qam-64 { 488 base coding-modulation; 489 description 490 "64 QAM coding and modulation scheme."; 491 } 493 identity qam-64-light { 494 base coding-modulation; 495 description 496 "64 QAM light coding and modulation scheme."; 497 } 499 identity qam-128-strong { 500 base coding-modulation; 501 description 502 "128 QAM strong coding and modulation scheme."; 503 } 505 identity qam-128 { 506 base coding-modulation; 507 description 508 "128 QAM coding and modulation scheme."; 509 } 511 identity qam-128-light { 512 base coding-modulation; 513 description 514 "128 QAM light coding and modulation scheme."; 515 } 517 identity qam-256-strong { 518 base coding-modulation; 519 description 520 "256 QAM strong coding and modulation scheme."; 521 } 523 identity qam-256 { 524 base coding-modulation; 525 description 526 "256 QAM coding and modulation scheme."; 527 } 528 identity qam-256-light { 529 base coding-modulation; 530 description 531 "256 QAM light coding and modulation scheme."; 532 } 534 identity qam-512-strong { 535 base coding-modulation; 536 description 537 "512 QAM strong coding and modulation scheme."; 538 } 540 identity qam-512 { 541 base coding-modulation; 542 description 543 "512 QAM coding and modulation scheme."; 544 } 546 identity qam-512-light { 547 base coding-modulation; 548 description 549 "512 QAM light coding and modulation scheme."; 550 } 552 identity qam-1024-strong { 553 base coding-modulation; 554 description 555 "1024 QAM strong coding and modulation scheme."; 556 } 558 identity qam-1024 { 559 base coding-modulation; 560 description 561 "1024 QAM coding and modulation scheme."; 562 } 564 identity qam-1024-light { 565 base coding-modulation; 566 description 567 "1024 QAM light coding and modulation scheme."; 568 } 570 identity qam-2048-strong { 571 base coding-modulation; 572 description 573 "2048 QAM strong coding and modulation scheme."; 574 } 575 identity qam-2048 { 576 base coding-modulation; 577 description 578 "2048 QAM coding and modulation scheme."; 579 } 581 identity qam-2048-light { 582 base coding-modulation; 583 description 584 "2048 QAM light coding and modulation scheme."; 585 } 587 identity qam-4096-strong { 588 base coding-modulation; 589 description 590 "4096 QAM strong coding and modulation scheme."; 591 } 593 identity qam-4096 { 594 base coding-modulation; 595 description 596 "4096 QAM coding and modulation scheme."; 597 } 599 identity qam-4096-light { 600 base coding-modulation; 601 description 602 "4096 QAM light coding and modulation scheme."; 603 } 605 /* 606 * Protection architecture type identities 607 */ 608 identity protection-architecture-type { 609 description 610 "protection architecture type"; 611 } 613 identity one-plus-one-type { 614 base protection-architecture-type; 615 description 616 "One carrier termination and 617 one protecting carrier termination."; 618 } 620 identity one-to-n-type { 621 base protection-architecture-type; 622 description 623 "One carrier termination protecting 624 n other carrier terminations."; 625 } 627 /* 628 * Protection states identities 629 */ 631 identity protection-states { 632 description 633 "Identities describing the status of the protection, 634 in a group of carrier terminations configured in 635 a radio link protection mode."; 636 } 638 identity unprotected { 639 base protection-states; 640 description "Not protected"; 641 } 643 identity protected { 644 base protection-states; 645 description "Protected"; 646 } 648 identity unable-to-protect { 649 base protection-states; 650 description "Unable to protect"; 651 } 653 /* 654 * protection-external-commands identities 655 */ 657 identity protection-external-commands{ 658 description 659 "Protection external commands for trouble shooting purpose."; 660 } 662 identity manual-switch{ 663 base protection-external-commands; 664 description 665 "A switch action initiated by an operator command. It switches 666 normal traffic signal to the protection transport entity."; 667 } 669 identity forced-switch{ 670 base protection-external-commands; 671 description 672 "A switch action initiated by an operator command. It switches 673 normal traffic signal to the protection transport entity and 674 forces it to remain on that entity even when criteria for 675 switching back to the orignal entity are fulfilled."; 676 } 678 /* 679 * TDM-type identities 680 */ 682 identity tdm-type { 683 description 684 "A description of the type of TDM connection, 685 also indicating the supported capacity of the 686 connection."; 687 } 689 identity E1 { 690 base tdm-type; 691 description 692 "E1 connection, 2,048 Mbit/s."; 693 } 695 identity STM-1 { 696 base tdm-type; 697 description 698 "STM-1 connection, 155,52 Mbit/s."; 699 } 701 /* 702 * Typedefs 703 */ 705 typedef power { 706 type decimal64 { 707 fraction-digits 1; 708 } 709 description 710 "Type used for power values, selected and measured."; 711 } 713 /* 714 * Radio Link Terminal (RLT) - Configuration data nodes 715 */ 717 augment "/if:interfaces/if:interface" { 718 when "if:type = 'mrl:radio-link-terminal'"; 719 description 720 "Addition of data nodes for radio link terminal to 721 the standard Interface data model, for interfaces of 722 the type 'radio-link-terminal'."; 724 leaf id { 725 type string; 726 default ""; 727 description 728 "ID of the radio link terminal. Used by far-end when 729 checking that it's connected to the correct RLT."; 730 } 732 leaf mode { 733 type identityref { 734 base rlt-mode; 735 } 736 mandatory true; 737 description 738 "A description of the mode in which the radio link 739 terminal is configured. The format is X plus Y. 740 X represent the number of bonded carrier terminations. 741 Y represent the number of protecting carrier 742 terminations."; 743 } 745 leaf-list carrier-terminations { 746 type if:interface-ref; 747 must "/if:interfaces/if:interface[if:name = current()]" 748 + "/if:type = 'mrl:carrier-termination'" { 749 description 750 "The type of interface must be 751 'carrier-termination'."; 752 } 753 min-elements 1; 754 description 755 "A list of references to carrier terminations 756 included in the radio link terminal."; 757 } 759 leaf-list rlp-groups { 760 type leafref { 761 path "/mrl:radio-link-protection-groups/" 762 + "mrl:radio-link-protection-group/mrl:name"; 763 } 764 description 765 "A list of references to the carrier termination 766 groups configured for radio link protection in this 767 radio link terminal."; 768 } 770 leaf-list xpic-pairs { 771 if-feature xpic; 772 type leafref { 773 path "/mrl:xpic-pairs/mrl:xpic-pair/mrl:name"; 774 } 775 description 776 "A list of references to the XPIC pairs used in this 777 radio link terminal. One pair can be used by two 778 terminals."; 779 } 781 leaf mimo-group { 782 if-feature mimo; 783 type leafref { 784 path "/mrl:mimo-groups/mrl:mimo-group/mrl:name"; 785 } 786 description 787 "A reference to the MIMO group used in this 788 radio link terminal. One group can be used by more 789 than one terminal."; 790 } 792 list tdm-connections { 793 if-feature tdm; 794 key "tdm-type"; 795 description 796 "A list stating the number of active TDM connections of 797 a specified tdm-type that is configured to be supported 798 by the RLT."; 799 leaf tdm-type { 800 type identityref { 801 base tdm-type; 802 } 803 description 804 "The type of TDM connection, which also indicates 805 the supported capacity."; 806 } 807 leaf tdm-connections { 808 type uint16; 809 mandatory true; 810 description "Number of connections of the specified type."; 811 } 812 } 813 } 814 /* 815 * Carrier Termination - Configuration data nodes 816 */ 818 augment "/if:interfaces/if:interface" { 819 when "if:type = 'mrl:carrier-termination'"; 820 description 821 "Addition of data nodes for carrier termination to the 822 standard Interface data model, for interfaces of the type 823 'carrier-termination'."; 825 leaf carrier-id { 826 type string; 827 default "A"; 828 description 829 "ID of the carrier. (e.g. A, B, C or D) 830 Used in XPIC & MIMO configurations to check that the 831 carrier termination is connected to the correct far-end 832 carrier termination. Should be the same carrier ID on 833 both sides of the hop. 834 Defaulted when not MIMO or XPIC."; 835 } 837 leaf tx-enabled { 838 type boolean; 839 default "false"; 840 description 841 "Disables (false) or enables (true) the transmitter. 842 Only applicable when the interface is enabled 843 (interface:enabled = true) otherwise it's always 844 disabled."; 845 } 847 leaf tx-frequency { 848 type uint32; 849 units "kHz"; 850 mandatory true; 851 description 852 "Selected transmitter frequency."; 853 } 855 leaf rx-frequency { 856 type uint32; 857 units "kHz"; 858 description 859 "Selected receiver frequency. 860 Overrides existing value in duplex-distance. 861 Calculated from tx-frequency and duplex-distance if 862 only duplex-distance is configured. 863 Must match duplex-distance if both leaves are 864 configured in a single operation."; 865 } 867 leaf duplex-distance { 868 type uint32; 869 units "kHz"; 870 description 871 "Distance between Tx & Rx frequencies. 872 Used to calculate rx-frequency when 873 rx-frequency is not specifically configured. 874 Overrides existing value in rx-frequency. 875 Calculated from tx-frequency and rx-frequency if only 876 rx-frequency is configured. 877 Must match rx-frequency if both leaves are configured 878 in a single operation."; 879 } 881 leaf channel-separation { 882 type uint32; 883 units "kHz"; 884 mandatory true; 885 description 886 "The amount of bandwidth allocated to a carrier."; 887 } 889 leaf polarization { 890 type enumeration { 891 enum "horizontal" { 892 description "Horizontal polarization."; 893 } 894 enum "vertical" { 895 description "Vertical polarization."; 896 } 897 enum "not-specified" { 898 description "Polarization not specified."; 899 } 900 } 901 default "not-specified"; 902 description 903 "Polarization - A textual description for info only."; 904 } 906 leaf power-mode { 907 type enumeration { 908 enum rtpc { 909 description "Remote Transmit Power Control (RTPC)."; 911 } 912 enum atpc { 913 description "Automatic Transmit Power Control (ATPC)."; 914 } 915 } 916 mandatory true; 917 description 918 "A choice of Remote Transmit Power Control (RTPC) 919 or Automatic Transmit Power Control (ATPC)."; 920 } 922 leaf selected-output-power { 923 type power { 924 range "-99..40"; 925 } 926 units "dBm"; 927 mandatory true; 928 description 929 "Selected output power in RTPC mode and selected maximum 930 output power in ATPC mode. Minimum ouput power in ATPC mode 931 is the same as the system capability, 932 available-min-output-power."; 933 } 935 leaf atpc-lower-threshold { 936 when "../power-mode = 'atpc'"; 937 type power { 938 range "-99..-30"; 939 } 940 units "dBm"; 941 mandatory true; 942 description 943 "The lower threshold for the input power at far-end used in 944 the ATPC mode."; 945 } 947 leaf atpc-upper-threshold { 948 when "../power-mode = 'atpc'"; 949 type power { 950 range "-99..-30"; 951 } 952 units "dBm"; 953 mandatory true; 954 description 955 "The upper threshold for the input power at far-end used in 956 the ATPC mode."; 957 } 958 leaf coding-modulation-mode { 959 type enumeration { 960 enum fixed { 961 description "Fixed coding/modulation."; 962 } 963 enum adaptive { 964 description "Adaptive coding/modulation."; 965 } 966 } 967 mandatory true; 968 description 969 "A selection of fixed or 970 adaptive coding/modulation mode."; 971 } 973 leaf selected-cm { 974 when "../coding-modulation-mode = 'fixed'"; 975 type identityref { 976 base coding-modulation; 977 } 978 mandatory true; 979 description 980 "Selected fixed coding/modulation."; 981 } 983 leaf selected-min-acm { 984 when "../coding-modulation-mode = 'adaptive'"; 985 type identityref { 986 base coding-modulation; 987 } 988 mandatory true; 989 description 990 "Selected minimum coding/modulation. 991 Adaptive coding/modulation shall not go 992 below this value."; 993 } 995 leaf selected-max-acm { 996 when "../coding-modulation-mode = 'adaptive'"; 997 type identityref { 998 base coding-modulation; 999 } 1000 mandatory true; 1001 description 1002 "Selected maximum coding/modulation. 1003 Adaptive coding/modulation shall not go 1004 above this value."; 1005 } 1006 leaf if-loop { 1007 type enumeration { 1008 enum disabled { 1009 description "Disables the IF Loop."; 1010 } 1011 enum client { 1012 description "Loops the signal back to the client side."; 1013 } 1014 enum radio { 1015 description "Loops the signal back to the radio side."; 1016 } 1017 } 1018 default "disabled"; 1019 description 1020 "Enable (client/radio) or disable (disabled) the IF loop, 1021 which loops the signal back to the client side or 1022 the radio side."; 1023 } 1025 leaf rf-loop { 1026 type enumeration { 1027 enum disabled { 1028 description "Disables the RF Loop."; 1029 } 1030 enum client { 1031 description "Loops the signal back to the client side."; 1032 } 1033 enum radio { 1034 description "Loops the signal back to the radio side."; 1035 } 1036 } 1037 default "disabled"; 1038 description 1039 "Enable (client/radio) or disable (disabled) the RF loop, 1040 which loops the signal back to the client side or 1041 the radio side."; 1042 } 1044 container ct-performance-thresholds { 1045 description 1046 "Specification of thresholds for when alarms should 1047 be sent and cleared for various performance counters."; 1049 leaf received-level-alarm-threshold { 1050 type power { 1051 range "-99..-30"; 1052 } 1053 units "dBm"; 1054 default "-99"; 1055 description 1056 "An alarm is sent when the received power level is 1057 below the specified threshold."; 1058 } 1060 leaf transmitted-level-alarm-threshold { 1061 type power { 1062 range "-99..40"; 1063 } 1064 units "dBm"; 1065 default "-99"; 1066 description 1067 "An alarm is sent when the transmitted power level is 1068 below the specified threshold."; 1069 } 1071 leaf ber-alarm-threshold { 1072 type enumeration { 1073 enum "10e-9" { 1074 description "Threshold at 10e-9."; 1075 } 1076 enum "10e-8" { 1077 description "Threshold at 10e-8."; 1078 } 1079 enum "10e-7" { 1080 description "Threshold at 10e-7."; 1081 } 1082 enum "10e-6" { 1083 description "Threshold at 10e-6."; 1084 } 1085 enum "10e-5" { 1086 description "Threshold at 10e-5."; 1087 } 1088 enum "10e-4" { 1089 description "Threshold at 10e-4."; 1090 } 1091 enum "10e-3" { 1092 description "Threshold at 10e-3."; 1093 } 1094 enum "10e-2" { 1095 description "Threshold at 10e-2."; 1096 } 1097 enum "10e-1" { 1098 description "Threshold at 10e-1."; 1099 } 1100 } 1101 default "10e-6"; 1102 description 1103 "Specification of at which BER an alarm should 1104 be raised."; 1105 } 1106 } 1107 } 1109 /* 1110 * Radio Link Terminal - Operational state data nodes 1111 * Currently nothing in addition to the general 1112 * interface-state model. 1113 */ 1115 /* 1116 * Carrier Termination - Operational state data nodes 1117 */ 1119 augment "/if:interfaces-state/if:interface" { 1120 when "if:type = 'mrl:carrier-termination'"; 1121 description 1122 "Addition of state data nodes for carrier termination to 1123 the standard Interface state data model, for interfaces of 1124 the type 'carrier-termination'."; 1126 leaf tx-oper-status { 1127 type enumeration { 1128 enum "off" { 1129 description "Transmitter is off."; 1130 } 1131 enum "on" { 1132 description "Transmitter is on."; 1133 } 1134 enum "standby" { 1135 description "Transmitter is in standby."; 1136 } 1137 } 1138 description 1139 "Shows the operative status of the transmitter."; 1140 } 1142 leaf actual-transmitted-level { 1143 type power { 1144 range "-99..40"; 1145 } 1146 units "dBm"; 1147 description 1148 "Actual transmitted power level (0.1 dBm resolution)."; 1149 } 1150 leaf actual-received-level { 1151 type power { 1152 range "-99..-20"; 1153 } 1154 units "dBm"; 1155 description 1156 "Actual received power level (0.1 dBm resolution)."; 1157 } 1159 leaf actual-tx-cm { 1160 type identityref { 1161 base coding-modulation; 1162 } 1163 description 1164 "Actual coding/modulation in transmitting direction."; 1165 } 1167 leaf actual-snir { 1168 type decimal64 { 1169 fraction-digits 1; 1170 range "0..99"; 1171 } 1172 units "dB"; 1173 description 1174 "Actual signal to noise plus interference ratio. 1175 (0.1 dB resolution)."; 1176 } 1178 leaf actual-xpi { 1179 if-feature xpic; 1180 type decimal64 { 1181 fraction-digits 1; 1182 range "0..99"; 1183 } 1184 units "dB"; 1185 description 1186 "The actual carrier to cross-polar interference. 1187 Only valid if XPIC is enabled. (0.1 dB resolution)."; 1188 } 1190 container capabilities { 1191 description 1192 "Capabilities of the the installed equipment and 1193 some selected configurations."; 1195 leaf min-tx-frequency { 1196 type uint32; 1197 units "kHz"; 1198 description 1199 "Minimum Tx frequency possible to use."; 1200 } 1202 leaf max-tx-frequency { 1203 type uint32; 1204 units "kHz"; 1205 description 1206 "Maximum Tx frequency possible to use."; 1207 } 1209 leaf min-rx-frequency { 1210 type uint32; 1211 units "kHz"; 1212 description 1213 "Minimum Rx frequency possible to use."; 1214 } 1216 leaf max-rx-frequency { 1217 type uint32; 1218 units "kHz"; 1219 description 1220 "Maximum Tx frequency possible to use."; 1221 } 1223 leaf available-min-output-power { 1224 type power; 1225 units "dBm"; 1226 description 1227 "The minimum output power supported."; 1228 } 1230 leaf available-max-output-power { 1231 type power; 1232 units "dBm"; 1233 description 1234 "The maximum output power supported."; 1235 } 1237 leaf available-min-acm { 1238 type identityref { 1239 base coding-modulation; 1240 } 1241 description 1242 "Minimum coding-modulation possible to use."; 1243 } 1245 leaf available-max-acm { 1246 type identityref { 1247 base coding-modulation; 1248 } 1249 description 1250 "Maximum coding-modulation possible to use."; 1251 } 1252 } 1253 } 1255 augment "/if:interfaces-state/if:interface/if:statistics" { 1256 when "../if:type = 'mrl:carrier-termination'"; 1257 description 1258 "Addition of state data nodes in the container statistics 1259 for carrier terminations to the standard Interface data 1260 model, for interfaces of the type 'carrier-termination'."; 1262 leaf bbe { 1263 type yang:counter32; 1264 units "number of block errors"; 1265 description 1266 "Number of Background Block Errors (BBE) during the 1267 interval. A BBE is an errored block not occurring as 1268 part of an SES."; 1269 } 1271 leaf es { 1272 type yang:counter32; 1273 units "seconds"; 1274 description 1275 "Number of Errored Seconds (ES) since last reset. 1276 An ES is a one-second period with one or more errored 1277 blocks or at least one defect."; 1278 } 1280 leaf ses { 1281 type yang:counter32; 1282 units "seconds"; 1283 description 1284 "Number of Severely Errored Seconds (SES) during the 1285 interval. SES is a one-second period which contains 1286 equal or more than 30% errored blocks or at least 1287 one defect. SES is a subset of ES."; 1288 } 1290 leaf uas { 1291 type yang:counter32; 1292 units "seconds"; 1293 description 1294 "Number of Unavailable Seconds (UAS), that is, the 1295 total time that the node has been unavailable during 1296 a fixed measurement interval."; 1297 } 1299 leaf min-rltm { 1300 type power { 1301 range "-99..-20"; 1302 } 1303 units "dBm"; 1304 description 1305 "Minimum received power level since last reset."; 1306 } 1308 leaf max-rltm { 1309 type power { 1310 range "-99..-20"; 1311 } 1312 units "dBm"; 1313 description 1314 "Maximum received power level since last reset."; 1315 } 1317 leaf min-tltm { 1318 type power { 1319 range "-99..40"; 1320 } 1321 units "dBm"; 1322 description 1323 "Minimum transmitted power level since last reset."; 1324 } 1326 leaf max-tltm { 1327 type power { 1328 range "-99..40"; 1329 } 1330 units "dBm"; 1331 description 1332 "Maximum transmitted power level since last reset."; 1333 } 1334 } 1336 /* 1337 * Radio Link Protection Groups - Configuration data nodes 1338 */ 1340 container radio-link-protection-groups { 1341 description 1342 "Configuration of radio link protected groups (1+1) of 1343 carrier terminations in a radio link. More than one 1344 protected group per radio-link-terminal is allowed."; 1346 list radio-link-protection-group { 1347 key "name"; 1348 description 1349 "List of protected groups of carrier terminations 1350 in a radio link."; 1352 leaf name { 1353 type string; 1354 description 1355 "Name used for identification of the radio 1356 link protection group"; 1357 } 1359 leaf protection-architecture-type { 1360 type identityref{ 1361 base protection-architecture-type; 1362 } 1363 default "one-plus-one-type"; 1364 description 1365 "The type of protection architecture used, 1366 e.g. one carrier termination protecting one or 1367 several other carrier terminations."; 1368 } 1370 leaf protection-operation-type { 1371 type enumeration { 1372 enum "non-revertive" { 1373 description 1374 "In non revertive operation, the traffic 1375 does not return to the working carrier termination 1376 if the switch requests are terminated. "; 1377 } 1378 enum "revertive" { 1379 description 1380 "In revertive operation, the traffic always 1381 returns to (or remains on) the working 1382 carrier termination if the switch requests are 1383 terminated. "; 1384 } 1385 } 1386 default "non-revertive"; 1387 description 1388 "The type of protection operation, i.e. revertive 1389 or non-revertive operation."; 1391 } 1393 leaf-list working-entity { 1394 when "../protection-operation-type = 'revertive'"; 1395 type if:interface-ref; 1396 must "/if:interfaces/if:interface[if:name = current()]" 1397 + "/if:type = 'mrl:carrier-termination'" { 1398 description 1399 "The type of a working-entity must be 1400 'carrier-termination'."; 1401 } 1402 min-elements 1; 1403 description 1404 "The carrier terminations over which the traffic 1405 normally should be transported over when there 1406 is no need to use the protecting carrier termination."; 1407 } 1409 leaf revertive-wait-to-restore { 1410 when "../protection-operation-type = 'revertive'"; 1411 type uint16; 1412 units "seconds"; 1413 default "0"; 1414 description 1415 "The time to wait before switching back to the 1416 working carrier termination if protection-operation-type 1417 is revertive."; 1418 } 1420 leaf-list radio-link-protection-members { 1421 type if:interface-ref; 1422 must "/if:interfaces/if:interface[if:name = current()]" 1423 + "/if:type = 'mrl:carrier-termination'" { 1424 description 1425 "The type of a protection member must be 1426 'carrier-termination'."; 1427 } 1428 min-elements 2; 1429 description 1430 "Association to a group of carrier terminations 1431 configured for radio link protection and used in 1432 the radio link terminal."; 1433 } 1435 action protection-external-commands { 1436 input { 1437 leaf protection-external-command { 1438 type identityref { 1439 base protection-external-commands; 1440 } 1441 description 1442 "Execution of protection external commands for 1443 trouble shooting purpose."; 1444 } 1445 } 1446 } 1447 } 1448 } 1450 /* 1451 * Radio Link Protection Groups - Operational state data nodes 1452 */ 1454 container radio-link-protection-groups-state { 1455 config false; 1456 description 1457 "State data for radio link protected groups of 1458 carrier terminations in a radio link."; 1460 list radio-link-protection-group { 1461 key "name"; 1462 description 1463 "List of protected groups of carrier terminations 1464 in a radio link."; 1466 leaf name { 1467 type string; 1468 description 1469 "Name used for identification of the radio 1470 link protection group."; 1471 } 1473 leaf protection-status { 1474 type identityref { 1475 base protection-states; 1476 } 1477 description 1478 "Status of the protection, in a group of carrier 1479 terminations configured in a radio link protection 1480 mode."; 1481 } 1482 } 1483 } 1485 /* 1486 * XPIC & MIMO groups - Configuration data nodes 1487 */ 1489 container xpic-pairs { 1490 if-feature xpic; 1491 description 1492 "Configuration of carrier termination pairs 1493 for operation in XPIC mode."; 1495 list xpic-pair { 1496 key "name"; 1497 description 1498 "List of carrier termination pairs in XPIC mode."; 1500 leaf name { 1501 type string; 1502 description 1503 "Name used for identification of the XPIC pair."; 1504 } 1506 leaf enabled { 1507 type boolean; 1508 default "false"; 1509 description 1510 "Enable(true)/disable(false) XPIC"; 1511 } 1513 leaf-list xpic-members { 1514 type if:interface-ref; 1515 must "/if:interfaces/if:interface[if:name = current()]" 1516 + "/if:type = 'mrl:carrier-termination'" { 1517 description 1518 "The type of a xpic-member must be 1519 'carrier-termination'."; 1520 } 1521 min-elements 2; 1522 max-elements 2; 1523 description 1524 "Association to XPIC pairs used in the radio link 1525 terminal."; 1526 } 1527 } 1528 } 1530 container mimo-groups { 1531 if-feature mimo; 1532 description 1533 "Configuration of carrier terminations 1534 for operation in MIMO mode."; 1536 list mimo-group { 1537 key "name"; 1538 description 1539 "List of carrier terminations in MIMO mode."; 1541 leaf name { 1542 type string; 1543 description 1544 "Name used for identification of the MIMO group."; 1545 } 1547 leaf enabled { 1548 type boolean; 1549 default "false"; 1550 description 1551 "Enable(true)/disable(false) MIMO"; 1552 } 1554 leaf-list mimo-members { 1555 type if:interface-ref; 1556 must "/if:interfaces/if:interface[if:name = current()]" 1557 + "/if:type = 'mrl:carrier-termination'" { 1558 description 1559 "The type of a mimo-member must be 1560 'carrier-termination'."; 1561 } 1562 min-elements 2; 1563 description 1564 "Association to a MIMO group if used in the radio 1565 link terminal."; 1566 } 1567 } 1568 } 1570 } 1572 1574 5. Security Considerations 1576 The YANG module defined in this memo is designed to be accessed via 1577 the NETCONF protocol [RFC6241]. The lowest NETCONF layer is the 1578 secure transport layer and the mandatory-to-implement secure 1579 transport is SSH [RFC6242]. The NETCONF access control model 1580 [RFC6536] provides the means to restrict access for particular 1581 NETCONF users to a pre-configured subset of all available NETCONF 1582 protocol operations and content. 1584 There are a number of data nodes defined in the YANG module which are 1585 writable/creatable/deletable (i.e., config true, which is the 1586 default). These data nodes may be considered sensitive or vulnerable 1587 in some network environments. Write operations (e.g., ) 1588 to these data nodes without proper protection can have a negative 1589 effect on network operations. 1591 The security considerations of [RFC7223] also apply to this document. 1593 6. IANA Considerations 1595 TBD. 1597 7. References 1599 7.1. Normative References 1601 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1602 Requirement Levels", BCP 14, RFC 2119, 1603 DOI 10.17487/RFC2119, March 1997, 1604 . 1606 [RFC7223] Bjorklund, M., "A YANG Data Model for Interface 1607 Management", RFC 7223, DOI 10.17487/RFC7223, May 2014, 1608 . 1610 [EN 302 217-2] 1611 ETSI, "Fixed Radio Systems; Characteristics and 1612 requirements for point to-point equipment and antennas; 1613 Part 2: Digital systems operating in frequency bands from 1614 1 GHz to 86 GHz; Harmonised Standard covering the 1615 essential requirements of article 3.2 of Directive 1616 2014/53/EU", EN 302 217-2 V3.1.1, May 2017. 1618 7.2. Informative References 1620 [I-D.ahlberg-ccamp-microwave-radio-link] 1621 Ahlberg, J., Carlson, J., Lund, H., Olausson, T., Ye, M., 1622 and M. Vaupotic, "Microwave Radio Link YANG Data Models", 1623 draft-ahlberg-ccamp-microwave-radio-link-01 (work in 1624 progress), May 2016. 1626 [I-D.ietf-ccamp-microwave-framework] 1627 Ahlberg, J., Contreras, L., Ye, M., Vaupotic, M., 1628 Tantsura, J., Kawada, K., Li, X., Akiyoshi, I., and C. 1629 Bernardos, "A framework for Management and Control of 1630 microwave and millimeter wave interface parameters", 1631 draft-ietf-ccamp-microwave-framework-01 (work in 1632 progress), June 2017. 1634 [ONF-model] "Microwave Modeling - ONF Wireless Transport Group", 1635 May 2016. 1637 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 1638 and A. Bierman, Ed., "Network Configuration Protocol 1639 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 1640 . 1642 [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure 1643 Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, 1644 . 1646 [RFC6536] Bierman, A. and M. Bjorklund, "Network Configuration 1647 Protocol (NETCONF) Access Control Model", RFC 6536, 1648 DOI 10.17487/RFC6536, March 2012, 1649 . 1651 Authors' Addresses 1653 Jonas Ahlberg 1654 Ericsson AB 1655 Lindholmspiren 11 1656 Goeteborg 417 56 1657 Sweden 1659 Email: jonas.ahlberg@ericsson.com 1661 Ye Min 1662 Huawei Technologies 1663 No.1899, Xiyuan Avenue 1664 Chengdu 611731 1665 P.R.China 1667 Email: amy.yemin@huawei.com 1669 Xi Li 1670 NEC Laboratories Europe 1671 Kurfursten-Anlage 36 1672 Heidelberg 69115 1673 Germany 1675 Email: Xi.Li@neclab.eu 1677 Koji Kawada 1678 NEC Corporation 1679 1753, Shimonumabe Nakahara-ku 1680 Kawasaki, Kanagawa 211-8666 1681 Japan 1683 Email: k-kawada@ah.jp.nec.com 1684 Carlos J. Bernardos 1685 Universidad Carlos III de Madrid 1686 Av. Universidad, 30 1687 Leganes, Madrid 28911 1688 Spain 1690 Email: cjbc@it.uc3m.es 1692 Daniela Spreafico 1693 Nokia - IT 1694 Via Energy Park, 14 1695 Vimercate (MI) 20871 1696 Italy 1698 Email: daniela.spreafico@nokia.com 1700 Marko Vaupotic 1701 Aviat Networks 1702 Motnica 9 1703 Trzin-Ljubljana 1236 1704 Slovenia 1706 Email: Marko.Vaupotic@Aviatnet.com