Відмінності між версіями «ЕВОЛЮЦІЯ ОБЧИСЛЮВАЛЬНИХ СИСТЕМ»

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
 
Рядок 78: Рядок 78:
  
  
Багатомашинна система - це обчислювальний комплекс, що включає в себе кілька комп'ютерів (кожний з яких працює під керуванням власної операційної системи), а також програмні й апаратні засоби зв'язку комп'ютерів, які забезпечують роботу всіх комп'ютерів комплексу як єдиного цілого.
+
Багатомашинна система - обчислювальний комплекс, що включає в себе кілька комп'ютерів (кожний з яких працює під керуванням власної операційної системи), а також програмні й апаратні засоби зв'язку комп'ютерів, які забезпечують роботу всіх комп'ютерів комплексу як єдиного цілого.
 
Робота будь-якої багатомашинної системи визначається двома головними компонентами: високошвидкісним механізмом зв'язку процесорів і системним програмним забезпеченням, що надає користувачам і додаткам прозорий доступ до ресурсів всіх комп'ютерів, що входять у комплекс. До складу засобів зв'язку входять програмні модулі, які займаються розподілом обчислювального навантаження, синхронізацією обчислень і реконфігурації системи. Якщо відбувається відмова одного з комп'ютерів комплексу, його задачі можуть бути автоматично перепризначені й виконані на іншому комп'ютері. Якщо до складу багатомашинної системи входять кілька контролерів зовнішніх пристроїв, то у випадку відмови одного з них, інші контролери автоматично підхоплюють його роботу. Таким чином, досягається висока відказостійкому комплексу в цілому.
 
Робота будь-якої багатомашинної системи визначається двома головними компонентами: високошвидкісним механізмом зв'язку процесорів і системним програмним забезпеченням, що надає користувачам і додаткам прозорий доступ до ресурсів всіх комп'ютерів, що входять у комплекс. До складу засобів зв'язку входять програмні модулі, які займаються розподілом обчислювального навантаження, синхронізацією обчислень і реконфігурації системи. Якщо відбувається відмова одного з комп'ютерів комплексу, його задачі можуть бути автоматично перепризначені й виконані на іншому комп'ютері. Якщо до складу багатомашинної системи входять кілька контролерів зовнішніх пристроїв, то у випадку відмови одного з них, інші контролери автоматично підхоплюють його роботу. Таким чином, досягається висока відказостійкому комплексу в цілому.
 
Крім підвищення відказостійкі, багатомашинної системи дозволяють досягти високої продуктивності за рахунок організації паралельних обчислень. У порівнянні з мультипроцесорними системами можливості паралельної обробки в багатомашинних системах обмежені: ефективність розпилення різко знижується, якщо паралельно виконувані задачі тісно зв'язані між собою за даними. Це пояснюється тим, що зв'язок між комп'ютерами багатомашинної системи менш тісна, чим між процесорами в мультипроцесорній системі, тому що основний обмін даними здійснюється через загальні багатовхідні периферійні пристрої. Говорять, що на відміну від мультипроцесорів, де використаються сильні програмні й апаратні зв'язки, у багатомашинних системах апаратні й програмні зв'язки між обробними пристроями є більше слабкими. Територіальна розподіленість у багатомашинної комплексах не забезпечується, тому що відстані між комп'ютерами визначаються довжиною зв'язку між процесорним блоком і дисковою підсистемою.
 
Крім підвищення відказостійкі, багатомашинної системи дозволяють досягти високої продуктивності за рахунок організації паралельних обчислень. У порівнянні з мультипроцесорними системами можливості паралельної обробки в багатомашинних системах обмежені: ефективність розпилення різко знижується, якщо паралельно виконувані задачі тісно зв'язані між собою за даними. Це пояснюється тим, що зв'язок між комп'ютерами багатомашинної системи менш тісна, чим між процесорами в мультипроцесорній системі, тому що основний обмін даними здійснюється через загальні багатовхідні периферійні пристрої. Говорять, що на відміну від мультипроцесорів, де використаються сильні програмні й апаратні зв'язки, у багатомашинних системах апаратні й програмні зв'язки між обробними пристроями є більше слабкими. Територіальна розподіленість у багатомашинної комплексах не забезпечується, тому що відстані між комп'ютерами визначаються довжиною зв'язку між процесорним блоком і дисковою підсистемою.

