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

Реферат на тему:

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

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

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

У мультипроцесорних комп’ютерах є декілька процесорів, кожний з яких
може відносно незалежно від інших виконувати свою програму. У
мультипроцесорі існує загальна для всіх процесорів операційна система,
яка оперативно розподіляє обчислювальне навантаження між процесорами.
Взаємодія між окремими процесорами організується найбільш простим
способом через загальну оперативну пам’ять.

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

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

Ще однією важливою властивістю мультипроцесорних систем є
відмовостійкість, тобто здібність до продовження роботи при відмовах
деяких елементів, наприклад процесорів або блоків пам’яті. При цьому
продуктивність, природно, знижується, але не до нуля, як в звичайних
системах, в яких відсутня надмірність.

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

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

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

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

Обчислювальні мережі

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

Яким же чином позначається на користувачі той факт, що його комп’ютер
підключений до мережі? Передусім, він може користуватися не тільки
файлами, дисками, принтерами і іншими ресурсами свого комп’ютера, але і
аналогічними ресурсами інших комп’ютерів, підключених до тієї ж мережі.
Правда, для цього недостатньо забезпечити комп’ютери мережевими
адаптерами і з’єднати їх кабельною системою. Необхідні ще деякі додатки
до операційних систем цих комп’ютерів. На тих комп’ютерах, ресурси яких
повинні бути доступні всім користувачам мережі, необхідно додати модулі,
які постійно будуть знаходитися в, режимі очікування запитів, що
поступають по мережі від інших комп’ютерів. Звичайно такі модулі
називаються програмними серверами (server), оскільки їх головна задача
обслуговувати (serve) запити на доступ до ресурсів свого комп’ютера. На
комп’ютерах, користувачі яких хочуть отримувати доступ до ресурсів інших
комп’ютерів, також треба додати до операційної системи деякі спеціальні
програмні модулі, які повинні виробляти запити на доступ до віддалених
ресурсів і передавати їх по мережі на потрібний комп’ютер. Такі модулі
звичайно називають програмними клієнтами(client). Власне ж мережеві
адаптери і канали зв’язку вирішують в мережі досить просту задачу вони
передають повідомлення із запитами і відповідями від одного комп’ютера
до іншого, а основну роботу по організації спільного використання
ресурсів виконують клієнтські і серверний частини операційних систем.

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

ПРИМІТКА В технічній літературі англомовний термін «service» звичайно
переводиться як «служба», «сервіс» або «послуга». Часто ці терміни
використовуються як синоніми. У той же час деякі фахівці розрізнюють
термін «служба», з одного боку, і терміни «сервіс» і «послуга», з іншою.
Під «службою» розуміється мережевий компонент, який реалізовує деякий
набір послуг, а «сервісом» називають опис того набору послуг, який
надається даною службою. Таким чином, сервіс — це інтерфейс між
споживачем послуг і постачальником послуг (службою). Далі буде
використовуватися термін «служба» у всіх випадках, коли відмінність в
значенні цих термінів не носить принципового характеру.

Терміни «клієнт» і «сервер» використовуються не тільки для позначення
програмних модулів, але і комп’ютерів, підключених до мережі. Якщо
комп’ютер надає свої ресурси іншим комп’ютерам мережі, то він
називається сервером, а якщо він їх споживає клієнтом. Іноді один і той
же комп’ютер може одночасно грати ролі і сервера, і клієнта.

Розподілені програми

Мережеві служби завжди являють собою розподілені програми. Розподілена
програма це програма, яка складається з декількох взаємодіючих частин (в
приведеному на мал. 1.5 прикладі з двох), причому кожна частина, як
правило, виконується на окремому комп’ютері мережі.

МАЛ. 1.5. Взаємодія частин розподіленого додатку

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

Потрібно підкреслити, що не всякий додаток, що виконується в мережі, є
мережевим. Існує велика кількість популярних додатків, які не є
розподіленими і цілком виконуються на одному комп’ютері мережі. Проте і
такі додатки можуть використати переваги мережі за рахунок вбудованих в
операційну систему мережевих служб. Значна частина історії локальних
мереж пов’язана якраз з використанням таких нерозподілених додатків.
Розглянемо, наприклад, як відбувалася робота користувача з відомою в
свій час СУБД dBase. Звичайно файли бази даних, з якими працювали всі
користувачі мережі, розташовувалися на файловому сервері. Сама ж СУБД
зберігалася на кожному клієнтському комп’ютері у вигляді єдиного
програмного модуля.

Програма dBase була розрахована на обробку тільки локальних даних, тобто
даних, розташованих на тому ж комп’ютері, що і сама програма. Користувач
запускав dBase на своєму комп’ютері, і вона шукала дані на локальному
диску, абсолютно не беручи до уваги існування мережі. Щоб обробляти з
допомогою dBase дані на віддаленому комп’ютері, користувач звертався до
послуг файлової служби, яка доставляла дані з сервера на клієнтський
комп’ютер і створювала для СУБД ефект їх локального зберігання.

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

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *