Оптимизация Интернет-трафика с помощью сети кеширующих серверов

__________________________________________

С.А. Крашаков, Л.Н. Щур




В статье обсуждается проблема экспоненциального роста потоков информации в глобальной компьютерной сети. Один из вариантов преодоления этой проблемы реализован в сети FREEnet с помощью построенной и развиваемой распределенной сети кеш-серверов. Такой интенсивный подход является, по-видимому, оптимальным и типичным для научно-образовательных сетей, каковой и является сеть FREEnet. Коротко обсуждается альтернативный подход, использующий распределенную сеть так называемых CDN-серверов, типичный для коммерческих поставщиков информации.

Глобальная компьютерная сеть. Плюсы и минусы ее развития, как головная боль администраторов сетей

Глобальная компьютерная сеть вот уже почти 10 лет претерпевает бурное развитие. Это произошло во многом благодаря специальной программе предыдущей администрации США, инициатором которой являлся вице-президент Альберт Гор. В разработке этой программы приняло участие более пятисот организаций и корпораций США, как государственных, так и частных. Итоговый документ, разработанный в 1994 году [1] стал достаточно быстро претворяться в жизнь. К тому времени было достаточно много разработок, как в США, так и в Европе. Последние были довольно быстро или перекуплены, или переведены в США. Достаточно упомянуть проект WWW, который был разработан в Европейским центром ядерных исследований CERN. Этот проект был передан в США в 1994 году с подходящей мотивировкой и стал системообразующим при развитии программы в целом. Мы не будем останавливаться на обсуждении целей программы. Это выходит за рамки технической статьи, которую мы предлагаем читателю.

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

Совокупность всех перечисленных факторов и обуславливает экспоненциальный рост потоков информации [1], устойчиво наблюдаемый в течении последних 8-10 лет. Здесь нам будет уместно привести аналогию сети Интернет с сетью автомобильных дорог. При этом поток автомобилей аналогичен потоку информации. При росте потока автомобилей возможно образование заторов на дорогах. Для нормализации движения применяется множество решений как экстенсивного характера (расширение существующих дорог, строительство новых широких и скоростных дорог и узловых развязок и т.п.), так и интенсивного характера: развитие общественного транспорта, предоставление ему преимущества, выделение специальных полос для автомобилей с числом пассажиров более одного и т.п.

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

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

Кеширование потоков информации

Из числа интенсивных путей оптимизации нагрузок на каналы передачи информации серьезное развитие получили два похода: кеширование информации [2,3] и геометрическое распределение информации по сети серверов (CDN – content distribution networks) [4]. Второй подход является, по-видимому, более приемлемым для коммерческих сетей, в которых сервис провайдер распределяет информацию с целью ее оптимальной продажи. Первый подход более подходит для научно-образовательных сетей, в которых информация принципиально децентрализована, и организационные меры крайне неэффективны. Именно этот подход и был выбран нами для реализации в научно-образовательной сети FREEnet [5] и в ее региональном отделении – сети Научного центра Российской академии наук в Черноголовке Chg-FREEnet [6].

Кеширование потоков информации эффективно в тех случаях, когда источник и потребитель информации имеют большую скорость ее обработки, в то время как канал связи между ними недостаточно быстр. Одна из известных реализаций кеширования иноформации – это многоуровневая система кеш-памяти в архитектуре персональных компьютеров [7]: относительна небольшая, но достаточно бьыстродействующая кеш-память L1 расположена непосредственно на кристале процессора; в корпусе процессора расположена также несколько большая, но более медленная кеш-память L2 и, наконец, на системной плате до недавнего времени располагалась еще большая, но и медленная кеш-память L3. Следует заметить, что впервые концепция кеширования была реализована в отечественной ЭВМ БЭСМ-6, серийное производство которой началось в 1967 году [8]. Тогда объем кеш-памяти составлял 4х48 бит для команд, столько же для чисел и 8х48 бит для записи результатов с временем считывания 333 наносекунды при длительности цикла обращения к основной памяти 2 микросекунды.