Поточна версія на 09:27, 18 січня 2013

Вступ

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

Системи пакетної обробки

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

Mal 1.JPG
Мал.1 Централізована система на базі мейнфейма

Таким чином, одна неправильно набита карта означала як мінімум добову затримку.Звичайно, інтерактивний режим роботи, при якому можна оперативно керувати процесом обробки своїх даних, був би набагато зручнішим для користувачів, але інтересами користувачів на перших етапах розвитку обчислювальних систем у значній мірі зневажали, оскільки пакетний режим – це найефективніший режим використання обчислювальної техніки, тому що він дозволяє виконувати в одиницю часу більше користувацьких задач, чим будь-які інші режими.


Багатотермінальні системи

У міру здешевлення процесорів на початку 60-х років з'явилися нові способи організації обчислювального процесу, які дозволили врахувати інтереси користувачів. Почали розвиватися інтерактивні багатотермінальні системи поділу часу (мал. 1.2). У таких системах комп'ютер віддавався в розпорядження відразу декільком користувачам. Кожний користувач одержував у своє розпорядження термінал, за допомогою якого він міг вести діалог з комп'ютером. Причому час реакції обчислювальної системи було досить мало для того, щоб користувачеві була не занадто помітна паралельна робота з комп'ютером і іншими користувачами. Розділяючи в такий спосіб комп'ютер, користувачі одержали можливість за порівняно невелику плату користуватися перевагами комп'ютеризації. Термінали, вийшовши за межі обчислювального центра, розосередилися по всьому підприємству. І хоча обчислювальна потужність залишалася повністю централізованої, деякі функції - такі як уведення й висновок даних - стали розподіленими. Такі багатотермінальні централізовані системи зовні вже були дуже схожі на локальні обчислювальні мережі. Дійсно, рядовий користувач роботу за терміналом мейнфрейма сприймав приблизно так само, як зараз він сприймає роботу за підключеним до мережі персональним комп'ютером. Користувач міг одержати доступ до загальних файлів і периферійних пристроїв, при цьому в нього підтримувалася повна ілюзія одноособового володіння комп'ютером, тому що він міг запустити потрібну йому програму в будь-який момент і майже відразу ж одержати результат. (Деякі, далекі від обчислювальної техніки користувачі навіть були впевнені, що всі обчислення виконуються усередині їхнього дисплея.) Таким чином, багатотермінальні системи, що працюють у режимі поділи часу, стали першим кроком на шляху створення локальних обчислювальних мереж. Але до появи локальних мереж потрібно було пройти ще великий шлях, тому що багатотермінальні системи, хоча й мали зовнішні риси розподілених систем, усе ще зберігали централізований характер обробки даних. З іншого боку, і потреба підприємств у створенні локальних мереж у цей час ще не дозріла - в одному будинку просто нема чого було поєднувати в мережу, тому що через високу вартість обчислювальної техніки підприємства не могли собі дозволити розкіш придбання декількох комп'ютерів. У цей період був справедливий так званий «закон Гроша», що емпірично відбивав рівень технології того часу. Відповідно до цього закону продуктивність комп'ютера була пропорційна квадрату його вартості, звідси випливало, що за ту саму суму було вигідніше купити одну потужну машину, чим дві менш потужних - їхні сумарні потужності виявлялася набагато нижче потужності дорогої машини.


Глобальні мережі

