Valve выпустила обновление сетевой библиотеки GameNetworkingSockets 1.5.0
28 апреля 2026 года Valve представила обновление библиотеки GameNetworkingSockets 1.5.0 с реализацией системы передачи сообщений поверх UDP, которая может применяться для организации высокоскоростного и надёжного сетевого обмена данными в играх. Исходный код проекта написан на языке С++ и опубликован на GitHub под лицензией BSD. Предыдущая стабильная версия проекта вышла в июне 2022 года.
По информации OpenNET, проект GameNetworkingSockets реализует поверх UDP похожий на TCP протокол, обеспечивающий установку соединения, но ориентированный на передачу сообщений вместо потоков. Через установленный канал связи сообщения могут передаваться как в режиме гарантированной доставки, так и с использованием более быстрого режима ненадёжной передачи.
Протокол GameNetworkingSockets поддерживает такие возможности, как обработка фрагментации, пересборка пакетов, прогнозирование и ограничение пропускной способности, создание P2P‑каналов связи, обход трансляторов адресов (через WebRTC ICE) и шифрование. Данные в пакетах шифруются с использованием алгоритма блочного шифрования AES, а для обмена ключами и проверки сертификатов применяются цифровые подписи на базе эллиптических кривых Ed25519. Механизмы доставки ключей и выбора вектора инициализации для каждого пакета основаны на методах, применяемых в протоколе QUIC.
Основные изменения и доработки в GameNetworkingSockets 1.5.0:
API ISteamNetworkingSockets::SendMessages расширен для упрощения обработки сбоев при отправке и инициирования повторных попыток доставки;
добавлены новые настройки для ECN, jitter‑а, определения локального IP (IPLocalHost) и отключения аутентификации (AllowWithoutAuth);
добавлен вариант API ISteamNetworkingMessages для языка С;
реализована начальная версия обвязки
Читать на habr.com