Повышение эффективности протокола VNC путём специальной обработки типичных последовательностей запросов X протокола
О чём это
Подавляющее большинство приложений в среде unix/x11 работают c X протоколом не непосредственно, а через высокоуровневые библиотеки типа Qt или Gtk. Эти библиотеки содержат реализации элементов графического интерфейса, сводящиеся к вполне конкретным последовательностям запросов X протокола (и его расширений). Можно предположить, что бОльшую часть потоков запроса X протокола, генерируемых приложениями, составляет как раз такие последовательности запросов, соответствующие элементам интерфейса из стандартных библиотек.
Эту специфику потока запросов можно использовать для повышения эффективности работы терминального протокола VNC. А именно, придумать способ получения на VNC клиенте фрагмента изображения, соответствующего типичной последовательности запросов, быстрее и/или с меньшим сетевым трафиком, чем это происходит по стандартной схеме VNC [получение растрового изображения изменившейся части экрана, возможно сжатой].
План работы
- Написание нескольких простых программ на базе библиотеки Qt.
- При помощи средства анализа X протокола xmon, изучение потока запросов X протокола, генерируемого простыми программами, и выделение в нём «типичных подпоследовательностей запросов». Другой вариант — выделение подпоследовательностей путём анализа исходных текстов библиотек — кажется более трудоёмким, но тоже может быть использован при необходимости.
- Анализ потока запросов X протокола от «полновесных» приложений, поиск в нём уже выделенных или других «типичных подпоследовательностей».
- Разработка метода оптимизации обработки выделенных «типичных подпоследовательностей» протоколом VNC. Самой простое, что приходит в голову — кэшировать фрагменты изображения со стороны VNC клиента. Другой вариант — выполнение части запросов со стороны VNC клиента (но без передачи туда сколь-либо ощутимой части внутреннего состояния X сервера!). Или какая-то комбинация этого.
- Реализация разработанного метода
- Исследование метода — насколько удаётся уменьшить трафик и/или увеличить скорость реакции на конкретных примерах.
- Написание текста дипломной работы
- Возможно, написание статьи на конференцию.
- разработан метод повышения эффективности протокола VNC путём специальной обработки типичных последовательностей запросов X протокола,
- выполнена практическая реализация разработанного метода
- проведено исследование разработанного метода.