Никита Ющенко / Света Гайворонская, 5 курс, mod-sem [linux]

На этом форуме публикуются и уточняются постановки задач студентам, а также отслеживается ход их выполнения

Модератор: staff

Закрыто
Бычков Иван
Аспирант
Сообщения: 179
Зарегистрирован: 23 сен 2008 01:19 pm

Никита Ющенко / Света Гайворонская, 5 курс, mod-sem [linux]

Сообщение Бычков Иван »

Тема работы

Повышение эффективности протокола VNC путём специальной обработки типичных последовательностей запросов X протокола


О чём это

Подавляющее большинство приложений в среде unix/x11 работают c X протоколом не непосредственно, а через высокоуровневые библиотеки типа Qt или Gtk. Эти библиотеки содержат реализации элементов графического интерфейса, сводящиеся к вполне конкретным последовательностям запросов X протокола (и его расширений). Можно предположить, что бОльшую часть потоков запроса X протокола, генерируемых приложениями, составляет как раз такие последовательности запросов, соответствующие элементам интерфейса из стандартных библиотек.

Эту специфику потока запросов можно использовать для повышения эффективности работы терминального протокола VNC. А именно, придумать способ получения на VNC клиенте фрагмента изображения, соответствующего типичной последовательности запросов, быстрее и/или с меньшим сетевым трафиком, чем это происходит по стандартной схеме VNC [получение растрового изображения изменившейся части экрана, возможно сжатой].

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