summaryrefslogtreecommitdiffstats
path: root/src/plugins/yang/openconfig/openconfig-bgp.yang
blob: 9331e9f504f29df946cefc5ae49d935172818472 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
module openconfig-bgp {

  yang-version "1";

  // namespace
  namespace "http://openconfig.net/yang/bgp";

  prefix "oc-bgp";

  // import some basic inet types
  import openconfig-extensions { prefix oc-ext; }

  // Include the OpenConfig BGP submodules
  // Common: defines the groupings that are common across more than
  //         one context (where contexts are neighbor, group, global)
  include openconfig-bgp-common;
  // Multiprotocol: defines the groupings that are common across more
  //                than one context, and relate to Multiprotocol
  include openconfig-bgp-common-multiprotocol;
  // Structure: defines groupings that are shared but are solely used for
  //            structural reasons.
  include openconfig-bgp-common-structure;
  // Include peer-group/neighbor/global - these define the groupings
  // that are specific to one context
  include openconfig-bgp-peer-group;
  include openconfig-bgp-neighbor;
  include openconfig-bgp-global;

  // meta
  organization
    "OpenConfig working group";

  contact
    "OpenConfig working group
    netopenconfig@googlegroups.com";

  description
    "This module describes a YANG model for BGP protocol
    configuration.It is a limited subset of all of the configuration
    parameters available in the variety of vendor implementations,
    hence it is expected that it would be augmented with vendor-
    specific configuration data as needed. Additional modules or
    submodules to handle other aspects of BGP configuration,
    including policy, VRFs, VPNs, and additional address families
    are also expected.

    This model supports the following BGP configuration level
    hierarchy:

      BGP
        |
        +-> [ global BGP configuration ]
          +-> AFI / SAFI global
        +-> peer group
          +-> [ peer group config ]
          +-> AFI / SAFI [ per-AFI overrides ]
        +-> neighbor
          +-> [ neighbor config ]
          +-> [ optional pointer to peer-group ]
          +-> AFI / SAFI [ per-AFI overrides ]";

  oc-ext:openconfig-version "5.0.1";

  revision "2018-08-20" {
    description
      "Correct description of AFI-SAFI enabled leaf.";
    reference "5.0.1";
  }

  revision "2018-04-11" {
    description
      "Correct naming of BGP maximum prefix warning percentage leaf.";
    reference "5.0.0";
  }

  revision "2018-03-20" {
    description
      "Added SR-TE policy SAFI";
    reference "4.1.0";
  }

  revision "2017-07-30" {
    description
      "Clarification of add-paths send-max leaf";
    reference "4.0.1";
  }

  revision "2017-07-10" {
    description
      "Add error notifications; moved add-paths config; add AS
      prepend policy features; removed unneeded config leaves";
    reference "4.0.0";
  }

  revision "2017-02-02" {
    description
      "Bugfix to remove remaining global-level policy data";
    reference "3.0.1";
  }

  revision "2017-01-26" {
    description
      "Add dynamic neighbor support, migrate to OpenConfig types";
    reference "3.0.0";
  }

  revision "2016-06-21" {
    description
      "OpenConfig BGP refactor";
    reference "2.1.1";
  }

  revision "2016-06-06" {
    description
      "OpenConfig public release";
    reference "2.1.0";
  }

  revision "2016-03-31" {
    description
      "OpenConfig public release";
    reference "2.0.1";
  }

  grouping bgp-top {
    description
      "Top-level grouping for the BGP model data";

    container bgp {
      description
        "Top-level configuration and state for the BGP router";

      container global {
        description
          "Global configuration for the BGP router";
          uses bgp-global-base;
      }

      container neighbors {
        description
          "Configuration for BGP neighbors";
        uses bgp-neighbor-list;
      }

      container peer-groups {
        description
          "Configuration for BGP peer-groups";
        uses bgp-peer-group-list;
      }
    }
  }

  uses bgp-top;

}