Проте потреба в з'єднанні комп'ютерів, що перебувають на великій відстані друг від друга, до цього часу цілком назріла. Почалося все з рішення більше простої задачі - доступу до комп'ютера з терміналів, вилучених від нього на багато сотень, а те й тисячі кілометрів. Термінали з'єднувалися з комп'ютерами через телефонні мережі за допомогою модемів. Такі мережі дозволяли численним користувачам одержувати вилучений доступ до поділюваних ресурсів декількох потужних комп'ютерів класу супереом. Потім з'явилися системи, у яких поряд з вилученими з'єднаннями типу термінал-комп'ютер були реалізовані й вилученого зв'язку типу комп'ютер-комп'ютер. Комп'ютери одержали можливість обмінюватися даними в автоматичному режимі, що, властиво, і є базовим механізмом будь-якої обчислювальної мережі. Використовуючи цей механізм, у перших мережах були реалізовані служби обміну файлами, синхронізації баз даних, електронної пошти й інші, що стали тепер традиційними мережні служби. Таким чином, хронологічно першими з'явилися глобальні обчислювальні мережі. Саме при побудові глобальних мереж були вперше запропоновані й відпрацьовані багато основних ідей і концепції сучасних обчислювальних мереж. Такі, наприклад, як багаторівнева побудова комунікаційних протоколів, технологія комутації пакетів, маршрутизація пакетів у складених мережах.


Поява локальних мереж

Перші локальні мережі На початку 70-х років відбувся технологічний прорив в області виробництва комп'ютерних компонентів - з'явилися більші інтегральні схеми. Їх порівняно невисока вартість і високі функціональні можливості привели до створення міні-комп'ютерів, які стали реальними конкурентами мейнфреймів. Закон Гроша перестав відповідати дійсності, тому що десяток міні-комп'ютерів виконував деякі задачі (як правило, добре распараллеливаемые) швидше одного мейнфрейма, а вартість такої міні-комп'ютерної системи була менше. Навіть невеликі підрозділи підприємств одержали можливість купувати для себе комп'ютери. Міні-комп'ютери виконували задачі керування технологічним устаткуванням, складом і інші задачі рівня підрозділу підприємства. Таким чином, з'явилася концепція розподілу комп'ютерних ресурсів по всьому підприємству. Однак при цьому всі комп'ютери однієї організації як і раніше продовжували працювати автономно (мал. 1.3). Але йшло час, потреби користувачів обчислювальної техніки росли, їм стало недостатньо власних комп'ютерів, їм уже хотілося одержати можливість обміну даними з іншими близько розташованими комп'ютерами. У відповідь на цю потребу підприємства й організації стали з'єднувати свої міні-комп'ютери разом і розробляти програмне забезпечення, необхідне для їхньої взаємодії. У результаті з'явилися перші локальні обчислювальні мережі (мал. 1.4). Вони ще багато в чому відрізнялися від сучасних локальних мереж, у першу чергу - своїми пристроями сполучення. Спочатку для з'єднання комп'ютерів один з одним використалися найрізноманітніші нестандартні пристрої зі своїм способом подання даних на лініях зв'язку, своїми типами кабелів і т.п. Ці пристрої могли з'єднувати тільки ті типи комп'ютерів, для яких були розроблені, - наприклад, міні-комп'ютери PDP-11 з мейнфреймом IBM 360 або комп'ютери «Наири» з комп'ютерами «Дніпро». Така ситуація створила великий простір для творчості студентів - назви багатьох курсових і дипломних проектів починалися тоді зі слів «Пристрій сполучення...».

7654.jpg
(мал 2)Автономне використання декількох міні-комп'ютерів на одному підприємстві

Але йшов час, потреби користувачів обчислювальної техніки зростали, їм стало недостатньо власних комп'ютерів, їм вже хотілося отримати можливість отримувати з близько розташованими комп'ютерами. У відповідь на цю потребу підприємства і організації стали з'єднувати свої міні-комп'ютери разом і розробляти програмне забезпечення, необхідне для їх взаємодії. У результаті з'явилися перші локальні обчислювальні мережі Вони ще багато в чому відрізнялися від сучасних локальних мереж, насамперед своїми пристроями сполучення. На перших порах для з'єднання комп'ютерів один з одним використовувалися самі різноманітні нестандартні пристрої зі своїм способом представлення даних на лініях зв'язку, своїми типами кабелів і т. п. Ці пристрої могли з'єднувати тільки ті типи комп'ютерів, для яких були розроблені, наприклад, міні-комп'ютери PDP-11 з мейнфеймом IBM 360 або комп'ютери «Напрі» з комп'ютерами «Дніпро». Така ситуація створила великий простір длятворчості студентів назви багатьох курсових і дипломних проектів починалися тоді зі слів «Пристрій сполучення...».

