PageSourceSearch

https://openconfig.net/projects/

html openconfig.net collected 2026-09-24 08:49:26 UTC 12,255 bytes, 242 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en"><head>
3  <meta charset="utf-8">
4  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
5
6  
7  <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
8  
9  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css" integrity="sha512-SnH5WK+bZxgPHs44uWIX+LLJAJ9/2PkPKZ5QiAj6Ta86w+fsb2TkcmfRyVX3pBnMFcV7oQPJkl9QevSCWr3W6A==" crossorigin="anonymous" referrerpolicy="no-referrer" />
10  
11  
12  
13    <link class="markdown-style" rel="stylesheet" href="/third_party/ghm/github-markdown.css" type="text/css">
14  
15  
16  
17  
18  
19  <link rel="stylesheet" href="/css/oc-std.css" type="text/css">
20  
21  
22  
23  
24  <title>OpenConfig - OpenConfig Projects</title>
25</head>
26<body class="d-flex flex-column min-vh-100"><nav class="navbar navbar-expand-lg navbar-light sticky-top py-3" id="oc-main-nav">
27  <div class="container">
28    <a class="navbar-brand d-flex align-items-center" href="/">
29      <img class="oc-logo me-2" src="/img/oc-logo-accent.svg" alt="OpenConfig" style="height: 32px;" />
30      <span class="font-weight-bold text-dark h5 mb-0" style="font-weight: 700!important;">OpenConfig</span>
31    </a>
32    <button class="navbar-toggler border-0" type="button" data-bs-toggle="collapse" data-bs-target="#oc-navbar-main-collapse" aria-controls="oc-navbar-main-collapse" aria-expanded="false" aria-label="Toggle nav">
33      <span class="navbar-toggler-icon"></span>
34    </button>
35
36    <div class="collapse navbar-collapse justify-content-end" id="oc-navbar-main-collapse">
37      <ul class="navbar-nav align-items-center">
38        
39          
40            <li class="nav-item dropdown px-2">
41              <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown-projects" role="button" data-bs-toggle="dropdown" aria-expanded="false">
42                Projects
43              </a>
44              <ul class="dropdown-menu dropdown-menu-end shadow border-0" aria-labelledby="navbarDropdown-projects">
45                
46                  <li><a class="dropdown-item py-2" href="/projects/">Overview</a></li>
47                
48                  <li><a class="dropdown-item py-2" href="/projects/models/">Data models</a></li>
49                
50                  <li><a class="dropdown-item py-2" href="/rpc/">RPCs</a></li>
51                
52              </ul>
53            </li>
54          
55        
56          
57            <li class="nav-item px-2">
58              <a class="nav-link" href="/docs/"> Documentation</a>
59            </li>
60          
61        
62          
63            <li class="nav-item px-2">
64              <a class="nav-link" href="https://github.com/openconfig"><span class="fa-brands fa-github"></span> Code</a>
65            </li>
66          
67        
68          
69            <li class="nav-item dropdown px-2">
70              <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown-about" role="button" data-bs-toggle="dropdown" aria-expanded="false">
71                About
72              </a>
73              <ul class="dropdown-menu dropdown-menu-end shadow border-0" aria-labelledby="navbarDropdown-about">
74                
75                  <li><a class="dropdown-item py-2" href="/about/participants/">Participants</a></li>
76                
77                  <li><a class="dropdown-item py-2" href="/about/contribute/">Contribute</a></li>
78                
79              </ul>
80            </li>
81          
82        
83      </ul>
84    </div>
85  </div>
86</nav>
87<div id="content" class="content-spacer flex-grow-1">
88<div class="container py-5">
89  <div class="row">
90    <div class="col-lg-8 mx-auto" id="oc-content-main">
91      <div class="markdown-body">
92        <h1 id="openconfig-projects--standardisation">OpenConfig Projects &amp; Standardisation</h1>
93<p>OpenConfig is an informal working group of network operators sharing the goal of moving towards a more dynamic, programmable network infrastructure. We do this by defining vendor-neutral data models, and designing modern, RPC-based management protocols.</p>
94<p>This page provides an overview of the key projects driven by the OpenConfig community.</p>
95<div class="row mt-4 mb-5">
96  <div class="col-md-6 col-lg-3 mb-4">
97    <div class="card h-100 shadow-sm">
98      <div class="card-body d-flex flex-column">
99        <h3 class="card-title h5 font-weight-bold"><span class="fa-solid fa-sitemap me-2 text-primary"></span>Data Models</h3>
100        <p class="card-text small text-muted flex-grow-1">Explore OpenConfig YANG models, schema paths, and interactive documentation.</p>
101        <a href="#yang-data-models" class="btn btn-outline-secondary btn-sm mt-3">View Models</a>
102      </div>
103    </div>
104  </div>
105  <div class="col-md-6 col-lg-3 mb-4">
106    <div class="card h-100 shadow-sm">
107      <div class="card-body d-flex flex-column">
108        <h3 class="card-title h5 font-weight-bold"><span class="fa-solid fa-network-wired me-2 text-primary"></span>gRPC APIs</h3>
109        <p class="card-text small text-muted flex-grow-1">Learn about gNMI, gNOI, gRIBI, and gNSI protocols for management and operations.</p>
110        <a href="#grpc-apis" class="btn btn-outline-secondary btn-sm mt-3">View RPCs</a>
111      </div>
112    </div>
113  </div>
114  <div class="col-md-6 col-lg-3 mb-4">
115    <div class="card h-100 shadow-sm">
116      <div class="card-body d-flex flex-column">
117        <h3 class="card-title h5 font-weight-bold"><span class="fa-solid fa-flask me-2 text-primary"></span>Testing</h3>
118        <p class="card-text small text-muted flex-grow-1">Discover Ondatra and KNE frameworks for validation and network emulation.</p>
119        <a href="#testing-emulation" class="btn btn-outline-secondary btn-sm mt-3">View Testing</a>
120      </div>
121    </div>
122  </div>
123  <div class="col-md-6 col-lg-3 mb-4">
124    <div class="card h-100 shadow-sm">
125      <div class="card-body d-flex flex-column">
126        <h3 class="card-title h5 font-weight-bold"><span class="fa-solid fa-toolbox me-2 text-primary"></span>Tooling</h3>
127        <p class="card-text small text-muted flex-grow-1">Access libraries like ygot, ygnmi, and gnmic for working with OpenConfig data.</p>
128        <a href="#tooling-libraries" class="btn btn-outline-secondary btn-sm mt-3">View Tooling</a>
129      </div>
130    </div>
131  </div>
132</div>
133<hr>
134<h2 id="yang-data-models">YANG Data Models</h2>
135<p>The core of OpenConfig is the development of consistent, vendor-neutral data models for network configuration and state. These models are designed from an operator&rsquo;s perspective and cover a wide variety of networking use cases.</p>
136<ul>
137<li><strong>Repository</strong>: <a href="https://github.com/openconfig/public">github.com/openconfig/public</a></li>
138<li><strong>Key Features</strong>:
139<ul>
140<li>Covers both configuration and operational state.</li>
141<li>Vendor-independent design.</li>
142<li>Focuses on operationally relevant features.</li>
143</ul>
144</li>
145</ul>
146<h3 id="explore-the-models">Explore the Models</h3>
147<p>We provide tools to explore the published YANG models directly on this site:</p>
148<ul>
149<li><strong><a href="/projects/models/paths/">Schema Paths</a></strong>: Search and browse the unified schema paths.</li>
150<li><strong><a href="/projects/models/schemadocs/">Schema Documentation</a></strong>: View detailed, interactive documentation for the models.</li>
151</ul>
152<hr>
153<h2 id="grpc-apis">gRPC-Based Interfaces (RPCs)</h2>
154<p>To manage devices using OpenConfig models, we define modern APIs based on gRPC. These protocols replace traditional management protocols like SNMP and NETCONF.</p>
155<h3 id="gnmi-grpc-network-management-interface">gNMI (gRPC Network Management Interface)</h3>
156<p>gNMI provides a single gRPC service for state retrieval, configuration manipulation, and telemetry streaming.</p>
157<ul>
158<li><strong>Repository</strong>: <a href="https://github.com/openconfig/gnmi">github.com/openconfig/gnmi</a></li>
159<li><strong>Specification</strong>: <a href="https://github.com/openconfig/reference/blob/master/rpc/gnmi/gnmi-specification.md">Read the gNMI Specification</a></li>
160<li><strong>Key Features</strong>: Supports declarative configuration (Set), state retrieval (Get), and high-frequency streaming telemetry (Subscribe).</li>
161</ul>
162<h3 id="gnoi-grpc-network-operations-interface">gNOI (gRPC Network Operations Interface)</h3>
163<p>gNOI defines a set of microservices for operational commands that are not model-based (e.g., rebooting a device, upgrading OS, pinging, managing certificates).</p>
164<ul>
165<li><strong>Repository</strong>: <a href="https://github.com/openconfig/gnoi">github.com/openconfig/gnoi</a></li>
166<li><strong>Key Services</strong>: System, OS, File, Certificate, Healthz.</li>
167</ul>
168<h3 id="gribi-grpc-routing-information-base-interface">gRIBI (gRPC Routing Information Base Interface)</h3>
169<p>
169gRIBI allows external controllers to programmatically inject routing entries (routes) directly into the RIB of a network device.</p>
170<ul>
171<li><strong>Repository</strong>: <a href="https://github.com/openconfig/gribi">github.com/openconfig/gribi</a></li>
172</ul>
173<h3 id="gnsi-grpc-network-security-interface">gNSI (gRPC Network Security Interface)</h3>
174<p>gNSI defines services for managing security-related configurations on the device, such as SSH keys, console access, and security policies.</p>
175<ul>
176<li><strong>Repository</strong>: <a href="https://github.com/openconfig/gnsi">github.com/openconfig/gnsi</a></li>
177</ul>
178<hr>
179<h2 id="testing-emulation">Testing &amp; Emulation</h2>
180<p>To ensure compliance and simplify vendor validation, OpenConfig develops open-source testing frameworks and tools.</p>
181<ul>
182<li><strong>Ondatra</strong>: A Go-based testing framework for writing and running functional network tests against physical or emulated devices.
183<ul>
184<li><strong>Repository</strong>: <a href="https://github.com/openconfig/ondatra">github.com/openconfig/ondatra</a></li>
185</ul>
186</li>
187<li><strong>KNE (Kubernetes Network Emulation)</strong>: A tool to set up topology of containerized network devices inside Kubernetes for testing.
188<ul>
189<li><strong>Repository</strong>: <a href="https://github.com/openconfig/kne">github.com/openconfig/kne</a></li>
190</ul>
191</li>
192</ul>
193<hr>
194<h2 id="tooling-libraries">Tooling &amp; Libraries</h2>
195<p>We maintain several tools and libraries to assist with adopting OpenConfig.</p>
196<ul>
197<li><strong>ygot (YANG Go Tools)</strong>: Go libraries for generating Go code from YANG models, validating data against models, and serializing to/from JSON/XML.
198<ul>
199<li><strong>Repository</strong>: <a href="https://github.com/openconfig/ygot">github.com/openconfig/ygot</a></li>
200</ul>
201</li>
202<li><strong>ygnmi</strong>: A Go client library built on top of <code>ygot</code> for interacting with gNMI targets.
203<ul>
204<li><strong>Repository</strong>: <a href="https://github.com/openconfig/ygnmi">github.com/openconfig/ygnmi</a></li>
205</ul>
206</li>
207<li><strong>gnmic</strong>: A powerful CLI client and collector for gNMI, supporting data locking, forwarding, and multiple output formats.
208<ul>
209<li><strong>Repository</strong>: <a href="https://github.com/openconfig/gnmic">github.com/openconfig/gnmic</a></li>
210</ul>
211</li>
212</ul>
213
214      </div>
215    </div>
216  </div>
217</div>
218
219        </div><footer class="oc-footer py-5 mt-auto bg-dark text-light">
220  <div class="container">
221    <div class="row align-items-center">
222      <div class="col-md-6 text-center text-md-start mb-3 mb-md-0">
223        <p class="mb-0 text-muted">&copy; 2016-2026 OpenConfig Project. All rights reserved.</p>
224      </div>
225      <div class="col-md-6 text-center text-md-end">
226        <a href="https://github.com/openconfig" class="text-muted h4" target="_blank" rel="noopener noreferrer">
227          <span class="fa-brands fa-github"></span>
228        </a>
229      </div>
230    </div>
231  </div>
232</footer>
233
234
235<script src="https://code.jquery.com/jquery-3.7.1.min.js" integrity="sha256-/JqT3SQfawRcv/BIHPThkBvs0OEvtFFmqPF/lYI/Cxo=" crossorigin="anonymous"></script>
vendor: 1 bytes, line 235
235
236<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" crossorigin="anonymous"></script>
236
237
238
239
240
241</body>
242</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.