СИТУАЦИЯ: я разрабатываю игру с одним экземпляром, работающим на сервере Linux, и несколькими экземплярами, работающими на Windows10 (планируется поддержка MacOS). Надежность сети остается постоянной проблемой, и предоставление диагностики может помочь игрокам понять, что происходит, когда они сталкиваются с нестабильностью сети.
ПРОБЛЕМА: В настоящее время я полагаюсь на библиотеки TCP и UDP C# и использую IPGlobalProperties для сбора информации о частоте отказов сети. Мое понимание документации заключается в том, что это сбор информации для целого компьютера.
ЦЕЛЬ: мне нужна статистика только для данных, передаваемых между экземплярами моей программы, любой другая выборка может повлиять на мою статистику. (Кроме того, мониторинг всего компьютера пользователя кажется инвазивным, и в идеальном мире он будет помечен.)
ПРИМЕЧАНИЕ. Я ожидаю, что это возможно при использовании TcpClient (и подобных объектов) для получения этой информации, но я не может найти способ выполнить sh это.
==========
РЕДАКТИРОВАТЬ: Поскольку целью является мониторинг на клиенте ( игрока), клиент не должен запускать приложение с правами администратора, устанавливать любую вспомогательную среду и т. д. c.