Web ускорители – мащабируемост или скорост
Networkworld България - брой 2, 2007 г. / Тестове
Тестваните продукти се различават съществено по физически размери, функционалност и изисквания към топологията на мрежата, но общото между тях е, че нито едно устройство не е успяло да премине успешно всички тестове. Въпреки това експертите са отделили особено внимание на два продукта. Според тях web ускорителят CN5080-E на Crescendo се e отличил в тестовете с впечатляваща производителност благодарение на използваните в него патентовани средства за комутация на съдържание. А NetScaler Application Delivery System на Citrix успешно съчетава високата мащабируемост с множество други функции. Ето и подробности от тестването. Основната цел е да се оцени производителността на ускорителите, като се измери скоростта на изпълнение на транзакциите и времето за отговор за определен брой потребители. Тестовете се провеждат с включени и изключени средства за компресиране на HTTP трафика и списъците за контрол над достъпа, както и с имитация на разпределена мрежова DoS атака. В тестовете на мащабируемостта експертите се опитват да установят предела на системната производителност от гледна точка на максималния брой едновременно поддържани връзки, ефективността на TCP мултиплексирането и най-високите скорости за пренос. Без претенцията, че който и да е от тестовете дава точна представа за работата на тези устройства. При оценка на натоварването на приложното ниво в уравнението се появяват твърде много фактори, което затруднява директното разпространяване на резултатите върху реалните мрежи. Но пък дават възможност за сравняване на продуктите на различни компании, тъй като всяко устройство има работа с един и същи трафик. Тестовата среда имитира 2,35 млн. уникални клиента и 16 Web сървъра. В някои от тестовете към устройствата се подава трафик със скорост на пренос, съответстващ на преноса на съответстващия на бързодействието на гигабитните локални мрежи Ethernet. В хода на тестовете тя достига 4 Gbps. При оценката на мащабируемостта експертите се интересуват от броя на клиентите и скоростта на обработка на транзакциите, а не от пропускателната способност. Резултатите от тестването показват, че производителите се фокусират върху оптимизирането на различни аспекти от функционирането на своите устройства. Част от продуктите отнемат голяма част от натоварването от сървърите, свързана с обработката на TCP заглавията, докато други използват компресирането на HTTP трафика за намаляване на времето за отговор. Ускорителите съществено се различават по способността си едновременно да поддържат много връзки и по скоростта на пренос на трафика на приложенията, която определя времето за доставка на поискания HTTP обект до клиентския компютър. В този смисъл експертите препоръчват на потребителите да определят най-важната за тях характеристика на Web ускорителите, за да се сдобият с продукт, който е най-добър именно в тази област. В търсене на предела Тестовете на мащабируемостта трябва да помогнат на потребителите да сравнят възможностите на Web ускорителите и нуждите на техните мрежи. В началото специалистите определят максималния брой клиентски връзки, поддържани от всеки Web ускорител. Конфигурацията на емулатора Avalanche на Spirent е настроена да имитира 4 млн. клиенти с Internet Explorer. Всеки от тях инициира TCP връзка и задава искане за отваряне на Web обект от 1 Kbite от един или няколко виртуални IP адреса на Web ускорителя. Всички Web ускорители използват един виртуален proxy IP адрес за достъп до множество сървъри от тестовата среда. След като получи искания обект, клиентът изчаква 60 секунди и задава искане за нов обект към същата връзка. Дългият период на „размисъл” позволява на специалистите да определят с точност броя на връзките. За всяко устройство те добавят нови връзки, докато то не започне да греши при обработката на някои транзакции или поне, докато не достигне пределния брой връзки от 4 млн. При тези тестове са задействани средства за комутация от седмо ниво. А ето и какво се получава. NetScaler Application Delivery System на Citrix достига пределния брой TCP връзки (4 млн.), следван от устройствата BIG-IP на F5 (около 3,5 млн.) и ServerIron 450 на Foundry (2,7 млн.). За ускорителя DX 3600 на Juniper максималното ниво е 2 млн. и то, при условие че в мрежата работят едновременно 4 устройства. Сиреч, един ускорител обслужва не повече от 500 000 съединения. Продуктите на Crescendo и Array за малко успяват да достигнат 1 млн. едновременно поддържани TCP връзки. В най-добрия случай скоростта на установяване на връзка и общия им брой трябва да се оценяват независимо едно от друго, но ограничените срокове за тестване не им позволяват да повторят тестовете с по-ниска скорост на генериране на запитванията. Въпреки това специалистите твърдят, че данните са коректни, тъй като условията на тестване са еднакви за всички продукти. TCP мултиплексиране И шестте устройства поддържат TCP мултиплексиране, но 300-кратната разлика в резултатите сочи, че тази поддръжка е реализирана по напълно различен начин. TCP мултиплексирането безспорно увеличава производителността, защото.к. освобождава сървърите от нуждата да обработват TCP пакети, изискваща сериозни изчислителни ресурси. TCP мултиплексирането, наред с комутацията от седмо ниво, са отнесени към групата на задължителните за всеки продукт функции. Преди теста емулаторът Avalanche е конфигуриран да формира и поддържа 100 000 клиентски TCP съединения. Клиентите зареждат титулните страници на различни сайтове. След 60 секунди експертите сравняват броя на клиентските връзки, което винаги е равно на 100 000 броя връзки от страна на сървъра. Отношението показва ефективността на мултиплексирането. Разбира се, взима се предвид, че на това отношение може да влияе продължителността на паузата преди подаването на поредното искане. За едни устройства то е доста съществено, за други на практика не съществува. Стартът е с 3-секундна пауза, което означава, че потребителите доста бързо прескачат от страница на страница. След това тестът се повтаря с 60-секундно забавяне. За редица устройства увеличаването на паузата довежда до по-високи отношения на данните от мултиплексираните връзки (Фиг. 1).
Фиг. 1. Ефективност на TCP мултиплексирането Брой клиентски връзки на една сървърна връзка Най-добре се представя продуктът на Citrix, който при 60-секундна пауза „избутва” 346 клиентски връзки в един сървър. Подобна ефективност на мултиплексиране е белег за съществено намаляване на сървърното натоварване. Но при 3-секундна пауза положението е доста различно. На всяко сървърно съединение NetScaler Application Delivery System формира едва по три клиентски връзки, т.е. ефективността е намаляла стократно. Според Citrix това се дължи на липсата на кеширане и на високата скорост на формиране на транзакции при теста. Web ускорителят на Crescendo при 60-секундна пауза мултиплексира клиентски TCP връзки в съотношение 100:1, а при трисекундни паузи то е 60:1. Няма обяснение за резултата. Подобно е положението и при ServerIron на Foundry, където на предварителните изпитания съотношението е 50:1, независимост от продължителността на паузата, а при обновяване на програмния код спада под 2:1.
Фиг. 2. TCP-мултиплексиране и скорост на обработка на транзакции Брой транзакции на секунда, хил. В опит да си изяснят причините за тези разлики, експертите анализират скоростта на обработка на транзакциите на всяко устройство (рис. 2). Емулираните клиенти винаги подават искания от една и съща честота, тъй като разликата в скоростта на обработка на транзакциите може да е свързана единствено с времето за отговор на самите Web ускорители. Колкото по-висока е скоростта за обработка на транзакциите, толкова по-голямо е съотношението на данните от мултиплексираните съединения. Изключение прави само DX 3600 на Juniper. Съотношението 100:1 обаче не означава, че в реалната мрежа 100 сървъра могат безпроблемно да бъдат заменени от един. Играят роля и няколко важни фактори, включително степен на оползотворяване на ресурсите на сървъра и паметта, мрежовото натоварване и особеностите на отделните приложения. Но дори имайки това предвид, експертите заключават, че мултиплексирането на TCP съединенията има огромни предимства при изграждането на сървърни клъстери. Максимален брой едновременни TCP връзки
Забележка: Пределът на скоростта на установяване на връзка е достигнат преди максимално възможния брой връзки Производителност на приложно ниво Тъй като някои устройства имат по 16 порта Gigabit Ethernet, експертите решават да проверят колко бързо те успяват да предават данни. За целта измерват „приложната производителност” (goodput) на всяко устройство в съответствие със спецификациите на RFC 2647 - обем получени данни, отчитайки загубените или повторно изпратените. Така определената величина е самата производителност на приложно ниво по модела OSI. Тя показва доколко бързо Web ускорителят изпраща поискания HTTP обект към клиентското устройство. За целите на теста са формирани 100 емулирани клиента, всеки от които подава искане към сървъра за едномегабайтови обекти. Отново се използват URL указатели за всеки обект, карайки устройствата да решават за комутация на седмо ниво. В началото експертите оценяват значението на „чистата” производителност при липса на ускорители, което определя възможностите на самия канал за пренос. То е 3,8 Gbps, което е близо до теоретичния максимум, ако се взима предвид обема служебна информация, привнасяна от протоколите на Ethernet, IP, TCP и HTTP. Нито едно от устройствата обаче дори не се доближава до този показател, обобщават специалистите. Продуктите на Array, Citrix и Juniper са с по-малко от четири клиентски и сървърни интерфейса, поради което и не могат да достигнат въпросната „чиста” производителност. Ускорителят на Array и устройството на Juniper са с по един клиентски интерфейс, а продуктът на Citrix — с два. Въпреки това резултатите на устройствата на Array и Citrix са далеч по-добри от тези на продуктите с четири интерфейса – и двата продукта са на крачка от максималните показатели, които съответстват на броя на интерфейсите им. Реалните показатели на производителността на приложно ниво се оказват видимо по-малки от теоретичния максимум. Така, най-добър резултат – малко над 3 Gbps – е отчетен при CN5080E на Crescendo благодарение на ускорението за пренос на пакети. Второто място с 2,5 Gbps е за BIG-IP на F5, според чиито представители показателите зависят от броя обслужвани клиенти - в тестовете с хиляда и 10 000 клиенти производителността на приложно ниво е 3,2 Gbps. Изводът се налага от само себе си – броят потребители действително влияе на производителността. ServerIron 450 на Foundry пък отчита производителност от 1,9 Gbps, или два пъти по-малко от максималната. В същото време конфигурацията от четирите устройства на Juniper е най-бавната сред ускорителите с четири интерфейса. Няма пълно щастие В кръга на шегата, тестът сам по себе си не предполага сравняване на чушки с картофи. Но поради факта, че различните производители искат различни неща и дизайнът на различните устройства е различен, това се оказва невинаги възможно. Особеностите на архитектурата на различните модели поставят отпечатък върху топологията на тестовата мрежа. Продуктите на компаниите Array, Citrix и Juniper изискват използване на комутатор от второ ниво за пренос на трафик по клиентска и сървърна към локалните виртуални мрежи. Продуктите на Crescendo, F5 и Foundry пък прекрасно работят и без допълнителен комутатор. В същото време експертите не смятат, че минималните разлики във времената на задържане, дължащи се на наличието на допълнителни комутатори и представляващи десетки микросекунди, са оказали съществено влияние на резултатите от теста. Въпреки това проектиращите мрежи трябва да знаят, че различните Web ускорители изискват различни мрежови топологии. Малко повече за тестовете на щатското сп. NetworkWorld Разнообразието от функции на клиентските Web ускорители ограничава списъка на тествани продукти до тези, които поддържат мултиплексиране на TCP съединения и взимат решения за по-нататъшно транспортиране на трафика единствено на базата на съдържанието в пакетите от седмо ниво като URL. Тестовата среда имитира 2,35 млн. Web клиента с Internet Explorer, както и 16 сървъра, работещи под Internet Information Services. За емулация на клиентите и сървърите са използвани две двойки генератори/анализатори - Avalanche и Reflector 2500 на Spirent Communications. За свързване на устройствата в мрежата е използван комутатор Summit 7i на Extreme Networks и виртуален комутационен панел на Apcon. За оценка на броя на едновременно поддържани връзки клиентите, емулирани с устройства на Avalanche, подават искане към всеки от ускорителите за зареждане на обект от 1 KB с виртуален IP адрес. Ускорителят разпределя запитванията по сървърите, които се емулират от устройства на Reflector. При липса на ускорител двойката Avalanche/Reflector формира до 4 млн. връзки. За подсигуряване на комутацията от седмо ниво са използвани списъци с URL адреси, в които всяко четно запитване завършва с подчертаване. Ускорителите са настроени да изпращат запитвания с адреси без подчертаване към първите осем сървъра, а запитванията с подчертаване — към останалите 8 сървъра. С други думи, преди транслиране на запитването Web ускорителят трябва да анализира URL адреса. В теста за мултиплексиране на TCP съединенията се използват титулните страници на Amazon.com, BBC, UCLA, Белия дом и Yahoo, които съдържат текстови и графични елементи. С цел да се гарантира работата на средствата за комутация от седмо ниво производителите са настроили за целта конфигурациите на устройствата си така, че запитванията за графично съдържание (файлове като .gif и .jpg) се предават на втория пул от осемте сървъра, а останалите запитвания — към първия пул. При измерване на времето за отговор и скоростта на обработка отново се използват петте Web сървъра от теста за мултиплексиране с две промени – първо са отделени три класа потребители с три типа достъп — комутируем (53 Kbps), DSL/CATV (1,5 Mbps) и по локална мрежа (1 Gbps), а структурата на генерирания трафика позволява поддържането на постоянно съотношение на потребителите на трите посочени класа — 40:40:20. Общия брой потребители е равен на хиляда, 10 и 100 хиляди. За измерване на компресията на HTTP трафика хиляда клиента едновременно искат зареждането на един текстов обект от 500 KB. В тестовете с такива обекти и зареждане на домашни страници се измерва скоростта на обработка на транзакцията и средното време за отговор при посочване на конкретна страница или URL адрес.
Не са един или два методите за бърза доставка на съдържание в клиентските Web ускорители, като тук попадат комутация на приложно ниво, компресиране на HTTP трафика и мултиплексиране на TCP връзки. Проблемът обаче е в това, че тези устройства или ускоряват доставката на трафик към ограничен брой потребители, или „бавно” обслужват много клиенти, но не могат да правят и двете неща едновременно. В опит да открие златната среда, американското издание на Networkworld публикува данните от отнелите почти година комплексни тестове на клиентски Web ускорители. В лабораторията им са попаднали продуктите на шест водещи производители — Array, Citrix, Crescendo Networks, F5 Networks, Foundry Networks и Juniper Networks. А ето и изводите:
- * Предимствата от използването на ускорители са напълно реални – те увеличават скоростта на доставка на съдържание и едновременно с това намалява натоварването на сървърите в центровете за обработка на данни. * Компресирането на HTTP трафика не винаги намалява времето за отговор, а понякога дори го увеличава, включително при работа с добре компресируеми текстови обекти и при много ниски скорости на достъп на клиентските терминали. * Мултиплексирането на TCP връзките позволява значително (до 350 пъти) да се намали натоварването на сървъра, свързано с обработката на мрежовия трафик. * Някои устройства не могат да обработват трафика на TCP връзките, ако потребителят подава много бързо нови и нови web страници (например, при работа със сайт за е-търговия). * Продуктите на различните компании съществено се различават по максимален брой поддържани връзки и максимална скорост за пренос на трафик.
Фиг. 1. Ефективност на TCP мултиплексирането Брой клиентски връзки на една сървърна връзка
Фиг. 2. TCP-мултиплексиране и скорост на обработка на транзакции| Компания | Брой връзки |
| Липса на ускорител (теоретична база) | 4 000 000 |
| Array | 700 000 |
| Citrix | 4 000 000 |
| Crescendo | 900 000 |
| Foundry* | 2 699 844 |
| Juniper (едно устройство) | 500 000 |
| Juniper (4 устройства) | 1 999 999 |
(03.05.2007)
КОМЕНТАРИ
Трябва да сте регистриран потребител, за да коментирате статията
"Web ускорители – мащабируемост или скорост"
"Web ускорители – мащабируемост или скорост"
Tech Quiz
Последни новини
- Стартира проектът „ТОП ИКТ Работодател“
- В 29 общини и 24 малки селища ще се изгражда инфраструктура за ШЛ интернет по проект на ЕСМИС
- Двуобхватен маршрутизатор от новата серия amplifi обяви D-Link
- D-Link вдига HD оборотите с нов двулентов високопроизводителен рутер DIR-857
- Мултимедийните системи Aastra 400 обслужват комуникациите на СМБ