76543.jpg
(мал. 3)Різні типи зв'язків в перших локальних мережах

Створення стандартних технологій локальних мереж

У середині 80-х років положення справ у локальних мережах стало кардинально мінятися. Затвердилися стандартні технології об'єднання комп'ютерів у мережу - Ethernet, Arcnet, Token Ring. Потужним стимулом для їхнього розвитку послужили персональні комп'ютери. Ці масові продукти з'явилися ідеальними елементами для побудови мереж - з одного боку, вони були досить потужними для роботи мережного програмного забезпечення, а з іншого боку - явно мали потребу в об'єднанні своєї обчислювальної потужності для рішення складних задач, а також поділу дорогих периферійних пристроїв і дискових масивів. Тому персональні комп'ютери стали переважати в локальних мережах, причому не тільки як клієнтські комп'ютери, але і як центри зберігання й обробки даних, тобто мережних серверів, потіснивши із цих звичних ролей міні-комп'ютери й мейнфреймы. Стандартні мережні технології перетворили процес побудови локальної мережі з мистецтва в рутинну роботу. Для створення мережі досить було придбати мережні адаптери відповідного стандарту, наприклад Ethernet, стандартний кабель, приєднати адаптери до кабелю стандартними розніманнями й установити на комп'ютер одну з популярних мережних операційних систем, наприклад, NetWare. Після цього мережа починала працювати й приєднання кожного нового комп'ютера не викликало ніяких проблем - природно, якщо на ньому був установлений мережний адаптер тієї ж технології. Локальні мережі в порівнянні із глобальними мережами внесли багато нового в способи організації роботи користувачів. Доступ до поділюваних ресурсів став набагато зручніше - користувач міг просто переглядати списки наявних ресурсів, а не запам'ятовувати їхні ідентифікатори або імена. Після з'єднання з вилученим ресурсом можна було працювати з ним за допомогою вже знайомих користувачеві по роботі з локальними ресурсами команд. Наслідком і одночасно рушійною силою такого прогресу стала поява величезного числа непрофесійних користувачів, яким зовсім не потрібно було вивчати спеціальні (і досить складні) команди для мережної роботи. А можливість реалізувати всі ці зручності розроблювачі локальних мереж одержали в результаті появи якісних кабельних ліній зв'язку, на яких навіть мережні адаптери першого покоління забезпечували швидкість передачі даних до 10 Мбит/с. Звичайно, про такі швидкості розроблювачі глобальних мереж не могли навіть мріяти - їм доводилося користуватися тими каналами зв'язку, які були в наявності, тому що прокладка нових кабельних систем для обчислювальних мереж довжиною в тисячі кілометрів зажадала б колосальних капітальних вкладень. А «під рукою» були тільки телефонні канали зв'язку, погано пристосовані для високошвидкісної передачі дискретних даних - швидкість в 1200 біт/з була для них гарним досягненням. Тому ощадлива витрата пропускної здатності каналів зв'язку часто було основним критерієм ефективності методів передачі даних у глобальних мережах. У цих умовах різні процедури прозорого доступу до вилучених ресурсів, стандартні для локальних мереж, для глобальних мереж довго залишалися недозволенною розкішшю.


Сучасні тенденції


Сьогодні обчислювальні мережі продовжують розвиватися, причому достатньо швидко. Розрив між локальними і глобальними мережами постійно скорочується: причиною цьому – поява високошвидкісних територіальних каналів зв'язку, що не поступаються за рівнем якості кабельним системам локальних мереж. У глобальних мережах з'являються служби доступу до ресурсів, такі ж зручні і прозорі, як і служби локальних мереж. Найяскравішим прикладом є глобальна мережа Internet.

