ietf-bfd-unsolicited

This module contains the YANG definition for unsolicited BFD, as per RFC 9468. Copyright (c) 2023 IETF Trust and the persons id...

  • Version: 2023-08-31

    ietf-bfd-unsolicited@2023-08-31


    
      module ietf-bfd-unsolicited {
    
        yang-version 1.1;
    
        namespace
          "urn:ietf:params:xml:ns:yang:ietf-bfd-unsolicited";
    
        prefix bfd-unsol;
    
        import ietf-bfd-types {
          prefix bfd-types;
          reference
            "RFC 9314: YANG Data Model for Bidirectional Forwarding
            Detection (BFD)";
    
    
        }
        import ietf-bfd {
          prefix bfd;
          reference
            "RFC 9314: YANG Data Model for Bidirectional Forwarding
            Detection (BFD)";
    
    
        }
        import ietf-bfd-ip-sh {
          prefix bfd-ip-sh;
          reference
            "RFC 9314: YANG Data Model for Bidirectional Forwarding
            Detection (BFD)";
    
    
        }
        import ietf-routing {
          prefix rt;
          reference
            "RFC 8349: A YANG Data Model for Routing Management
            (NMDA Version)";
    
    
        }
    
        organization "IETF BFD Working Group";
    
        contact
          "WG Web:   <https://datatracker.ietf.org/wg/bfd/>
         WG List:  <rtg-bfd@ietf.org>
    
         Editors:  Enke Chen (enchen@paloaltonetworks.com),
                   Naiming Shen (naiming@zededa.com),
                   Robert Raszuk (robert@raszuk.net),
                   Reshad Rahman (reshad@yahoo.com)";
    
        description
          "This module contains the YANG definition for unsolicited BFD,
         as per RFC 9468.
    
         Copyright (c) 2023 IETF Trust and the persons
         identified as authors of the code.  All rights reserved.
    
         Redistribution and use in source and binary forms, with or
         without modification, is permitted pursuant to, and subject
         to the license terms contained in, the Revised BSD License
         set forth in Section 4.c of the IETF Trust's Legal Provisions
         Relating to IETF Documents
         (http://trustee.ietf.org/license-info).
    
         This version of this YANG module is part of RFC 9468; see
         the RFC itself for full legal notices.";
    
        reference
          "RFC 9468: Unsolicited Bidirectional Forwarding Detection
          (BFD) for Sessionless Applications";
    
    
        revision "2023-08-31" {
          description "Initial revision.";
          reference
            "RFC 9468: Unsolicited Bidirectional Forwarding Detection (BFD)
            for Sessionless Applications";
    
        }
    
    
        feature unsolicited-params-per-interface {
          description
            "This feature indicates that the server supports per-interface
           parameters for unsolicited sessions.";
          reference
            "RFC 9468: Unsolicited Bidirectional Forwarding Detection (BFD)
            for Sessionless Applications";
    
        }
    
        identity role {
          description
            "Base identity from which all roles are derived.
           Role of local system during BFD session initialization.";
        }
    
        identity active {
          base bfd-unsol:role;
          description "Active role.";
          reference
            "RFC 5880: Bidirectional Forwarding Detection (BFD),
            Section 6.1";
    
        }
    
        identity passive {
          base bfd-unsol:role;
          description "Passive role.";
          reference
            "RFC 5880: Bidirectional Forwarding Detection (BFD),
            Section 6.1";
    
        }
    
        augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bfd:bfd/bfd-ip-sh:ip-sh {
          description
            "Augmentation for unsolicited BFD parameters.";
          container unsolicited {
            description
              "BFD IP single-hop unsolicited top-level container.";
            uses bfd-types:base-cfg-parms;
          }  // container unsolicited
        }
    
        augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bfd:bfd/bfd-ip-sh:ip-sh/bfd-ip-sh:interfaces {
          description
            "Augmentation for unsolicited BFD on IP single-hop
           interface.";
          container unsolicited {
            description
              "BFD IP single-hop interface unsolicited top-level
             container.";
            leaf enabled {
              type boolean;
              default "false";
              description
                "Unsolicited BFD is enabled on this interface.";
            }
    
            leaf local-multiplier {
              if-feature bfd-unsol:unsolicited-params-per-interface;
              type bfd-types:multiplier;
              description
                "Multiplier transmitted by the local system.  Defaults to
               ../../unsolicited/local-multiplier.
               A multiplier configured under an interface takes
               precedence over the multiplier configured at the global
               level.";
            }
    
            choice interval-config-type {
              if-feature bfd-unsol:unsolicited-params-per-interface;
              description
                "Two interval values or one value used for both transmit
               and receive.  Defaults to
               ../../unsolicited/interval-config-type.  An interval
               configured under an interface takes precedence over any
               interval configured at the global level.";
              case tx-rx-intervals {
                leaf desired-min-tx-interval {
                  type uint32;
                  units "microseconds";
                  description
                    "Desired minimum transmit interval of control
                   packets.";
                }
    
                leaf required-min-rx-interval {
                  type uint32;
                  units "microseconds";
                  description
                    "Required minimum receive interval of control
                   packets.";
                }
              }  // case tx-rx-intervals
    
              case single-interval {
                if-feature bfd-types:single-minimum-interval;
                leaf min-interval {
                  type uint32;
                  units "microseconds";
                  description
                    "Desired minimum transmit interval and required
                   minimum receive interval of control packets.";
                }
              }  // case single-interval
            }  // choice interval-config-type
          }  // container unsolicited
        }
    
        augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bfd:bfd/bfd-ip-sh:ip-sh/bfd-ip-sh:sessions/bfd-ip-sh:session {
          description
            "Augmentation for unsolicited BFD on IP single-hop session.";
          leaf role {
            type identityref {
              base bfd-unsol:role;
            }
            config false;
            description "Role.";
          }
        }
      }  // module ietf-bfd-unsolicited
    

© 2023 YumaWorks, Inc. All rights reserved.