ietf-bfd-mpls

This module contains the YANG definition for BFD parameters for MPLS LSPs as per RFC 5884. Copyright (c) 2022 IETF Trust and th...

  • Version: 2022-09-22

    ietf-bfd-mpls@2022-09-22


    
      module ietf-bfd-mpls {
    
        yang-version 1.1;
    
        namespace
          "urn:ietf:params:xml:ns:yang:ietf-bfd-mpls";
    
        prefix bfd-mpls;
    
        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-inet-types {
          prefix inet;
          reference
            "RFC 6991: Common YANG Data Types";
    
    
        }
        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:  <mailto:rtg-bfd@ietf.org>
    
         Editor:   Reshad Rahman
                   <mailto:reshad@yahoo.com>
    
         Editor:   Lianshu Zheng
                   <mailto:veronique_cheng@hotmail.com>
    
         Editor:   Mahesh Jethanandani
                   <mailto:mjethanandani@gmail.com>";
    
        description
          "This module contains the YANG definition for BFD parameters for
         MPLS LSPs as per RFC 5884.
    
         Copyright (c) 2022 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
         (https://trustee.ietf.org/license-info).
    
         This version of this YANG module is part of RFC 9314; see the
         RFC itself for full legal notices.";
    
        reference
          "RFC 5884: Bidirectional Forwarding Detection (BFD)
          for MPLS Label Switched Paths (LSPs)
           RFC 9314: YANG Data Model for Bidirectional Forwarding
          Detection (BFD)";
    
    
        revision "2022-09-22" {
          description
            "Updates to use base-cfg-parms instead of client-cfg-parms,
           and add the enabled flag.";
          reference
            "RFC 9314: YANG Data Model for Bidirectional Forwarding
            Detection (BFD).";
    
        }
    
        revision "2021-10-21" {
          description "Initial revision.";
          reference
            "RFC 9127: YANG Data Model for Bidirectional Forwarding
            Detection (BFD)";
    
        }
    
    
        identity encap-gach {
          base bfd-types:encap-type;
          description
            "BFD with Generic Associated Channel (G-ACh) encapsulation
           as per RFC 5586.";
          reference
            "RFC 5586: MPLS Generic Associated Channel";
    
        }
    
        identity encap-ip-gach {
          base bfd-types:encap-type;
          description
            "BFD with IP and G-ACh encapsulation as per RFC 5586.";
        }
    
        grouping encap-cfg {
          description
            "Configuration for BFD encapsulation.";
          leaf encap {
            type identityref {
              base bfd-types:encap-type;
            }
            default "bfd-types:encap-ip";
            description "BFD encapsulation.";
          }
        }  // grouping encap-cfg
    
        grouping mpls-dest-address {
          description
            "Destination address as per RFC 5884.";
          reference
            "RFC 5884: Bidirectional Forwarding Detection (BFD)
            for MPLS Label Switched Paths (LSPs)";
    
          leaf mpls-dest-address {
            type inet:ip-address;
            config false;
            description
              "Destination address as per RFC 5884.
             Needed if IP encapsulation is used.";
          }
        }  // grouping mpls-dest-address
    
        augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bfd:bfd {
          description
            "BFD augmentation for MPLS.";
          container mpls {
            description
              "BFD MPLS top-level container.";
            uses bfd-types:session-statistics-summary;
    
            container egress {
              description
                "Egress configuration.";
              leaf enabled {
                type boolean;
                default "false";
                description
                  "Indicates whether BFD over MPLS is enabled.";
              }
    
              uses bfd-types:base-cfg-parms;
    
              uses bfd-types:auth-parms;
            }  // container egress
    
            container session-groups {
              description
                "BFD-over-MPLS session groups.";
              list session-group {
                key "mpls-fec";
                description
                  "Group of BFD MPLS sessions (for ECMP).  A group of
                 sessions is for one FEC.  Each session has a different
                 field in the UDP/IP header for ECMP.";
                leaf mpls-fec {
                  type inet:ip-prefix;
                  description "MPLS FEC.";
                }
    
                uses bfd-types:common-cfg-parms;
    
                list sessions {
                  config false;
                  description
                    "The BFD sessions for an MPLS FEC.  The local
                   discriminator is unique for each session in the
                   group.";
                  uses bfd-types:all-session;
    
                  uses bfd-mpls:mpls-dest-address;
                }  // list sessions
              }  // list session-group
            }  // container session-groups
          }  // container mpls
        }
    
        notification mpls-notification {
          description
            "Notification for BFD-over-MPLS FEC session state change.
           An implementation may rate-limit notifications, e.g., when a
           session is continuously changing state.";
          uses bfd-types:notification-parms;
    
          leaf mpls-dest-address {
            type inet:ip-address;
            description
              "Destination address as per RFC 5884.
             Needed if IP encapsulation is used.";
          }
        }  // notification mpls-notification
      }  // module ietf-bfd-mpls
    

© 2023 YumaWorks, Inc. All rights reserved.