Змінюються і локальні мережі. У великій кількості з'явилося різноманітне комунікаційне обладнання – комутатори, маршрутизатори, шлюзи. Використання такого обладнання давало можливість побудови великих корпоративних мереж, що нараховують тисячі комп'ютерів і мають складну структуру. Відродився інтерес до великих комп'ютерів – в основному через те, що після спаду ейфорії з приводу легкості роботи з персональними комп'ютерами з'ясувалося, що системи, які складаються із сотень серверів, обслуговувати складніше, ніж декілька великих комп'ютерів. Тому на новому витку еволюційної спіралі мейнфрейми стали повертатися в корпоративні обчислювальні системи, але вже як повноправні мережеві вузли, що підтримують Ethernet або Token Ring, а також стек протоколів TCP/IP, що став, завдяки Internet, мережевим стандартом де-факто.

З’явилася ще одна дуже важлива тенденція, що стосується однаковою мірою як локальних, так і глобальних мереж. У цих мережах стала опрацьовуватися невластива раніше обчислювальним мережам інформація – голос, відео, малюнки. Складність передачі мультимедійної інформації мережею пов'язана з її чутливістю до затримок при передачі даних. Оскільки традиційні служби обчислювальних мереж – такі як передача файлів або електронної пошти – створюють малочутливий до затримок потік даних (трафік) і всі елементи мереж розроблялися в розрахунку на нього, то поява трафіка реального часу призвела до великих проблем.

Сьогодні ці проблеми вирішуються різноманітними засобами, у тому числі і за допомогою спеціально розрахованої на передачу різноманітних типів трафіка технології АТМ.

Обчислювальні мережі - окремий випадок розподілених систем

Комп'ютерні мережі ставляться до розподіленого (або децентралізованим) обчислювальним системам. Оскільки основною ознакою розподіленої обчислювальної системи є наявність декількох центрів обробки даних, те поряд з комп'ютерними мережами до розподілених систем відносять також мультипроцесорні комп'ютери й багатомашинні обчислювальні комплекси.


Мультипроцесорні комп'ютери


У мультипроцесорних комп'ютерах є кілька процесорів, кожний з яких може відносно незалежно від інших виконувати свою програму. У мультипроцесорі існує загальна для всіх процесорів операційна система, що оперативно розподіляє обчислювальне навантаження між процесорами. Взаємодія між окремими процесорами організується найбільш простим способом - через загальну оперативну пам'ять. Сам по собі процесорний блок не є закінченим комп'ютером і тому не може виконувати програми без інших блоків мультипроцесорного комп'ютера - пам'яті й периферійних пристроїв. Всі периферійні пристрої є для всіх процесорів мультипроцесорної системи загальними. Територіальну распределенность мультипроцессор не підтримує - всі його блоки розташовуються в одному або декількох близько розташованих конструктивах, як і у звичайного комп'ютера. Основне достоїнство мультипроцессора - його висока продуктивність, що досягається за рахунок паралельної роботи декількох процесорів. Тому що при наявності загальної пам'яті взаємодія процесорів відбувається дуже швидко, мультипроцессори можуть ефективно виконувати навіть додатка з високим ступенем зв'язку за даними. Ще однією важливою властивістю мультипроцесорних систем є відказостійкі, тобто здатність до продовження роботи при відмовах деяких елементів, наприклад процесорів або блоків пам'яті. При цьому продуктивність, природно, знижується, але не до нуля, як у звичайних системах, у яких відсутня надмірність.


Багатомашинні системи


