Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

1 семестр_Лекции / 7. Вычислительные комплексы и сети

.doc
Скачиваний:
201
Добавлен:
14.01.2021
Размер:
177.15 Кб
Скачать

Лекция (2 часа). Вычислительные комплексы и сети

1. Проблема повышения производительности вычислительной техники

История развития автоматизации различных процессов связана, во-первых, с расширением областей применения ЭВМ и, во-вторых, с повышением их качества.

Из всех показателей качества в большинстве случаев основными являются показатели производительности и надежности. Это в равной мере можно отнести и к машинам общего назначения, и к специализированным ЭВМ. Среди названных показателей доминирующими могут стать либо те, либо другие в зависимости от ориентации ЭВМ, сложности и важности решаемых задач. Так, для ЭВМ, предназначенных для проведения научных исследований, критерием качества, как правило, является производительность, для ЭВМ, функционирующих в экстремальных условиях – надежность. Однако рассматриваемые показатели не являются независимыми. Нетрудно показать, что при прочих равных условиях более быстродействующая ЭВМ обеспечивает и большую надежность.

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

Приведенный перечень механизмов повышения надежности за счет роста производительности может быть продолжен. Но и отмеченного достаточно для иллюстрации тесной взаимосвязи этих показателей и необходимости повышения производительности.

Аналогичным образом можно показать влияние производительности и на другие показатели качества, в частности – объем оперативной памяти. В известном смысле рост производительности можно уподобить увеличению емкости памяти и этим компенсировать ее недостаток.

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

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

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

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

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

Таким образом, совершенствование ЭВМ в процессе их эволюции, по существу, можно рассматривать как непрерывный поиск путей повышения их производительности.

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

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

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

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

В ряде случаев более выгодным и перспективным является улучшение характеристик ЭВМ за счет их комплексирования и архитектурной модификации.

2. Классификация вычислительных комплексов

Классификация Флинна различает ЭВМ по типу потоков команд и данных и характеризует любую ЭВМ только с точки зрения реализованного в ней параллелизма. В этой системе введено по два типа потоков команд и данных – одиночный и множественный (ОК и МК для потоков команд, ОД и МД для потоков данных), позволяющих сформировать всего четыре класса ЭВМ.

Из них простейшим является класс ОКОД, соответствующий обычным ЭВМ. Удобство рассматриваемой классификации состоит в том, что никакой вид параллелизма, реализованный в такой машине, не способен перевести ее в разряд параллельных. Система оказывается чувствительной только к таким видам параллелизма, которые предусматривают одновременное функционирование различных операционных устройств. Последнее является характерным признаком всякой суперЭВМ.

Остальные три класса – МКОД, ОКМД и МКМД – идентифицируют так называемые параллельные ЭВМ, к числу которых относятся так называемые суперЭВМ и вычислительные комплексы. Причем первые два класса из трех названных реализуют частичный или неполный параллелизм – либо на уровне команд, либо на уровне данных соответственно. Поэтому эффект от его организации достигается лишь на специальных задачах, что и послужило поводом считать ЭВМ классов МКОД и ОКМД специализированными.

Альтернативой рассмотренным являются ЭВМ класса МКМД, реализующие полный параллелизм и поэтому одинаково пригодные для любых задач и их комплексов и называемые супермашинами общего назначения или универсальными.

3. История развития компьютерных сетей

а) История сетевых коммуникаций

К середине XX века электронные средства коммуникации, развивавшиеся уже более столетия, были широко распространены как в Европе, так и в США. Эти пер­вые коммуникационные сети были весьма разнообразны, однако все они передавали только закодированные сигналы. Позже они стали способны передавать голос.

Телеграфные кабели. В начале XIX века во Франции была создана первая оптическая телеграфная сеть, пе­редававшая информацию с потрясающей для того времени скоростью – 20 символов в се­кунду. Тогда же Сэмюель Морзе продемонстрировал электрический теле­граф, значительно подтолкнувший развитие коммуникационных сетей в США.

