Page 46 - 4785
P. 46
Приклад 2.1. Основні концепції. Клієнт-сереверна модель
обміну повідомленнями.
Завдання. Навести приклад роботи клієнт-серверної моделі обміну
повідомленнями.
Рішення. Припустимо, що прикладному Процесу вузла 1
(рис.2.6) необхідно прочитати значення змінної А з Процесу на вузлі
2 і занести результат у свою змінну В. Для цього користувачу
(інженеру) необхідно скористатися відповідним інтерфейсом. Це
може бути візуальний інтерфейс або прикладна функція типу:
ЧИТАТИ_МЕРЕЖ_ЗМІННУ_ (А,В) ,
де: А – назва змінної з віддаленого вузла, а В – назва змінної, куди
буде записуватись результат.
Рисунок 2.4 - Приклад організації клієнт-серверної архітектури
У цьому випадку Процес вузла 1 виступає як Клієнт, а вузла 2
– як Сервер. Вузол 1 робить запит, який складається з 2-х байт.
Перший байт вказує на команду, тобто функцію (в нашому прикладі
„R”- читання змінної), другий – являє собою аргумент даної функції.
Оскільки використовувана функція – це читання, то аргументом
буде об’єкт для читання (в нашому випадку змінна А). Єдиний
протокол прикладного рівня робить такий формат запиту
зрозумілим для Процесу вузла 2. Обробивши запит Клієнта, Процес-
Сервер зчитує значення змінної А (=10) і направляє відповідь із 3
байт: функція – „r” (відповідь на читання), аргумент відповідної
функції і безпосередньо результат. На рисунку не показане
проходження запиту та відповіді через всі рівні мережі (приклад
2.3), тому вони прямують безпосередньо між Процесами
Як правило, для клієнт-серверного обміну повідомленнями,
дані при читанні/запису групують. Так, наприклад, при циклічн-
44