Network Quality Server
The Network Quality Server project was created as a place to share example servers that can used by the
networkQuality command line tool available in macOS 12.
You can find a textual description of what a server needs to implement here
There’s also 2 complete reference server implementations, one written in Swift and the other in Go. Also provided are configurations for HTTP server/proxy servers: Apache Traffic Server, Apache HTTPD and nginx.
All the samples require an SSL certificate to run.
Using networkQuality against your server
networkQuality CLI takes a
-C switch allowing you to point it at your server.
[email protected] ~ % networkQuality -C https://networkquality.example.com:8443/config ==== SUMMARY ==== Upload capacity: 29.662 Mbps Download capacity: 541.622 Mbps Upload flows: 12 Download flows: 12 Responsiveness: High (1825 RPM)
networkQuality CLI tool will only connect to a server presenting a valid SSL certificiate. If you are using a custom CA, ensure the CA is trusted by the system.
There are more options available to affect behavior of this utility. See the manpage of
networkQuality for more info.
Please review how to contribute if you would like to submit a pull request.
Asking Questions and Discussing Ideas
If you have any questions you’d like to ask publicly, or ideas you’d like to discuss, please raise a GitHub issue.
Project maintenance involves, but not limited to, adding clarity to incoming issues and reviewing pull requests. Project maintainers can approve and merge pull requests. Reviewing a pull request involves judging that a proposed contribution follows the project’s guidelines, as described by the guide to contributing.
Project maintainers are expected to always follow the project’s Code of Conduct, and help to model it for others.
Although we expect this to happen very infrequently, we reserve the right to make changes, including changes to the configuration format and scope, to the project at any time.