Телефонная сеть: технология коммутации каналов. В конце XIX века началось создание огромной телефонной сети. В 1880 году в Соединенных Штатах бы­ло 50 тыс. телефонных линий, а к 1960 году телефонные линии покрыли все города и коммуникационная телефонная сеть стала глобальной.

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

В течение сеанса связи по цепи проходят все сигналы. Если связь раз­рывается и устанавливается снова, то она может установиться по совсем другой цепи.

При передаче компьютерных данных эта технология работает менее удовлетво­рительно, так как компьютеры передают информацию «взрывообразно»: интерва­лы максимальной интенсивности чередуются с интервалами низкой или нулевой интенсивности.

Технология коммутации пакетов. В 1960-х годах правительство США было заинтересовано в развитии компьютер­ных сетей, способных обеспечить связь военных организаций и основных учебных центров друг с другом. Поскольку это было в разгар холодной войны, сеть должна бы­ла обладать достаточной избыточностью и устойчивостью, чтобы надежно функцио­нировать в условиях реальной ядерной войны.

Исследователи Массачусетского технологического института (Massachusetts In­stitute of Technology – MIТ), Института RAND (RAND Institute) и Национальной физической лаборатории (National Physical Laboratory – NPL, Англия) разработа­ли технологию, названную коммутацией пакетов, работавшую с взрывообразными порциями информации лучше, чем традиционная технология коммутации кана­лов. Таким образом, они заложили фундамент технологии коммуникации, ис­пользуемой сегодня в Internet.

В сети с коммутацией пакетов соединение не устанавли­вается на все время сеанса связи. Напротив, отдельные пакеты данных могут переда­ваться различными путями. По одной и той же линии могут проходить сигналы раз­личных соединений, в то время как в технологии коммутации каналов линия полно­стью занимается соединением на протяжении всего сеанса связи.

Сравнение коммутации каналов и пакетов. Термины «коммутация каналов» и «коммутация пакетов» звучат похоже, однако они означают совершенно разные вещи.

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

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

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

Технологии коммутации пакетов и каналов можно сравнить с путешествием боль­шой группы туристов из одного пункта в другой. Коммутация каналов напоминает перевозку всей группы в одном автобусе, поезде или самолете. Маршрут заранее спланирован, и вся группа едет одним и тем же путем.

В то же время коммутация пакетов похожа на поездку каждого туриста собствен­ным маршрутом. Группа разбивается на отдельные подгруппы, подобно тому, как дан­ные разбиваются на пакеты. Некоторые туристы могут поехать на своем автомобиле, другие – на поезде, третьи – в автобусе и т.д. Одни из них поедут прямо в пункт на­значения, а другие могут избрать окольные маршруты. Однако со временем все они прибудут в один и тот же пункт, в котором группа опять соберется вместе, аналогично сборке пакетов в конечном пункте коммуникации.

б) история компьютерных сетевых технологий

Концепция вычислительных сетей является логическим результатом эволюции компьютерных технологий. Первые компьютеры 50-х годов – большие громоздкие и дорогие – предназначались для очень небольшого числа избранных пользователей. Часто эти монстры занимали целые здания. Такие компьютеры не были предназначены для интерактивной работы пользователя, а использовались в режиме пакетной обработки.

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

Рис. 1. Централизованная система на базе мэйнфрейма

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

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

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

Рис. 2. Многотерминальная система

Таким образом, многотерминальные системы, работающие в режиме разделения времени, стали первым шагом на пути создания локальных вычислительных сетей. Но до появления локальных сетей нужно было пройти еще большой путь, так как многотерминальные системы, хотя и имели внешние черты распределенных систем, все еще сохраняли централизованный характер обработки данных. С другой стороны, и потребность предприятий в создании локальных сетей в это время еще не созрела – в одном здании просто нечего было объединять в сеть, так как из-за высокой стоимости вычислительной техники предприятия не могли себе позволить роскошь приобретения нескольких компьютеров. В этот период был справедлив так называемый «закон Гроша», который эмпирически отражал уровень технологии того времени. В соответствии с этим законом производительность компьютера была пропорциональна квадрату его стоимости, отсюда следовало, что за одну и ту же сумму было выгоднее купить одну мощную машину, чем две менее мощных – их суммарная мощность оказывалась намного ниже мощности дорогой машины.

