$GetZBlock

Синтаксис:

$GetZBlock [Число] [Число_байт] [Имя_файла]|

Направление команды:
Клиент ---> Клиент

Описание:
Данная команда является дополнением к протоколу. На поддержку данной команды указывает характеристика GetZBlock в команде $Supports.

Вместо команд $Get и $Send используется вышеприведённая команда.
Параметр [Число] начинается с 0 (именно с 0, в отличие от команды $Get, в которой данный параметр начинается с 1) и обозначает начальную точку загрузки файла.
[Число_байт] — это число отправляемых байт (или -1 для неизвестного или целого файла).
[Имя_файла] — очевидно, что это имя файла.

После этого второй клиент отвечает командой «$Sending [Байты]|[Сжатие]», если отправка прошла успешно или командой «$Failed [Описание_ошибки]|» в противном случае.

Если всё в порядке, то данные будут отправляться до тех пор пока не отошлёться вся не сжатая длина файла.
[Байты] — указывает, сколько будет извлечено отосланных байт без сжатия, потому как отсылающий клиент не знает, на сколько хорошо был сжат файл. Одна отсылка туда и обратно оптимизирует механизм передачи файла.

Сжатие: Для сжатия используется библиотека ZLib (v 1.1.4 в DC++ начиная с версии 0.21), использующая динамическое сжатие. Уровень сжатия может изменяться для того, чтобы снизить нагрузку на процессор или в случае если файл не сжимается. Уровень сжатия регулируется с помощью хеш–функции adler32.

Команда $GetZBlock устарела, но согласно DC++ 0.696 её поддержка ещё существует. Новая реализация этой команды используется в команде $ADCGET с параметром ZL1

Оригинал (by Setuper): http://mydc.ru/index.html?showtopic=915&view=findpost&p=7949

Тэги:
Код для вставки: :: :: :: ГОСТ ::
Поделиться: //
 

Реклама

Для скачивания с этих сайтов нужно подключиться к внешним хабам

Нужен свой портал? magneto!