, при предоставлении услуг доступа к содержимому Всемирной паутины, а также услуг электронной коммерции) необходима быстрая, надежная и исключающая ошибки работа с Web. С этой целью разрабатывается технология, получившая название «Web-коммутация».
Работа Web-коммутаторов начинается с того, что они перехватывают весь трафик, адресованный на определенный Web-узел, получая, таким образом, возможность отслеживать запросы и предсказывать ожидаемое превышение нагрузки до того, как серверы окажутся перегруженными.
Web-коммутаторы, оснащенные функциями балансировки URL-ресурсов и трансляции сетевого адреса, а также встроенной системой доменных имен (DNS), используют для управления Web-трафиком и его ускорения целый комплекс правил. Ускорить Web-трафик им позволяет информация об URL-ресурсах, которую они получают (помимо IP-адреса). Эта информация дает возможность определить местонахождение содержимого запроса. Поскольку URL определяет лишь адрес содержимого, не указывая его IP-адрес, то вместо поиска последнего, связанного с URL как с сетевым адресом, указывается виртуальный IP-адрес (VIP) Web-коммутатора. Этот коммутатор, по сути, функционирует как кэш или как менеджер трафика содержимого Web-узла, что, в результате, существенно повышает производительность узла.
Серверы или другие устройства (в том числе коммутаторы четвертого уровня), используемые в настоящее время для балансировки нагрузки, направляют входящие пакеты, руководствуясь IP-адресом пункта назначения либо комплексом данных, включающим IP-адрес пункта назначения, протокол ID и номер транспортного порта. В среде Web такой подход проблематичен. Устройство балансировки нагрузки четвертого уровня воспринимает Web-приложение как использующее TCP-порт 80, иными словами, как типичный TCP-порт трафика HTTP (т.е. оно не отличает трафик Web-приложения от трафика HTTP).
Номера портов — основа коммуникаций по протоколу TCP/IP. Поскольку на одной машине может исполняться несколько программных приложений с использованием одного и того же сетевого интерфейса, протокол TCP должен отслеживать соответствие данных программам. Для этих целей каждому TCP-соединению присваивается свой номер порта. Заголовок пакета каждой TCP-сессии содержит номер порта пункта назначения. После прохождения пакетом соответствующего сегмента TCP-маршрутизатор «определяет» по номеру порта в TCP-заголовке, куда направлять эти данные. Известны стандартные номера портов: Telnet — порт 23, Simple Mail Transfer Protocol Mail — порт 25, Post Office Protocol 3 Mail — порт 110.
Обычно при коммутации четвертого уровня запрос общего межсетевого интерфейса CGI (Common Gateway Interface) ничем не отличается от запроса, инициированного Web-приложением системы производства SAP, или потока аудиоинформации, хотя для каждого из них требуется совершенно разное качество сервиса (QoS). При Web-коммутации для маршрутизации входящего TCP- или UDP-трафика применяются URL-адреса.
Проанализировав параметры запроса HTTP, включая URL и маркеры Internet, коммутатор определяет, какое содержимое запрашивается. Он также учитывает заданные пользователем и/или заранее введенные правила. Вся «сумма знаний» дает возможность Web-коммутатору установить, какие алгоритмы защиты использованы, к какому содержимому разрешен (или нет) доступ и какие требования QoS необходимо выполнить для запрошенного содержимого и определенных пользователей.
Web-коммутаторы поддерживают маркеры Internet и аутентификацию с помощью масштабируемой многопроцессорной системы, которая обрабатывает комплекс заданных правил только при установлении сессии. После «старта» потока информации все последующие его пакеты направляются без буферизации на заданные порты (для этого используются быстродействующие специализированные интегральные схемы — ASIC). Подход, который характеризуется «одной установкой потока со сквозной коммутацией всех последующих пакетов», позволяет классифицировать и детерминировать трафик на уровне URL и достичь соотношения цена/производительность, характерного для коммутаторов ЛВС.
Кроме того, Web-коммутаторы создают динамические копии наиболее «ходового» Web-содержимого в кэш-памяти, которая используется при балансировке нагрузки. Таким образом, пользователю обеспечивается доставка необходимой информации независимо от нагрузки на Web-сервер.
Web-коммутация дает возможность также создавать виртуальные Web-узлы, т.е. несколько географически разнесенных центров данных, представленных одним доменным именем. В этом случае, получая URL, Web-коммутатор определяет, какой Web-сервер или кэш способен наилучшим образом удовлетворить данный запрос. Чаще всего им оказывается ближайшее к пользователю устройство, однако при его перегрузке или отказе Web-коммутаторы могут перенаправить запрос на сервер, находящийся хоть на другой стороне земного шара. Главное, чтобы запрос был выполнен наилучшим образом.
Механизм Web-коммутации | |
Web-коммутация — технология, созданная для управления запросами, передаваемыми с помощью Web-трафиком. Интеллектуальные Web-коммутаторы для управления трафиком и его ускорения используют возможности балансировки URL-нагрузки, трансляции сетевых адресов и встроенной системы доменных имен 2. Этот запрос перехватывает Web-коммутатор, который выполняет имитацию обратного TCP-соединения (к клиенту), и анализирует URL. Одновременно он исследует заголовок HTTP, сравнивая содержимое и заданные для этого содержимого правила, с тем чтобы выбрать сервер или кэш, который наилучшим образом удовлетворит запрос. 3.Устанавливается сессия между коммутатором и оптимальным сервером. Контрольный блок потока, созданный в специализированной интегральной схеме порта коммутатора, обеспечивает направление всех последующих пакетов уже без участия коммутатора. |