Курс лекций Составитель Соркина В. Е. Введение 12

Вид материалаКурс лекций

Содержание


Фундаментальные проблемы Политические вопросы
Сложность обработки данных
Избыточность аппаратных средств
Межмашинные процессы
Подобный материал:
1   ...   26   27   28   29   30   31   32   33   ...   71

Фундаментальные проблемы

Политические вопросы

Когда какая-то технология становится неотъемлемой частью жизни общества, то общество начинает принимать большее участие в ее развитии и управлении ею. Так было с железными дорогами, телеграфной и телефонной связью, телевидением, энергетикой и т. п. Сегодня общество только начинает уделять внимание тому факту, что оно в значительной степени зависит от компьютеров.
Мы вступаем в эру конфликта между предпринимательской энергией, порождающей новшества, и потребностью общества осуществлять регулирование критического ресурса невзирая на риск подавления конкуренции и изобретательности. Это осложняется тем фактом, что социальные нормы и связанные с ними правовые модели меняются медленнее, чем технологии. ИТ-индустрия должна найти подходящее равновесие между потребностью в регулирующей системе и собственными стремлениями как отрасли, сформировавшейся без регулирования и опирающейся на стандарты де-факто.
Многие современные проблемы надежности инфраструктуры — это на самом деле политический вопрос. Недавний энергетический кризис в штате Калифорния во многом был вызван плохо проведенной приватизацией. Малая зона покрытия и плохое обслуживание у операторов сотовой связи в США частично обусловлены директивой Федеральной комиссии США по связи (Federal Communications Commission, FCC) не предоставлять общефедеральных лицензий. Вопросы политики часто выходят за границы государств, как мы видим на примере борьбы за введение глобальных стандартов для технологий мобильной связи третьего поколения. Существующие пользователи эфира (часто это военные) в разных странах занимают разные полосы частот и отказываются их освобождать, затрудняя отыскание единого диапазона в мировом масштабе.

Сложность обработки данных

Мы являемся свидетелями появления сверхкрупных компьютерных систем, построенных на основе слабых связей9 между службами, машинами и прикладными программами. Неожиданные (и самые разные) проявления в работе таких систем представляют собой все большую, долгосрочную угрозу.
Архитектура, основанная на разнообразии, устойчива, но при этом функционирует на грани хаоса. Это справедливо для всех сверхкрупных систем, начиная от природных, например погодных условий, до созданных человеком, например рынков и единой энергосистемы. Все ранее созданные нами сверхкрупные системы — энергосистема, телефонные сети — проявляли внезапное непредсказуемое поведение. Вот почему в 1965 году отказала энергосистема, и было обесточено все восточное побережье Соединенных Штатов, и вот почему время от времени целые города отключаются от телефонной сети, стоит кому-нибудь установить программное исправление на единственном коммутаторе. Дело в том, что сложность системы превзошла способность любого отдельного человека — и любой отдельной организации — понимать все ее взаимосвязи.
Сегодня существуют чрезвычайно защищенные и безопасные компьютерные системы, но по большей части это отдельные системы специального назначения, которые тщательно проектируются и затем работают изолированно. Мы на самом деле не знаем, что случится, если мы динамически свяжем друг с другом миллиарды — а возможно, и триллионы — интеллектуальных и зависящих друг от друга устройств, обладающих архитектурой и программным обеспечением множества разных типов и поколений.
С ростом мощности компьютеров — как в отношении объема хранимых данных, так и в отношении скорости вычислений — соответственно возрастают абсолютный размер и сложность программного обеспечения. Это проявляется во многом, начиная от того, как вы администрируете эти машины, и заканчивая тем, как вы узнаете, что они сломались, как вы их ремонтируете и как вы расширяете их возможности. Все эти моменты в конечном итоге влияют на то, воспринимают ли люди такую систему как защищенную.

Избыточность аппаратных средств

У нас пока нет действительно хороших экономичных и широко используемых механизмов создания сверхнадежных аппаратных средств. Тем не менее, при сохранении существующих темпов развития, возможно, когда-нибудь самым обычным явлением станет кристалл, на котором будет находиться свыше 200 млн транзисторов. В какой-то момент окажется целесообразным организовать их в четыре параллельные системы, которые будут избыточны, а значит, более устойчивы к сбоям. Возможно, себестоимость подобной избыточности в отдельном компоненте окажется приемлемой. Подобным же образом производитель компьютеров или конечный пользователь могут решить, что необходимо установить два жестких диска меньшего объема для дублирования данных, значительно повысив тем самым стойкость системы на случай выхода диска из строя.
Возможно, скоро у нас появятся новые архитектурные подходы к живучести компьютерных систем, но в ее основе всегда лежит избыточность. А значит, за эту избыточность придется платить. Поэтому людям фактически придется снова решать: сэкономить ли деньги, но потенциально столкнуться с большим числом отказов? Либо потратить больше денег, повысить сложность системы и ее администрирование, чтобы решить соответствующие вопросы безопасности, конфиденциальности и технологической достаточности, тем самым устранив проблемы?

Межмашинные процессы

Отличительная черта использования веб-сервисов — вычисления на периферии сети. Приложения peer-to-peer 8станут правилом, и данные будут обрабатываться и храниться распределенным образом. Администрирование подобной системы потребует сложных межмашинных процессов. Данные будут содержать собственное описание. Машины будут слабосвязанными, самонастраивающимися и самоорганизующимися. Они будут сами себя администрировать, чтобы соответствовать централизованно заданным политикам.
Веб-приложения предстоит проектировать с учетом работы в асинхронном мире. Персональный компьютер знает, где находятся его периферийные устройства, поскольку необходимые связи уже заданы (пользователем или программным обеспечением) в какой-то момент в прошлом. Если что-то нарушает эту синхронность, программы иногда просто зависают. Улучшенная поддержка устройств plug-and-play9 в Windows XP, а также архитектуры «горячего подключения» типа USB10 и IEEE 139411 прокладывают путь к подлинно «асинхронному» ПК, но такого рода зависимости временами еще встречаются.
В интернете, однако, устройства появляются и исчезают, и время отклика меняется в широких пределах. Устойчивым веб-системам требуется динамическое обнаружение и автоматическая настройка. Если вы принимаете идею о том, что все является асинхронным и слабосвязанным, вы получаете еще больше возможностей для отказов. Для каждого потенциального взаимодействия вы должны держать в уме возможность, что на самом деле его не произойдет, поскольку интернет — это всего лишь система с «максимальными усилиями»: если вы щелкаете ссылку и ничего не получаете, то вы щелкаете снова. Поэтому все компьютерные системы необходимо перепроектировать с учетом восстановления при сбоях в ходе взаимодействий.