TigerVNC — свободный клиент и сервер протокола VNC (Virtual Network Computing), предназначенный для удалённого доступа к графическим рабочим столам. Проект возник как форк существующих реализаций VNC с целью улучшения производительности, стабильности и поддержки современных графических возможностей, включая ускорение отрисовки и передачу видеопотока. TigerVNC сочетает в себе совместимость с базовыми спецификациями RFB (Remote Framebuffer) и ряд оптимизаций для снижения задержек и повышения пропускной способности при работе с графикой и 3D-приложениями.
Архитектура TigerVNC включает отдельные компоненты клиента и сервера: сервер выполняет захват фреймбуфера и обработку входных событий, клиент отображает графический интерфейс и передаёт события ввода. Проект уделяет внимание кроссплатформенности и доступен для основных операционных систем. В основе разработки лежат задачи обеспечения высокой производительности в сетях с ограниченной пропускной способностью, корректной работы с аппаратным и программным ускорением графики, а также возможности интеграции с системами аутентификации и безопасного туннелирования соединений.
- Поддержка протокола RFB для совместимости с другими VNC-реализациями.
- Оптимизированная передача изображений с использованием эффективных кодеков и алгоритмов обновления экранов.
- Аппаратное и программное ускорение для улучшения производительности при воспроизведении видео и 3D-графики.
- Клиент и сервер в отдельных компонентах, что позволяет гибко настраивать развёртывание и интеграцию.
- Кроссплатформенность — поддержка различных операционных систем и сред рабочего стола.
- Механизмы аутентификации и безопасности, включая опции для шифрования соединения при использовании в сочетании с туннелями.
- Конфигурируемые параметры качества и пропускной способности для адаптации к условиям сети.
- Совместимость с расширениями VNC и возможностями удалённого управления вводом и буфером обмена.
- Открытый исходный код, что позволяет аудит и модификацию под специфические нужды.
- Акцент на производительности при работе с динамическими графическими сценами и мультимедиа.