История Citrix. Часть 1
26 сентября 2015 г. | Категория: Теория и практика SDDC, Виртуализация вычислений
Стив Джобс оставил после себя несколько афоризмов, удивительно точно отражающих специфику компьютерной отрасли. Один из них звучит так: "Изречение, которым я руководствуюсь во всем: "Вы никогда не узнаете, что вы искали, до тех пока не найдете это самое". Высказывание вскрывает глубинную природу компьютинга и заслуживает дополнительного анализа, поскольку, будучи вырванным из контекста, оно рискует не быть понятым до конца. Дело в том, что создание новых компьютерных технологий – это всегда путь в неведомое, практика, накопленная за десятилетия, показывает – мы узнаем суть сделанного, сделав нечто.
Вот, пожалуй, самый актуальный для нынешнего времени пример. Не так давно мало кто мог предположить нынешний всплеск мобильных технологий буквально изменивших образ жизни человечества. В начале века из умных телефонов были одни лишь уникальные Blackberry, тогда большие надежды возлагались на ультра мобильные ПК (Ultra-Mobile PC, UMPC) и едва-едва появлялись первые образцы дешевых нетбуков. Прошло менее десяти лет и все, на что возлагались надежды, осталось в прошлом, никто не мог даже представить себе нынешнее торжества смартфонов и планшетов.
На фоне такого непредсказуемого будущего совершенно удивительной кажется технологическая история Citrix, она почти линейна, при ретроспективном взгляде на пройденный компанией за четверть века путь создается впечатление, что он был построен заблаговременно и нынешняя ориентация на мобильность непосредственно следует из разработок, выполненных 25 лет назад. Такое впечатление складывается благодаря непрерывной преемственности, поэтому обращение к технологической истории Citrix позволяет лучше понять сегодняшний день и увидеть логическую связь между продуктами, образующими нынешнюю продуктовую линейку.
Начало
Создание и становление Citrix неразрывно связано с личностью ее основателя Эдварда Якобуччи, длительный период он был главным идеологом и то, что называется лицом этой компании. Его влияние вышло за пределы компании, не случайно на промежуточном финише, в 1999 году журнал Forbes назвал Якобуччи отцом утвердившейся к тому времени во многом благодаря его усилиям альтернативной модели организации вычислений, получившей название тонкий клиент-сервер (thin-client/server computing).
На первых порах компания называлась Citrus Systems, ему свидетельство первый логотип.
За десять лет до этого Якобуччи вместе с несколькими единомышленниками основал компанию Citrix Systems, под его руководством она вышла в лидеры этого технологического направления. Несмотря на все успехи, необходимо признать тот факт, что приверженность идее тонкого клиента лет 15 назад не без основания выглядела как своего рода инакомыслием, тонкий клиент был уделом более просвещенного меньшинства, несмотря на то, что исторически тонкие клиенты появился намного раньше более ставших более популярными толстых клиентов. Тонкими можно считать индивидуальные рабочие местами, снабженные экраном и клавиатурой, более известные как "зеленые" терминалы. Такие терминалы подключались напрямую к мэйнфреймам или к мини-ЭВМ по заимствованному из телеграфа последовательному интерфейсу RS-232. Потом, вместе с Unix, пришли тоже тонкие Х-терминалы. Однако с началом массового производства персональных компьютеров и распространением локальных сетей оказалось, что и обычный ПК тоже можно с успехом использовать как рабочее место в корпоративной системе, к тому же на них и переносить можно часть работы, снижая нагрузку на серверы. Клиентов, работающих на ПК, стали назвать «толстыми».
В итоге сложился двухполюсный мир, где множество терминальных решений разместилось на концах оси «тонкий — толстый». Средняя же часть оси до самого последнего времени оставалась незанятой, но, как совсем недавно выяснилось, и она весьма перспективна. Для каждого из двух альтернативных подходов к клиентским местам имеются аргументы в свою пользу. В чем-то предпочтительнее тонкий, в чем-то толстый, однако то, что тонкий клиент по целому ряду эксплуатационных показателей превосходит классический персональный компьютер на рабочем месте, не подлежит сомнению. Об этом часто и вполне доказательно говорили приверженцы этого направления. Но, признавая убедительность их аргументов, нельзя не согласиться со статистикой, свидетельствующей не в пользу тонких. От общего числа рабочих мест на них приходилось не более одного процента. Эта пропорция, скорее всего, предопределена тем, что ПК адекватнее природе человека, поэтому доминирующее положение ПК было объективно.
До поры казалось, что два типа клиентов останутся разделены навечно, но в середине прошлого десятилетия под влиянием возрастающего интереса к мобильности началось двустороннее встречное движение и с 2006 году набирает силу новая волна интереса к тонким клиентам. Ее возникновение во многом стимулировано появлением технологий, объединенных названием Virtual Desktop Infrastructure (VDI), а позже подкреплено новыми технологиями доставки десктопов и приложений на рабочие места и появлением многочисленных мобильных устройств, используемых в качестве платформы для рабочих мест. Оказалось, что тонкий клиент и персональный компьютер идеологически не противоречат друг другу, в том случае если ПК становится виртуальным. В итоге было разделение на тонкий и толстый исчезло, оказалось, что клиент должен быть таким, какой требуется пользователю.
Сегодня тонким клиентом мы называем строго определенный класс терминальных устройств, хотя еще совсем недавно "тонкий клиент" был символом централизованного подхода к построению информационных систем в противоположность "толстому клиенту" и распределенной архитектуре. Право на существование тонкого клиента для большинства было не очевидно, но Citrix Systems сохранила верность избранному курсу и в свете последних технологических трендов оказалась в выигрыше, прежде всего таких благодаря общей тенденции на централизацию, ресурсов в том числе созданию мощных ЦОДов, облачных и мобильных вычислений. Ее деловые показатели постоянно растут, доход в 2014 году составил 3,14 млрд. долл., компания вышла на 741 место в списке Fortune 1000 и на 1 793 место в списке Forbes Global 2000.
Первые шаги
Довольно скромное начало не предполагало столь масштабного разворота событий в будущем, компания Citrix создавалась под относительно узкую задачу, цель, поставленная отцами-основателями, была скромной. Они всего лишь хотели превратить операционную систему OS/2 из однопользовательской в многопользовательскую. По тем временам это была довольно актуальная задача, фактически Citrix бросал спасательный круг спасательный круг OS/2. Ныне совершенно забытая OS/2 задумывалась как замена для, мягко говоря, "цельнотянутой" операционной системы MS-DOS. Происхождение MS-DOS непрозрачно, ее слишком многое связывает с предшествовавшей ей ОС PC-DOS, разработанной компанией Digital Research и позже переименованной в DR-DOS.
Создание OS/2 рассматривалось как очень серьезное начинание, система разрабатывалась совместно Microsoft и IBM с 1985 года, она планировалась для второго поколения IBM Personal System/2 (PS/2) и, как казалось, освобождала Microsoft от сомнительного прошлого. На первых порах проект второго поколения, сочетавший компьютер PS/2 и ОС OS/2, внушал надежды, но его постиг полный провал, поскольку OS/2 не выдержала конкуренции с Windows 3.0 в сочетании со стандартными ПК на процессорах Intel 80486. Конкуренция Windows c OS/2 еще одна непрозрачная страница в истории Microsoft. История потопления OS/2 заслуживает отдельного рассмотрения.
Как бы то ни было, но в итоге OS/2 выпускалась только четыре года в период с декабря 1987 по декабрь 2001.
Надежность Windows до появления версии XP многие помнят, поэтому и чтобы как-то сохранить вложенные силы и средства, в IBM было принято решение модернизировать OS/2 и превратить ее в сетевую ОС. Таким образом IBM захотела сделать из нее платформу для серверов, поддерживающих по локальной сети клиентов, которые работают под управлением MS DOS и Windows. Параллельно с IBM со своей инициативой вышла команда Citrix Systems, состоящая из выходцев из IBM, ее возглавил признанный гуру по части OS/2 Эд Якобуччи. Они пошли к той же цели своим путем и решили посягнуть на территорию, занятую до тех пор операционными системам Unix, Xenix, QNX, Theos и многочисленными вариациями на тему DOS. Первая версия их продукта получила название Citrix Multiuser (1991) и была основана на той же OS/2, но в данном случае лицензированной у Microsoft, с дополнением целым рядом новых функциональных возможностей. Citrix Multiuser поддерживала до 15 пользователей и использовалась в небольших офисах. В 1992 году была выпущена версия Citrix Multi-user v.2.0.
Хотя ОС Citrix Multiuser продемонстрировала преимущество реализованного в ней подхода, но, тем не менее, имела ограниченный экономический успех, поэтому с момента основания и до 1995 компания так и оставалась стартапом. То есть она не приносила дохода и существовала при поддержке со стороны Intel, Microsoft и еще нескольких венчурных капиталистов. Перелом случился в 1993 году, когда Citrix приобрела у Novell продукт под названием Netware Access Server (NAS), который позволял осуществлять удаленный вызов приложений, работающих под MS DOS. NAS работал примерно так, как работают современные терминальные серверы, но был рассчитан на очень недорогие компьютеры. Его называли "RPC для бедных" (poor man Remote Procedure Call).
Наступала эпоха Windows и тогда на основе NAS в Citrix разработали весьма успешный продукт WinView, поддерживающий Windows-клиентов. После чего компания стала доходной и приобрела желаемый статус публичной. Продукт WinView помимо ядра OS/2, собственного протокола ICA, это был вклад самой Citrix, включал ОС Windows 3.1 и клиентское ПО Novell Netware. Посредством WinView до 10 клиентов могли получить доступ к приложениям, работающим под DOS или Windows. Citrix WinView позволял одному приложению, работающему под DOS или Windows 3.1 на одном компьютере, быть распределенным между несколькими, подключенными по сети или по телефонной линии. Очевидно, что продвижению WinView способствовало появление достаточно мощных компьютеров на процессоре Pentium и к тому времени уже был накоплен значительный багаж 16-разрядных приложений Windows. Если учесть, что подключение по телефонным модемам тогда было правилом, то нетрудно понять, что возможность подключения удаленных компьютеров в серверу было удачным решением для большого круга потребителей.
В эпоху Интернета
С наступлением эпохи Интернета в 1994 году Citrix добавила в WinView поддержку TCP/IP, что открыло возможность осуществлять транзакции по сети. Необходимая для этого технология была куплена у недолго, но очень ярко просуществовавшей FTP Software. Эту компанию сгубило появление поддержки TCP/IP в Windows 95. Новый продукт, логично названный Citrix TCP/IP For WinView, позволял браузеру работать под управлением Windows 3.1 под WinView на сервере, а клиенты получали через него доступ к сети. За продукт TCP/IP For WinView компания Citrix получила главный приз конференции NetWorld Interop 1994. С этого события ориентация на Интернет стала основной производственной программы Citrix на многие годы.
Однако период успеха Citrix WinView оказался непродолжительным, продукт покупался до тех пор, пока не получили широкое распространения 32-битовые приложения Windows 95. Напомним, что операционная система Windows 95 являлась гибридной, то есть она поддерживала исполнение и 16-ти, и 32-разрядные коды, а в OS/2, являвшейся первоосновой Citrix WinView, эмулировался только 16-разрядный код. Однако в Citrix это обстоятельство не стало неожиданностью, к неизбежным переменам здесь были готовы, а именно заранее разработаны два основных компонента компьютинга, основанного на серверах (Server-based computing или SBC). Первая – уже известная к тому времени Независимая архитектура Citrix (Citrix Independent Computing Architecture или ICA), вторая – новая технология Citrix MultiWin. ICA, иногда называемая протоколом, и MultiWin стали стандартом де-факто в SBC. ICA обеспечивает сдвиг вычислений с клиента на сервер, а MultiWin организует многопользовательский доступ к приложениям, исполняемым на сервере. Они не устарели и продолжают свое существование и в современных решениях.
Благодаря двум эти компонентам на многие годы Citrix стала лидером SBC, как технологическим, так, если можно сказать и культурным. Усилиями Citrix утвердились основные принципы, выраженные аббревиатурой MAPS, расшифровываемой как Management, Access, Performance и Security. Management означает, что в SBC совсем не сложно управлять приложениями, поскольку необходимо поддерживать всего один загружаемый экземпляр на сервере, а не на каждом клиенте. Access-приложение, запущенное на сервере, может быть отображено с любого клиента в любое время. Performance-приложение выполняется на высокопроизводительном сервере, и производительность работы практически не зависит от используемого клиентского оборудования. Защита обеспечивается тем, что в Citrix "только для глаз" (eyes only), то есть собственно данные не покидают сервера, пользователю передается только отображающая их картинка. Citrix представил эти четыре классических преимущества SBC и они остаются актуальны по сей день.
Итак, заблаговременно, понимая ограниченность жизни OS/2 и в расчете на будущее еще в 1991, Citrix получила у Microsoft лицензию на надежную Windows NT, созданную на базе операционной системы RSX/11M компании DEC, и сразу же начала адаптацию технологии MultiWin для этой платформы. Через четыре года, в 1995 был представлен качественно новый продукт WinFrame, где сочетались технология MultiWin, ICA и операционная система Windows NT. Название WinFrame символично, оно выбрано с явным намеком на аналогию с мэйнфреймом, где реализован централизованный подход управления ресурсами. Продукт WinFrame оказался чрезвычайно успешным, он пользовался таким широким спросом, что в 1997 году Microsoft в очередной раз проявила коварство и решила разработать свою собственное аналогичное решение SBC. Для Citrix объявление об этом решении оказалось ударом, за один день акции компании упали в цене на 60%.
В качестве средства давления со своей стороны Microsoft отказала Citrix в лицензии NT 4.0, в общем-то это был очевидный шантаж: либо продайте многопользовательские дополнения к NT, либо конец вашему бизнесу. Однако в итоге многомесячных переговоров был найден компромисс. Microsoft стала стала разрабатывать свой собственный протокол RDP (Remote Desktop Protocol) с учетом ICA, между двумя протоколами имеются существенные отличия, собственного клиента, а Terminal Services Edition NT 4.0 в значительной мере основываются на купленной технологии Citrix MultiWin. За Citrix осталось право развивать WinFrame, собственность на ICA и право на разработку продуктов, расширяющих возможности Microsoft Windows NT Terminal Services (add-on product). По соглашение Microsoft могла разрабатывать тонкие клиенты только для ОС Microsoft Windows, тогда как Citrix была свободна разрабатывать ICA-клиенты для любой операционной системы. Для Citrix достигнутое соглашение оказалось выгодным, биржа отреагировала немедленным подъемом цены на акции.
Microsoft быстро инкорпорировала MultiWin в Windows NT 4.0 Terminal Server Edition с собственным клиентом, а Citrix столь же быстро выпустила свой MetaFrame 1.0 для Windows NT 4.0 Terminal Server Edition. MetaFrame – это прикладное ПО от Citrix, служащее для придания Microsoft Windows Terminal Server дополнительной серверной и клиентской функциональности, оно позволяет любому клиенту, независимо от того на какой ОС он работает, подключаться к Windows Terminal Server и выполнять Windows-приложения, используя для этой цели собственный интерфейс. В получившей широкое распространение версии MetaFrame 1.8. обладал серьезными преимуществами по сравнению с Windows NT 4.0 with Terminal Services в чистом виде. Среди них: способность работать с иными чем Windows 32-разрядными приложениями; незначительное потребление пропускной способности канала даже при графике с высоким разрешением как следствие использования ICA, работа с множеством сетевых протоколов (RDP работает только по TCP/IP); возможность запуска ICA-клиента из браузера и т.д., список преимуществ включает еще два десятка пунктов. В конечном итоге в 1998 году между двумя компаниями сложилось удачное распределение функций, а Citrix смогла занять лидирующую позицию в лагере приверженцев централизации вычислений и тонких клиентов. Продукт MetaFrame, родоначальник этого направления продолжает жить в своих преемниках, в 2001 была выпущена имевшую большую популярность версия MetaFrame XP, в 2005 обновленная редакция получила название Presentation Server, а 2008 Presentation Server сменил новый продукт XenApp, название которого явно отражает переориентацию на виртуальные технологии.
В целом 1998 год был насыщен заметными для Citrix событиями. Компанию оценили аналитики, Deloitte & Touche назвала Citrix одной из самых быстрорастущих технологических компаний, за год численность, рыночная капитализация и доход возросли вдвое. В сентябре в Орландо прошла Thinergy 98 – первая в мире конференция, посвященная компьютингу по схеме тонкий клиент/сервер, ее организатором стала Citrix. она прошла под лозунгом "Думай тонко" (Think thin), собрала более 2000 участников, более полутора десятка компаний, среди них IBM, Wyse, Novell и др. Нередко Thinergy признают стартом нового индустриального направления. Журнал Network Computing писал по этому поводу: "Компьютинг, ориентированный на тонкого клиента (thin client computing) вошел в полосу зрелости, сформировалось сообщество производителей программного и аппаратного обеспечения, каналы продаж и тысячи конечных пользователей. Признанным лидером нового направления стала компания Citrix.
Под влиянием целого ряда обстоятельств, начиная с 1999 года, Citrix меняет статус инженерной компании на реноме крупного игрока софтверного рынка. Журнал FORTUNE поместил Citrix в первую пятерку списка 100 наиболее быстрорастущих компаний. Журнал Forbes присвоил титул наиболее динамичной американской софтверной компанией. Citrix организует сообщество разработчиков, численность которого за 3 месяца перевалила за 3000, входит в различные промышленные ассоциации, открывает свои представительства в странах Европы и Азии. К числу немаловажных событий следует отнести и то, что сначала ненадолго, а потом, похоже, навсегда, руководителем компании стал Марк Темплтон. Марк, в отличие от Эда Якобуччи, не является техническим специалистом. Переход власти от инженеров и ученых в руки менеджеров – явление совершенно закономерное, оно типично, если не сказать обязательно, для быстрорастущих публичных компаний, достаточно вспомнить Cisco или VMware. Многие весьма успешные компании сознательно не стремятся к экспансии, обычно на своем месте остаются только основатели, кто умудряются сохранить свою компанию частной, например SAS или Intersystems.
К моменту появления Windows XP апробированное решение Metaframe 1.8 было переделано в Metaframe XP, главное отличие заключалось в объединении всех консолей Metaframe 1.8 в объединенную консоль Citrix Management Console (CMC). Позже на ее основе будет создана консоль Presentation Server Console. Под именем Citrix Presentation Server с разными индексами до 4.5 прямой наследник Metaframe просуществовал до 2008 года, когда появилось новое, однако с преемственностью индекса Citrix XenApp 5.0, согласованное с другим продуктами XenServer и XenDesktop, которые появились в продуктовой линей после приобретения компании XEN Source в 2007 году.
Феномен ICA
От продуктов конкурентов Citrix Multiuser отличалась наличием собственного архитектурного подхода, который можно считать и протоколом ICA (Independent Computing Architecture). Его основным автором был сам Якобуччи. Через много лет после создания на вопрос: "В чем главное достоинство ICA?" он ответил довольно неожиданно: "Predictability (предсказуемость). Ни минимизация передаваемых данных, ни скорость передачи при современных каналах не являются решающим фактором". Скорее всего, под предсказуемостью Якобуччи понимал надежность установления контакта межу клиентом и сервером. ICA создавался во времена телефонных модемов, не отличавшихся достойным качеством связи, но позволял справиться с возникающими проблемами. ICA позволяет перенести выработанную в тех суровых условиях надежность в современные системы.
Неслучайно ICA назван независимым (Independent Computing Architecture), в отличии от других коммуникационных протоколов он не чем не привязан к определенной платформе, ни какому транспортному протоколу. То есть ICA может работать под управлением любой операционной системы (Windows, Linux, iOS и других), работать поверх любых стандартных сетевых протоколов (TCP/IP, NetBEUI, IPX/SPX, PPP и других) и любых стандартных транспортных протоколов (ISDN, Frame Relay и ATM и других). Его аналог – протокол Remote Desktop Protocol (RDP), которым комплектуется большая часть редакций, Microsoft Windows, начиная с Windows XP и далее. Он устанавливается как клиент в Remote Desktop Connection (RDC). Microsoft выпустил свой собственный протокол в 1997, иногда утверждают, ICA стал основой для RDP. Если это и так, то скорее идеологической основой, а не технологической, между двумя протоколам имеются существенные различия. Более того, можно с уверенностью говорить о преимуществах ICA перед RDP.
К числу главных достоинств ICA относятся поддержка публикации приложений, низкая требовательность к полосе пропускания, возможность использования критозащиты, передача сигналов от клавиатуры и мышки, но главное – высокая надежность сессии. По сравнению с ICA, протокол RDP имеет ряд слабых мест: он работает только по TCP/IP, не поддерживает работу с приложениями через браузер, допускает ограниченную возможность криптозащиты и, что тоже самое главное, не гарантирует надежность сессии.
ICA работает на уровне представлений сетевой модели OSI Model, в этом отношении он близок к протоколу UNIX X-Window. Плюс к тому он обеспечивает, что критически важно, средства для передачи от сервера клиенту графики, видео и аудио данных.
Большая часть функциональных сообщений и передача данных между клиентом и серверов (в современных условиях между XenApp Plugin/Receiver и XenApp Server) осуществляется по виртуальным каналам, каждый из которых имеет определенное предназначение: диск, графика, COM-порт, принтер, аудио, видео и т.п. Схема с виртуальными каналами напоминает традиционную компьютерную архитектуру с ее драйверами устройств. Виртуальный канал ICA включает в себя виртуальный драйвер на клиентской стороне, который коммуницирует с приложением, находящимся на стороне сервера. XenApp имеет встроенные готовые к использованию виртуальные каналы, в дополнение к ним пользователь может создавать собственные, требуемые ему, есть соответствующий Software Development Kits.
Всего может быть до 32 виртуальных каналов, их работа поддерживается иерархией драйверов от ICA Winstation Driver, ниже Protocol driver и еще ниже Transport Driver. Виртуальные драйверы работают на уровне презентации в модели OSI.
Еще одной замечательной особенностью протокола ICA следует признать надежность сессии (Session Reliability), что особенно важным оказалось с появлением мобильных устройств. Его обеспечивает обратная связь между клиентом и сервером. Это то самое качество predictability (предсказуемость), о котором говорил Якоббучи. Если по каким-то причинам связь между клиентом и сервером прерывается, то сессия просто приостанавливается до восстановления связи. Вы не увидите пустой экран, а всего лишь какой-то значок, указывающий на необходимость подождать до восстановления сессии.
Теги: Citrix, SDDC, SDN
|
Комментариев: 0