Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lections (1).doc
Скачиваний:
22
Добавлен:
12.02.2016
Размер:
1.43 Mб
Скачать

Файли – сокети

Файли-сокети для з’єднання ТСР – це група взаємозв’язаних елементів даних або запитів з 4 елементів, який визначає 2 кінцеві точки з’єднання. Локальний ІР адрес і локальний порт ТСР; віддалений ІР адрес і віддалений порт ТСР. Файл сокетів однозначно ідентифікує кожне з’єднання ТСР в об’єднаній мережі. 2 значення. які ідентифікують кінцеву точку ІР адрес і номер порта часто називають сокетом.

Номер портів тср і паралельні сервери

На прикладі паралельного сервера основним сервером користувача дочірнього процеса для обробки кожного нового дочірнього з’єднання, якщо дочірній процес буде використовувати номер порта при обслуговуванні тривалого запиту, нехай сервер є багатоінтерфейсний або має декілька мережених інтерфейсів з адресами: 206.62.206.35, 206.62.266.66. Перший виконує пасивне відкриття, використовує при цьому свій наперед відомий номер порта (21)

Для вказання файл-сокетів сервера ми використовуємо позначення {*.21, *.*}. Сервер чекає запит на з’єднання на 21 любого локального інтерфейсу. Віддалений ІР адрес і віддалений порт є не задані і позначаються {*.*}.

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

Локальний адрес заданий за допомогою символів підстановлює відповідну довільну адресу з даної множини.

Наступний крок – це коли клієнт запускає з адресом 198.10.1.2 і відкриває активне відкриття з сервером 206.62.266.35. Тут ми вважаємо, що порт, який динамічно призначений вибраний клієнтом ТСР і це порт 1500

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

На цьому етапі ми повинні провести відмінності можна прослуховувати сокети і приєднати сокетом на стороні сервера.

Необхідно звернути увагу, що приєднання сонета використовує той же порт 21, що і прослуховуючий сокет.

Крім того на вузлі з декількома інтерфейсами локальна адреса заповнюється для приєднання. При виконанні наступного кроку, процес на вузлі запрошує з'єдання на сервері. Код ТСР клієнта задає новому сокету невикористаний номер порта, який динамічно призначений (1501). Ми отримали наступний сценарій.

Розміри буфера і його обмеження

Існує декілька обмежень, які накладаються на розмір IP датаграм.

IPv4

1. максимальний розмір = 65536 байт, включаючи заголовок., розмір дата грами обмежено 16б.

  1. Версія 4 – Версія протоколу IP

  2. Довжина заголовка – повна довжина IP заголовка, включає такі характеристики, які описані 32 розрядними словами. Максимальне значення 15, задає максимальну довжину ІР заголовка – 60 байт.

  3. Тип сервіса – 3-х розрядне поле пріоритету, що ігнорується, 4 біта – тип сервісу і невикористаний біт повинен бути рівний 0

  4. Загальна довжина – довжина ІР датаграми, включаючи заголовок.

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

  6. DF – прапорець заборони фрагментації.

  7. MF – це фрагменти для обробки.

  8. Зміщення фрагмента – використовується при фрагментації і збору в одне ціле.

  9. Час життя – встановлюється відправником, зменшується на 1 наступним маршрутизатором.

  10. Протокол – визначає тип даних, які є в дата грамі

  11. Контрольна сума – заголовка IP датаграми. В якості алгоритму обчислення використовується алгоритм контрольної суми для Internet.

  12. Параметри – параметри, які показані після заголовку.

    1. NOP – нема дій. Цей параметр використовується для вирівнювання чергового параметра по 4б гратці.

    2. EOL – кінець опису параметрів, необхідний для того щоб кінець стану не співпав з закінченням заголовку.

    3. LSRR – штучна маршрутизація відправника з записом.

    4. SSRR - уточнити відправника і записати маршрут.

    5. Відмітка часу

    6. Запис маршруту

    7. Основні параметри забезпечення безпеки

    8. Розширенні параметри забезпечення безпеки.

    9. Ідентифікацір потоку

    10. Оповіщення маршрутизатора – включається в датаграму для її обробки кожним маршрутизатором.

IPv6

Максимальний розмір датаграми IPv6 = 65575 б, включаючи 40 байтний заголовок IPv6.

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

IPv6 підтримує передачу збільшеного об’єму користувацьких датаграм. Поле довжини датаграми розширено до 32 бт, але ця функція підтримується на тих рівнях, де MTU(максимальний размір пакета отримуємих/передаваємих даних,) > 5536 байт.

  1. Версія 6 – Версія протоколу IP

  2. Пріоритет – встановлюється відправником. 0-7 – трафік, який відкладається при перенавантаженій лінії, 8-15 – трафік, який не відкладається.

  3. Мітка потоку – 24 біти. Вона потрібна для ідентифікації всіх пакетів, що належать одному потоку. Використовується для того, щоб проміжні маршрутизатори однаково обробляли всі дані з одною міткою.

  4. Мітка потоку і пріоритет – інформація про потік.

  5. Довжина даних – містить довжину даних які ідуть за 40 б заголовком. Отримане значення вказує, що довжина містить потребує більше ніж 16 біт і міститься в параметрі збільшення поля даних

  6. Наступний заголовок – вказує на тип наступного заголовку, який слідує безпосередньо за базовим. Це може бути яr один з розширенних заголовків IPv6, так і заголовок протокола верхнього рівня. (TCP, UDP і т.д.)

  7. Максимальна кількість транзитних вузлів – аналог часу життя TTL. Вказується максимальне число шагів. Спочатку записується деяке число. Кожний маршрутизатор, через який проходить пакет зменшує його на одиницю. Якщо значення досягне 0 – пакет знищується.

  8. Адреса відправника – вказується адреса відправника пакета.

  9. Адреса отримувача – вказується адреса отримувача. При чому не кінцевого. Якщо в пакеті присутній маршрутний заголовок, то в цьому полі буде знаходитись адреса наступного вузла.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]