Кеширование потоков информации в Интернет началось в 1994 году [2]. Идея кеширования состоит в том, что ЭВМ пользователя шлет запрос не прямо на источник информации, а на прокси-сервер, доступ к которому достаточно быстрый.

На рисунке 1 приведена упрощенная схема кеширования. Промежуточная ЭВМ с соответствующим программным обеспечением и играет роль кеш-сервера. А именно, она помещает в локальную память большого объема (обычно, это оперативная памаять и скоростная дисковая память) информацию, запрашиваемую каждым пользователем. Таким образом создается база данных. Если запрошенный пользователем документ имеется в этой памяти, то он выдается на ЭВМ пользователя. Очевидно, что такая схема может приводить к ускорению получения информации пользователем. Например, многие источники приводят данные о том, что в их случае примерно 50% информации берется из кеш-сервера. Учитывая, что материальные затраты на организацию такой работы невелики по сравнению в удвоением пропускной способности канала информации, можно достигнуть значительной экономии средств.

Рис. 1. Упрощенная схема кеширования информации в сети Интернет.




Мы привели упрощенную схему. Например, информация по запрашиваемому адресу может быть постоянно обновляемой. В таком случае, применение кеш-сервера не дает преимущества. Конечно же, в программном обеспечении реализован механизм поддержки указаний о такой информации, что позволяет избежать замедления ее получения.

Следует особо подчеркнуть, что мы считаем главной задачей научно-образовательных сетей не оптимизацию затрат на стоимость каналов (такая задача не может быть корректно сформулирована в силу особенностей финансирования науки и образования), а уменьшение времени ожидания пользователем полезной информации. Иными словами, мы считаем своей главной задачей превращение среды Интернет в практичный, удобный и эффективный инструмент для научной и преподавательской работы и для обучения.

Нами реализована часть программы по созданию эффективной системы кеширования информации для компьютерных сетей науки и образования
Российской федерации [9,10]. На сегодняшний день эта сеть состоит из нескольких кеш-серверов, расположенных в различных точках опорной сети ЮМОС (ИОХ, ИКИ, ИТФ им. Л.Д. Ландау, Центр управления ЮМОС) и экспериментальных серверов в Черноголовке. В среднем, на каждый сервер поступает по 500-1000 тысяч запросов (3-5 Гбайт информации) в день, число объектов в кеше около 1 млн, около 50% запросов извлекаются из кеша, экономия трафика составляет 30-40%. Созданной системой кеширования могут пользоваться все российские научные и образовательные организации. Сейчас этой системой пользуются свыше 1000 клиентов (из которых около 50 – это коллективные клиенты, т.е. кеш-серверы организаций, за которыми стоят сотни других компьютеров) из сотни организаций из различных регионов (Москва, Черноголовка, Мытищи, Ярославль, Челябинск, Миасс, Тамбов, Йошкар-Ола, Уфа, Пенза, Королев, Зеленоград, Кемерово, Одесса, Харьков, Минск и др.) из различных научных сетей – FREEnet, RSSInet, RBnet, RUNnet, OSI, RASnet, а также NLANR (США). На рисунке 2 приведена схема сети кеширующих серверов и их взаимодействие с серверами других сетей, например, сетью NLANR [11]. Что дает пользователю такая сеть?

Рис. 2. Схема распределенной сети кеш-серверов FREEnet.


Во-первых, объединение кеш-серверов в иерархическую структуру позволяет дополнительно повысить скорость получения информации и уменьшить внешний трафик за счет возможности получения информации от соседних кеш-серверов, если скорость доступа к ним превышает скорость доступа на WWW-сервер, хранящий оригинал документа [12].

Во-вторых, при иерархической организации сети кеш-серверов значительно возрастает надежность получения информации в случае сильно загруженных каналов связи или при наличии больших потерь в канале [10].

