Главная > Программы > Gzip Что такое Gzip
Введениеgzip (GNU zip) это утилита сжатия информации, работает с файлами
с расширением *.gz, для декомпрессии используется библиотека zlib.dll. Применяется на Unix-серверах
для передачи информации от сервера клиенту (браузеру) в компрессированном виде. При передаче
по каналу связи сжатой информации существенно уменьшается ее количество и, следовательно, пропорционально
повышается скорость ее передачи. Информация, передаваемая браузеру, в большинстве случаев представляет
собой текстовый файл – HTML-код страницы, хорошо поддающийся сжатию. Сжатие текстовой информации может достигать
десятков процентов и позволяет получить соответственное снижение траффика и увеличение скорости.
Степень сжатия зависит от содержания страницы. Если на странице много плохо сжимаемого контента,
например графики, то эффективность сжатия будет ниже. Следует заметить что не все сайты настроены
для передачи сжатого контента, например, сервер narod.ru сжимать не умеет. Правда там размещены
домашние странички, для объема которых сжатие не очень существенно. В основном же, практически
все сайты уровнем чуть выше домашних страниц, работают на серверах, поддерживающих gzip-сжатие.
А таких в сегодняшнем Интернете по моим наблюдениям свыше 90%.
Как видите, оригинальный размер страницы – более 106 кБ, а сжатый – менее 17 кБ. Это значит, что при использовании gzip по каналу связи будет передано всего 15 % оригинального размера страницы что увеличит скорость ее получения почти в 6,4 раза. Почти все программное обеспечение серверов позволяет использовать этот алгоритм и, как правило, соответствующие настройки включены по умолчанию и не требуют дополнительных операций. Все современные браузеры (еще с конца прошлого века) поддерживают прием сжатой информации, ее декомпрессию "на лету" и вывод в файл и на экран. В общем случае, браузеры используют gzip по умолчанию, однако из-за частого применения разнообразных программ, дополняющих каким-то образом функциональность браузера, использование сжатия может быть отключено. В этом случае по каналу связи будет передаваться несжатые данные со всеми вытекающими последствиями. Механизм взаимодействия сервер-клиент заключается в передаче браузером серверу запроса на передачу ему информации в сжатом виде. В заголовок запроса браузера при этом вводится строка Accept-encoding: gzip, deflate Получив такой запрос, сервер производит сжатие и передачу запрошенного файла обратно, указав об этом строкой Content-Encoding: gzip Полученная сжатая информация декомпрессируется браузером, записывается во временный файл и выводится на экран. Далее я не буду вникать в особенности работы сервера, влияния на него со стороны клиента-браузера нет уже никакого, да оно и не нужно. А вот в работе браузера надо проверить что запрос на передачу gzip действительно отправляется. Без такого запроса сервер просто не узнает что браузер готов обработать gzip и отправит файл без сжатия. Обычно браузеры не показывают служебную информацию и поэтому такая проверка несколько затруднительна, но мы найдем выход из положения. Проверки и тестыПроверить наличие запроса от браузера на сжатие можно просто посмотрев заголовки обмена
служебной информацией. Проблема в том, что встроенных инструментов для этого у браузеров нет и надо использовать
сторонний софт. Для такой маленькой задачи ставить отдельную программу мало смысла. Проще
воспользоваться
простым скриптом который предоставили администраторы форума Ру-борд для просмотра заголовков. Если в показанном
заголовке вы увидите в районе 4-й строки запись ![]() Надо нажать Add new для запуска таймера и по окончании загрузки страницы после
полного рефреша через Ctrl-F5 выделить работающий таймер и нажать Stop. После того как добьетесь
состояния gzip ON – повторить тот же замер. Для чистоты эксперимента все остальные потребители
траффика должны быть отключены. Кстати, на рисунке отображена загрузка главной страницы нашего форума с выключенным
и включенным gzip. Проблемы и решения
Вы обнаружили наличие проблем и надо срочно заняться их устранением. Часть из них уже решена, источники найдены
и ниже приводятся проверенные способы. Почему Agnitum Outpost Firewall отменяет сжатие страниц (gzip)? Продукты версий 6.0 и новее полностью поддерживают сжатие страниц (gzip). Источник То есть, с одной стороны, он экономит траффик за счет вырезания рекламы и делает систему более безопасной за счет вырезания активного контента, а с другой – теряет всю экономию и, возможно, гораздо больше, из-за передачи несжатых страниц. Здесь вам самому придется решить что для вас более важно, трафик или безопасность. Я только отмечу, что функции модулей, требующих отмены gzip можно переложить на другие программы. И еще, добавлю, что у меня gzip включен и я об этом пока не жалею. 3. Программа вырезания рекламы AdMuncher поступает также как Outpost и по тем же самым причинам. Об этом много сказано в дискуссии на форуме Ру-борд. На форуме AdMuncher обещают включить поддержку gzip в версии 4.8. До тех пор, все, что выше сказано об Outpost справедливо и для нее. Однако в данном случае способом решения проблемы является решительный снос этой программы в корзину несмотря на все ее очковтирательские рапорты о якобы съэкономленном трафике. А для резки рекламы лучше воспользоваться другой программой, рекомендую обратить внимание на Proxomitron. Эта отличная программа умеет не только вырезать все что угодно из сжатых страниц, но и восстанавливать "поврежденные" запросы на сжатие контента. Она несколько сложна в тонкой настройке для начинающих, но вы всегда можете обратиться за квалифицированной помощью на форум любителей этой программы. 4. Программа Naviscope – комплексный ускоритель и индикатор – также имеет функцию вырезания рекламы. Программа заброшена разработчиками и давно не обновляется, однако по-прежнему используется многими приверженцами. Увы, она также некорректно обращается с запросом Accept-encoding: gzip, deflate ради обеспечения собственного удобства. Мне нравится эта программа тем, что она действительно универсальна и предоставляет очень много информации о текущих коннектах. Поэтому захотелось оставить ее в работе и вместе с тем пользоваться преимуществами gzip. Выяснилось, что это возможно при использовании дополнительной программы Proxomitron и настройке их на совместную работу. Как и раньше, запросы от браузера с помощью настройки прокси надо направить на вход Навископу (127.0.0.1 port 81). Выход Навископа направить на порт 8192, прослушиваемый Proxomitron-ом : установить в настройках Naviscope – Setup – Proxy – птичку в Connect through an HTTP proxy и прописать там же адрес 127.0.0.1 и порт 8192. При этом получается что браузер отправляет запрос на gzip, Naviscope его вырезает, а Proxomitron восстанавливает соответственно настройкам. Обратно к браузеру сжатый файл проходит без проблем. В этой сцепке дополнительный Proxomitron отъедает около 2% процессора и примерно 6 МБ памяти; на мой взгляд – терпимо. Такой вариант с установкой Proxomitron может быть универсальным решением в аналогичных случаях с другими программами, которые позволяют использовать второй промежуточный прокси. 5. Программа MyProxy версии 6.40 также замечена в некорректной обработке gzip. Этот локальный кэширующий прокси, предназначенный для ускорения работы браузера, тоже для облегчения собственной работы по вырезанию баннеров выключает сжатие. Новая версия 7.10 может работать с применением сжатия, но для этого она должна пропускать данные через свой сервер. Насколько я понимаю, он и выполнит работу по вырезанию ненужного и передаст чистый траффик на ваш компьютер. Однако это удовольствие уже стоит денег и, по большому счету, экономически не оправдывается. За отсутствием интереса я лично версию 7.10 не проверял, могу и ошибаться. 6. Прокси сервер ISA версий 2000 и 2004 также зачислен в ряды вредителей. Ввиду того, что ISA серверы обычно устанавливаются в больших локальных сетях, технических методов исправления положения на рабочей станции пока не известно. Дополнение: Илья Задворошный (огромное ему спасибо!) прислал скриншот настроек сжатия для ISA сервера и вариант решения от Microsoft. ![]() Вообще, ответ на вопрос: что использовать – баннерорезку или gzip-сжатие и от чего эффект будет больше, зависит от ваших предпочтений в Интернете. Если вы предпочитаете сайты, перенасыщенные вырезаемыми баннерами или другой вырезаемой тяжелой графикой, то баннерорезка, возможно, будет более эффективна. Я только напомню, что показ баннерной рекламы для многих сайтов является источником финансов для оплаты хостинга и если вы повырезаете все баннеры, то в один прекрасный день рискуете не найти в сети вашего любимого сайта. Если же на предпочитаемых вами сайтах рекламы и графики меньше чем текста, то отключенное gzip-сжатие несомненно приведет к растрате траффика, снижению скорости и потерям времени. Мои предпочтения весьма разнообразны и я учитываю среднюю эффективность за относительно большой период. Поэтому лично для себя я выбираю gzip и скорость. Вам же посоветую для принятия окончательного решения провести длительный (20–50 часов) тест "до и после" с тщательным измерением и записью результатов как на лабораторных работах в школе. И уже на основании своего эксперимента вынести свой вердикт. На этом можно и завершить этот опус. Остается лишь попросить вас сообщить о других обнаруженных вами проблемах и найденных решениях для обновления статьи. Если же вы найдете только проблему, мы приглашаем обсудить ее на нашем форуме. Линки по темеhttp://www.gzip.org/ – The gzip home pagehttp://www.faqs.org/rfcs/rfc1952.html – RFC 1952 – GZIP file format specification version 4.3 http://www.webreference.com/internet/software/servers/http/compression/ – HTTP Compression Speeds up the Web http://www.desilva.biz/gzip-test.php – Gen.I designs – Web page compression / gzip test http://www.whatsmyip.org/mod_gzip_test/ – www.whatsmyip.org > mod_gzip Test http://perl.apache.org/docs/tutorials/client/compression/compression.html – Web Content Compression FAQ http://www.port80software.com/support/p80tools – Tools – compression check http://www.15seconds.com/issue/020314.htm – Web Site Compression – How It Works Дискуссии и информация на русском языке -
http://www.xakep.ru/magazine/xs/063/046/1.asphttp://arbuz.uz/forum/index.php?showtopic=693 http://forum.ru-board.com/topic.cgi?forum=5&topic=13162&start=0 http://earnik.com/forum/index.php?showtopic=9682&st=0 http://forum.ru-board.com/topic.cgi?forum=5&topic=0094&start=840 http://www.photographic.com.ua/faq.aspx#gzip http://www.kpnemo.ru/internet/2005/07/14/lubov_zkatilas/ http://forum.oszone.net/showthread.php?t=97630 – Ускорители (компрессоры) интернета – реальное сжатие траффика Материал взят с сайта: Главная > Программы > Gzip |