Недостатки изолированных систем. В рассмотренных системах ком­пьютеры использовались как изолированные. Если, например, нужно распечатать документы, созданные на разных компьютерах, то сделать это можно бы­ло одним из описанных ниже способов.

  1. Подключить принтер к каждому компьютеру. Это довольно дорогостоящее ре­шение, потому что потребуется приобрести много принтеров, которые вряд ли будут работать одновременно.

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

  3. Переносить принтер от одного компьютера к другому в зависимости от того, где он сейчас нужен. Весьма обременительное решение. Тем не менее, такой способ применялся довольно широко.

Высокая стоимость, неудобства и дополнительные затраты труда – главные недос­татки изолированных систем.

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

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

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

Даже небольшие подразделения предприятий получили возможность покупать для себя компьютеры. Мини-компьютеры выполняли задачи управления технологическим оборудованием, складом и другие задачи уровня подразделения предприятия. Таким образом, появилась концепция распределения компьютерных ресурсов по всему предприятию. Однако при этом все компьютеры одной организации по-прежнему продолжали работать автономно (рис. 3).

Но шло время, потребности пользователей вычислительной техники росли, им стало недостаточно собственных компьютеров, им уже хотелось получить возможность обмена данными с другими близко расположенными компьютерами. В ответ на эту потребность предприятия и организации стали соединять свои мини-компьютеры вместе и разрабатывать программное обеспечение, необходимое для их взаимодействия. В результате появились первые локальные вычислительные сети (рис. 4). Они еще во многом отличались от современных локальных сетей, в первую очередь – своими устройствами сопряжения. На первых порах для соединения компьютеров друг с другом использовались самые разнообразные нестандартные устройства со своим способом представления данных на линиях связи, своими типами кабелей и т.п. Эти устройства могли соединять только те типы компьютеров, для которых они были разработаны, – например, мини-компьютеры PDP-11 с мэйнфреймом IBM/360 или компьютеры «Наири» с компьютерами «Днепр».

Рис. 3. Автономное использование нескольких мини-ЭВМ на одном предприятии

Рис. 4. Различные типы связей в первых локальных сетях

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

Преимущества компьютерных сетей

1) Совместное использование устройств ввода-вывода

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

2) Совместное использование устройств хранения информации

Компьютеры, объединенные в сеть, могут совместно использовать жесткие диски, дисководы гибких дисков и накопители CD-ROM. Если на одном из компьютеров окажется недостаточно дискового пространства, то можно будет сохранять файлы на жестком диске другого компьютера, подключенного к сети. Кроме того, если на ком­пьютере не установлен CD-ROM, то можно использовать СD-ROM другого компьютера. Использовать совместно можно магнитооптические, ленточные, а также любые другие устройства хранения ин­формации, которые подключаются к персональному компьютеру

3) Совместное использование модемов и подключений к Internet

Еще одним важным свойством сети является способность персональных компью­теров, объединенных в сеть, совместно использовать модемы, кабельные модемы, ли­нии ISDN (lntegrated Services Digital Network) и адаптеры DSL (Digital Subscriber Line). Имея соответствующее программное обеспечение, можно посредством одной телефонной линии или учетной записи провайдера Internet подключить к Internet всю локальную сеть.

4) Совместное использование данных и приложений

Использовать в сети совместно можно не только ресурсы оборудования. Файлы данных и программы тоже можно сделать доступными для многих пользователей. В результате будет более эффективно использоваться дисковое пространство и значи­тельно упростится совместная работа нескольких пользователей над одним проектом.

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

11