-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
91 lines (81 loc) · 4.5 KB
/
index.html
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
---
---
{% capture overview %}
# Overview
The Nettools Project is a reusable implementation of network configuration
standards for Linux. At its core, it provides independent libraries that
implement the most common RFCs related to network configuration and management.
On top of these, it provides services that extend these libraries, as well as
other networking resources, to provide an integrated view of all these sources
at runtime.
The Nettools Project implements standards that are at the core of network
configuration. While many of these have been around for decades, the
implementations provided by the Nettools Project focus on a few key aspects:
* **No Policy**: Every network standard that is implemented by the Nettools
Project comes with a pure library implementation, that
provides access to the standard without placing additional
policies. These libraries provide networking standards that
are as close to the respective specifications as possible,
while placing limited to no restrictions on top.
On the contrary, these implementations are explicitly written
without any specific environments in mind, but allow any
networking manager or service to make use of them. This also
implies that the APIs allow full control of the protocol
behavior.
* **Asynchronous**: Since network safety is crucial today, all implementations
and services are provided with a fully asynchronous API.
This allows placing their instances into isolated
environments, while mapping the API to an asynchronous
message-based interface. That is, while the libraries
provide in-process APIs, they are explicitly written in a
way that they can be mapped easily to a message-based
communication channel. Adopters of these libraries are
highly recommended to isolate execution of these protocols
and make use of the asynchronous API.
* **21st Century**: Networking standards like *DHCP* and *ACD* have been
around for decades. Thus, they were written against
hardware that was obsoleted many years ago. Modern
hardware often no longer fits the models used in the
70ths. Therefore, the nettools implementations try to port
old standards to modern hardware, providing knobs to tune
parameters that no longer apply in the 21st century (no,
today it is no longer acceptable to wait 9s on local links
for address conflict detection to finish).
* **Linux-Only**: Network configuration requires explicit knowledge of the
corresponding counter-parts in the kernel. While high-level
APIs may resemble each other across UNIX Derivatives, the
underlying technologies differ. The Nettools Project aligns
all implementations with modern Linux Kernel releases and
makes use of linux-only features to improve performance and
security of these implementations.
{% endcapture %}
{{ overview | markdownify }}
<h2 id="projects">Projects</h2>
<ul>
{% assign projects_name = "projects_" | append: site.title %}
{% assign projects = site[projects_name] | sort: 'title' %}
{% for project in projects %}
<li>
<p>
<a href="{{ project.url | relative_url }}"><strong>{{ project.title }}</strong></a>:
<em>{{ project.description }}</em>
</p>
{{ project.excerpt }}
<ul>
<li><strong>Repository</strong>: <a href="https://github.com/{{ site.title }}/{{ project.title }}">@github</a></li>
</ul>
</li>
{% endfor %}
</ul>
{% capture underview %}
## Maintenance
All nettools projects are released under the terms of the *Apache Software
License 2.0, Copyright © 2015-2019 Red Hat, Inc.* as well as the terms of the
*Lesser General Public License 2.1+*.
* **License**: *Apache Software License 2.0*
* **License**: *Lesser General Public License 2.1+*
* **Maintainers**: [David Rheinsberg](https://github.com/dvdhrm),
[Tom Gundersen](https://github.com/teg)
* **Mailing-List**: *nettools-devel* [@googlegroups](https://groups.google.com/forum/#!forum/nettools-devel)
{% endcapture %}
{{ underview | markdownify }}