Курсовая работа: Розвиток сучасних структур програмного забезпечення

Сервер.

1. Ініціалізація бібліотеки.

2. Створення сокету.

3. Заповнення структури параметрами сервера.

4. Асоціювання сокету зі структурою.

5. Прослуховування порту.

6. Прийняття підключення клієнта.

7. Отримання даних (інструкцій) від клієнта.

8. Закриття сокету.

Клієнт.

1. Ініціалізація бібліотеки.

2. Створення сокету.

3. Заповнення структури параметрами сервера.

4. З’єднання з сервером.

5. Відсилання даних (інструкцій) серверу.

6. Закриття сокету.

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

На сервер кладеться відповідальність за прослуховування порту (чи не хоче до нього звернутись клієнт…). Якщо такий клієнт є, то сервер повинен дозволити підключитись клієнту. Далі сервер отримує від клієнта дані (інструкції). Після отримання інструкцій, сервер виконує їх.

Клієнт зі своєї сторони робить наступні дії. Пробує з’єднатися з сервером. Після вдалої спроби він відсилає інструкції серверу. Потім чекає відповіді від сервера. Після цього обидві сторони закривають з’єднання.

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

3.2 Функції та структури, які беруть участь реалізації алгоритму передачі даних

Перша функція – функція завантаження бібліотеки. Прототип:

intWSAStartup(WORDwVersionRequested,LPWSADATAlpWSAData);

Параметр wVersionRequested (in) – версія бібліотеки, яку потрібно завантажити. Молодший байт визначає основну версію, старший – доповняльну.

Параметр lpWSAData (out) – інформація про завантажену бібліотеку.

Функція повертає нуль у разі успішного завантаження. Інакше – код помилки.

Після того, як необхідна версія бібліотеки завантажена, необхідно створити сам сокет. Функція, що відповідає за створення сокету має наступний прототип:

SOCKETsocket(intaf,inttype,intprotocol);

Параметр af (in) - визначає сімейство адрес, що використовуватимуться при передачі даних через сокети. Найчастіше використовується значення параметру AF_INET = 2. Інші варіанти параметру розглядати не будемо.

Параметр type (in) - визначає тип створюваного сокету. Найчастіше використовується значення SOCK_STREAM. Даний параметр означає, що використовувати протокол із сімейства TCP при передачі даних. При з’єднані по сімейству протоколів UDP використовується значення SOCK_DGRAM.

Параметр protocol (in) - визначає сам протокол, що буде використовуватися при передачі даних. В даному випадку використовуватимемо значення IPPROTO_TCP.

Функція повертає дескриптор створеного сокету.

К-во Просмотров: 408
Бесплатно скачать Курсовая работа: Розвиток сучасних структур програмного забезпечення