crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Теория, как сократить объём трафика по сети, Что-то вроде дельта кодирования..
512es
  опции профиля:
сообщение 17.1.2012, 18:28
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 135
Регистрация: 31.10.2008
Пользователь №: 407

Спасибо сказали: 5 раз(а)




Репутация:   0  


Доброго времени суток!

Упрошённая схема:
Имеется 2 компьютера, клиент и сервер.
Клиент достаточно часто запрашивает одни и те же данные (QByteArray) у сервера.
Объём данных будем считать относительно большим.
Иногда данные могут незначительно меняться.

Задача:
Максимально сократить объём трафика между клиентом и сервером.

Возможно запоминание последних отданных данных клиенту на стороне сервера и последних принятых данных клиентом на стороне клиента.

Сейчас используется qCompress. Заметный выигрыш в размере пакетов, но всё равно, теоретически, можно посылать только различия между новым и предыдущим QByteArray + хеш, указывающий на то, какие данные были использованы при сравнении (на всякий случай, для коррекции ошибок).

Смотрю в сторону Delta кодирования. Но помоему это немного не то, или я просто не умею его использовать. Как его адаптировать для сравнения двух массивов данных?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Алексей1153
  опции профиля:
сообщение 20.1.2012, 13:01
Сообщение #2


фрилансер
******

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


Цитата(512es @ 20.1.2012, 14:13) *
когда окно двигают по однородному фону рабочего стола. Если использовать простое вычитание, то трафик будет достаточно большой, так как надо перерисовывать всю затронутую область экрана.

тут ещё следует учесть, что для снижения трафика отключают обои, Аэро и прочую хрень. Даже если окно сдвинуто, всё равно там много одинаковых цветов друг на друга наложилось (белый фон, серый фон) , плюс искусственное ограничение глубины цвета (4 бита/пиксел - вполне нормально для техподдержки). Так что разность всё равно обычно хорошо сжимается, а редкие всплески трафа на одиночном кадре утонут в общей экономии. Ну и, опять же, рекомендуется безлимит для таких вещей :D

Цитата(512es @ 20.1.2012, 14:13) *
Скорость создания патча bsdiff-ом на моих опытах составляет около 1.5 секунды,

ага, потом прибавим 1 секунду передачи по тырнету... Слайдшоу обеспечено. Ещё учти запыхавшийся процессор :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- 512es   Теория, как сократить объём трафика по сети   17.1.2012, 18:28
- - 512es   Ковыряю пример с википедии по дельта-кодированию. ...   17.1.2012, 20:49
- - BRE   Вот это почитай: http://ru.wikipedia.org/wiki/Цело...   17.1.2012, 21:25
- - 512es   Эм, спс, почитал... Правда всё равно не понял как...   17.1.2012, 22:09
- - 512es   Тыкс.. Отвечаю сам себе. В задуманном мною аглори...   17.1.2012, 22:56
|- - Iron Bug   Цитата(512es @ 18.1.2012, 1:56) Но новый ...   17.1.2012, 23:32
- - 512es   Iron Bug, Но сделали же! А вообще, по теме: ...   17.1.2012, 23:54
|- - Iron Bug   Цитата(512es @ 18.1.2012, 2:54) Iron Bug,...   18.1.2012, 17:54
- - Алексей1153   незначительное изменение данных влияет на размер д...   18.1.2012, 7:32
- - 512es   Размер динамический. Вообщем утилита bsdiff просто...   18.1.2012, 17:37
- - Алексей1153   Iron Bug, и в GIF похоже делается. 512es, алгорит...   19.1.2012, 6:40
|- - Iron Bug   Цитата(Алексей1153 @ 19.1.2012, 9:40) При...   23.1.2012, 23:29
- - zloiia   Быть может немного не в тему, но может не стоит из...   19.1.2012, 7:04
- - Алексей1153   zloiia, всё зависит от критичности времени обработ...   19.1.2012, 7:33
- - 512es   Алексей1153, скорость да, уступает простому вычита...   20.1.2012, 11:13
- - Алексей1153   Цитата(512es @ 20.1.2012, 14:13) когда ок...   20.1.2012, 13:01
- - 512es   Алексей1153, кстати, а что вас заставило изобретат...   23.1.2012, 19:48
- - Алексей1153   512es, задача была - написать систему удалённого а...   23.1.2012, 19:58
- - Алексей1153   Цитата(Iron Bug @ 24.1.2012, 2:29) никако...   24.1.2012, 21:05
- - Iron Bug   Цитата(Алексей1153 @ 25.1.2012, 0:05) не ...   25.1.2012, 6:39
- - lanz   http://fabiensanglard.net/quake3/network.php Вооб...   20.2.2013, 16:59


Ответить в данную темуНачать новую тему
Теги
Нет тегов для показа


4 чел. читают эту тему (гостей: 4, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 1.12.2024, 3:29