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
   41   42   43   44   45   46   47   48   49   50   51