И, наконец, особенности, заложенные в программное обеспечение Squid [12], позволяют кеш-серверу динамически выбирать оптимальный путь получения информации – напрямую от WWW-сервера-источника информации или через один из кеш-серверов иерархической системы. Это позволяет динамически выравнивать загрузку различных внешних каналов связи и в среднем в 2-2.5 раза, а для ряда Web-сайтов и доменов – до 10 раз, повысить скорость получения информации [13,14]. Кроме того, данный подход позволяет получать информацию даже в случаях нарушения маршрутизации, когда прямой путь до источника информации временно недоступен.

Совокупность описанных свойств распределенной сети кеширующих серверов и позволяет значительно улучшить качество работы научных сотрудников и студентов в сети Интернет.

Кроме того, как показывают предварительные исследования, использование сети кеширующих серверов позволяет, видимо, значительно выравнивать нагрузку на международных и межрегиональных каналах связи, что позволит значительно повысить эффективность использования каналов связи при отсутствии существенных затрат.

Заключение

Мы убедительно показали, что применение системы кеш-серверов позволяет значительно ускорить время получения информации пользователем, оптимизировать нагрузку на каналы связи, создавать эффективные логические сети, экономить бюджетные средства.

Работа поддержана межведомственной программой НСКТ-НВШ раздел 5.1.1 и грантами РФФИ 98-07-90293 и 01-07-90119.

Литература


1. Gregory G. Gromov. History of Internet and WWW: The roads and crossroads of Internet History, 2001. http://www.netvalley.com/intval.html
2. Ari Luotonen, Kevin Altis. World-Wide Web proxies. Proc. 1st Int. WWW Conf., Geneva, May 1994.
3. A. Chankhunthod, P. Danzig, C. Neerdaels, M. F. Schwartz, K. Worrell. A hierarchical Internet object cache. Proc. 1996 USENIX Annu. Tech. Conf., San Diego, Jan 1996, pp.153-163.
4. S. Gadde, J. Chase, M. Rabinovich. Web caching and content distribution: A view from an interior. Computer Communs., 24, 222-231 (2001).
5. www.free.net
6. www.chg.net.ru
7. В.В. Корнеев. Современные микропроцессоры, 2е изд. Нолидж, 2000. 320 с
8. Л.Н. Королев, В.А. Мельников. Об ЭВМ БЭСМ-6. Управляющие системы и машины, №6, 1976.
9. S. Krashakov, L. Shchur. FREEnet Web cache development. Proc. NLANR Web Caching Workshop, Boulder, June 1997.
10. S. Krashakov, L. Shchur. Web caching in Russia: Current state and future development. Proc. 3d Int. Web Caching Workshop, Manchester, June 1998.
11. Duane Wessels. The NLANR Cache Systems, http://www.ircache.net/
12. D. Wessels, K. Claffy. ICP and squid Web cache. IEEE J. Selected Areas in Communs., 16, 345-357 (1998).
13. С.А. Крашаков, Л.Н. Щур. Кеширование информационных потоков и стратегия оптимизации маршрутов в распределенных системах. Тезисы докл. 2-ой Всерос. конф. “Научный сервис в сети Интернет”, Новороссийск, сент. 2000, с. 145-148.
14. S.A. Krashakov, L.N. Shchur. Comparative measurements of Internet traffic using cache-triangle. Proc. 6th Int. Web Caching Workshop, Boston, June 2001.

_____________________________________________________________
Крашаков Сергей Александрович - научный сотрудник Института теоретической физики им. Л.Д. Ландау Российской академии наук; сотрудник сети Chg-FREEnet, кандидат химических наук.

Щур Лев Николаевич - ведущий научный сотрудник Института теоретической физики им. Л.Д. Ландау Российской академии наук, заместитель Председателя cети FREEnet, доктор физико-математических наук, профессор.


© Информационное общество, 2001, вып. 5, с. 10-13.