Багатомашинна система - обчислювальний комплекс, що включає в себе кілька комп'ютерів (кожний з яких працює під керуванням власної операційної системи), а також програмні й апаратні засоби зв'язку комп'ютерів, які забезпечують роботу всіх комп'ютерів комплексу як єдиного цілого. Робота будь-якої багатомашинної системи визначається двома головними компонентами: високошвидкісним механізмом зв'язку процесорів і системним програмним забезпеченням, що надає користувачам і додаткам прозорий доступ до ресурсів всіх комп'ютерів, що входять у комплекс. До складу засобів зв'язку входять програмні модулі, які займаються розподілом обчислювального навантаження, синхронізацією обчислень і реконфігурації системи. Якщо відбувається відмова одного з комп'ютерів комплексу, його задачі можуть бути автоматично перепризначені й виконані на іншому комп'ютері. Якщо до складу багатомашинної системи входять кілька контролерів зовнішніх пристроїв, то у випадку відмови одного з них, інші контролери автоматично підхоплюють його роботу. Таким чином, досягається висока відказостійкому комплексу в цілому. Крім підвищення відказостійкі, багатомашинної системи дозволяють досягти високої продуктивності за рахунок організації паралельних обчислень. У порівнянні з мультипроцесорними системами можливості паралельної обробки в багатомашинних системах обмежені: ефективність розпилення різко знижується, якщо паралельно виконувані задачі тісно зв'язані між собою за даними. Це пояснюється тим, що зв'язок між комп'ютерами багатомашинної системи менш тісна, чим між процесорами в мультипроцесорній системі, тому що основний обмін даними здійснюється через загальні багатовхідні периферійні пристрої. Говорять, що на відміну від мультипроцесорів, де використаються сильні програмні й апаратні зв'язки, у багатомашинних системах апаратні й програмні зв'язки між обробними пристроями є більше слабкими. Територіальна розподіленість у багатомашинної комплексах не забезпечується, тому що відстані між комп'ютерами визначаються довжиною зв'язку між процесорним блоком і дисковою підсистемою.

Основні програмні й апаратні компоненти мережі

Навіть у результаті досить поверхневого розгляду роботи в мережі стає ясно, що обчислювальна мережа - це складний комплекс взаємозалежних і узгоджено функціонуючих програмних і апаратних компонентів. Вивчення мережі в цілому припускає знання принципів роботи її окремих елементів: · комп'ютерів; · комунікаційного встаткування; · операційних систем; · мережних додатків. Весь комплекс програмно-апаратних засобів мережі може бути описаний багатошаровою моделлю. В основі будь-якої мережі лежить апаратний шар стандартизованих комп'ютерних платформ. У цей час у мережах широко й успішно застосовуються комп'ютери різних класів - від персональних комп'ютерів до мейнфреймів і супереом. Набір комп'ютерів у мережі повинен відповідати набору різноманітних задач, розв'язуваних мережею. Другий шар - це комунікаційне встаткування. Хоча комп'ютери і є центральними елементами обробки даних у мережах, останнім часом не менш важливу роль стали грати комунікаційні пристрої. Кабельні системи, повторювачі, мости, комутатори, маршрутизатори й модульні концентратори з допоміжних компонентів мережі перетворилися в основні поряд з комп'ютерами й системним програмним забезпеченням як по впливі на характеристики мережі, так і за вартістю. Сьогодні комунікаційний пристрій може являти собою складний спеціалізований мультипроцесор, якому потрібно конфігурувати, оптимізувати і адмініструвати. Вивчення принципів роботи комунікаційного встаткування вимагає знайомства з більшою кількістю протоколів, використовуваних як у локальних, так і глобальних мережах. Третім шаром, що утворить програмну платформу мережі, є операційні системи (ОС). Від того, які концепції керування локальними й розподіленими ресурсами покладені в основу мережний ОС, залежить ефективність роботи всієї мережі. При проектуванні мережі важливо враховувати, наскільки просто дана операційна система може взаємодіяти з іншими ОС мережі, наскільки вона забезпечує безпеку й захищеність даних, до якого ступеня вона дозволяє нарощувати число користувачів, чи можна перенести її на комп'ютер іншого типу й багато інших міркувань. Самим верхнім шаром мережних засобів є різні мережні додатки, такі як мережні бази даних, поштові системи, засоби архівування даних, системи автоматизації колективної роботи й ін. Дуже важливо представляти діапазон можливостей, надаваних додатками для різних областей застосування, а також знати, наскільки вони сумісні з іншими мережними додатками й операційними системами.