Відмінності між версіями «TCP/IP»

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
м
 
(не показано 24 проміжні версії 6 учасників)
Рядок 1: Рядок 1:
<b>Вступ</b>
+
==Вступ (TCP/IP)==
 
+
 
Протоколи мережної взаємодії TCP/IP є результатом еволюційного розвитку протоколів глобальної обчислювальної мережі ARPANET.  
 
Протоколи мережної взаємодії TCP/IP є результатом еволюційного розвитку протоколів глобальної обчислювальної мережі ARPANET.  
Роботи зі створення мережі ARPANET були початі рядом університетів США і фірмою BBN у 1968 р. У 1971 р. мережа була введена в регулярну експлуатацію і забезпечувала для усіх своїх вузлів три основні послуги:  
+
Роботи зі створення мережі ARPANET були розпочаті рядом університетів США і фірмою [http://itc.ua/node/16632/ BBN] у 1968 р. У 1971 р. мережа була введена в регулярну експлуатацію і забезпечувала для усіх своїх вузлів три основні послуги:  
 
· інтерактивний вхід користувача на вилучений вузол;  
 
· інтерактивний вхід користувача на вилучений вузол;  
 
· передача файлів між вузлами мережі;  
 
· передача файлів між вузлами мережі;  
 
· електронна пошта.  
 
· електронна пошта.  
Усі ці засоби базувалися на транспортних послугах наданих програмою керування мережі NCP (Network Control Program), що реалізує свій внутрішній набір протоколів.  
+
Усі ці засоби базувалися на транспортних послугах, наданих програмою керування мережі NCP (Network Control Program), що реалізує свій внутрішній набір протоколів.  
 
Накопичений до 1974 р. досвід експлуатації мережі ARPANET виявив багато недоліків протоколів NCP і дозволив визначити основні вимоги до нового набору протоколів, що отримали назву TCP/IP:  
 
Накопичений до 1974 р. досвід експлуатації мережі ARPANET виявив багато недоліків протоколів NCP і дозволив визначити основні вимоги до нового набору протоколів, що отримали назву TCP/IP:  
 
· незалежність від середовища передачі повідомлень;  
 
· незалежність від середовища передачі повідомлень;  
Рядок 13: Рядок 12:
 
· стандартизація прикладних протоколів.  
 
· стандартизація прикладних протоколів.  
 
Широко використовувана нині версія 4 протоколів TCP/IP була стандартизована в 1981 р. у вигляді документів, названих RFC (Request For Comment). Повний перехід мережі ARPANET на нові протоколи був завершений у 1982 р. Ця мережа зіграла роль "зародка" всесвітньої мережі Internet, побудованої на базі протоколів TCP/IP.  
 
Широко використовувана нині версія 4 протоколів TCP/IP була стандартизована в 1981 р. у вигляді документів, названих RFC (Request For Comment). Повний перехід мережі ARPANET на нові протоколи був завершений у 1982 р. Ця мережа зіграла роль "зародка" всесвітньої мережі Internet, побудованої на базі протоколів TCP/IP.  
Реалізація протоколів TCP/IP виявилася найбільш вдалою у версіях BSD4.2 і BSD4.3 операційної системи UNIX. Ця реалізація є еталоном (станартом "de facto") для всіх наступних.  
+
Реалізація протоколів TCP/IP виявилася найбільш вдалою у версіях BSD4.2 і BSD4.3 операційної системи UNIX. Ця реалізація є еталоном (стандартом "de facto") для всіх наступних.  
 
+
[[Основи TCP/IP]]
+
  
 +
==Основи TCP/IP==
 
TCP/IP - це засіб для обміну інформацією між комп'ютерами, об'єднаними в мережу. Не має значення, чи складають вони частину однієї і тієї ж мережі або підключені до окремих мереж. Не грає ролі і те, що один з них може бути комп'ютером Cray, а інший Macintosh. TCP/IP - це не залежний від платформи стандарт, що перекидає мости через прірву, що лежить між різнорідними комп'ютерами, операційними системами і мережами. Це протокол, що глобально керує Internet, і значною мірою завдяки мережі TCP/IP завоював свою популярність.  
 
TCP/IP - це засіб для обміну інформацією між комп'ютерами, об'єднаними в мережу. Не має значення, чи складають вони частину однієї і тієї ж мережі або підключені до окремих мереж. Не грає ролі і те, що один з них може бути комп'ютером Cray, а інший Macintosh. TCP/IP - це не залежний від платформи стандарт, що перекидає мости через прірву, що лежить між різнорідними комп'ютерами, операційними системами і мережами. Це протокол, що глобально керує Internet, і значною мірою завдяки мережі TCP/IP завоював свою популярність.  
  
 
Розуміння TCP/IP головним чином має на увазі здатність розбиратися в наборах таємничих протоколів, що використовуються головними комп'ютерами TCP/IP для обміну інформацією.  
 
Розуміння TCP/IP головним чином має на увазі здатність розбиратися в наборах таємничих протоколів, що використовуються головними комп'ютерами TCP/IP для обміну інформацією.  
TCP/IP – це абревіатура терміна Transmission Control Protocol/Internet Protocol (Протокол керування передачею/Протокол Internet). У термінології обчислювальних мереж протокол – це заздалегідь погоджений стандарт, що дозволяє двом комп'ютерам обмінюватися даними. Фактично TCP/IP не один протокол, а декілька. Саме тому ви часто чуєте, як його називають набором, або комплектом протоколів, серед яких TCP і IP - два основних.  
+
'''''TCP/IP''''' – це абревіатура терміна Transmission Control Protocol/Internet Protocol (Протокол керування передачею/Протокол Internet). У термінології обчислювальних мереж ''протокол'' – це заздалегідь погоджений стандарт, що дозволяє двом комп'ютерам обмінюватися даними. Фактично TCP/IP не один протокол, а декілька. Саме тому ви часто чуєте, як його називають набором, або комплектом протоколів, серед яких TCP і IP - два основних.  
  
 
Програмне забезпечення для TCP/IP, на комп'ютері, являє собою специфічну для даної платформи реалізацію TCP, IP і інших членів сімейства TCP/IP. Звичайно в ньому також маються такі високорівневі прикладні програми, як FTP (File Transfer Protocol, Протокол передачі файлів), що дають можливість через командний рядок керувати обміном файлами по мережі.  
 
Програмне забезпечення для TCP/IP, на комп'ютері, являє собою специфічну для даної платформи реалізацію TCP, IP і інших членів сімейства TCP/IP. Звичайно в ньому також маються такі високорівневі прикладні програми, як FTP (File Transfer Protocol, Протокол передачі файлів), що дають можливість через командний рядок керувати обміном файлами по мережі.  
  
Причина, по якій TCP/IP настільки важливий сьогодні, полягає в тому, що він дозволяє самостійним мережам підключатися до Internet або поєднуватися для створення часток інтрамереж. Обчислювальні мережі, що складають інтрамережу, фізично підключаються через пристрої, що називаються маршрутизаторами або IP-маршрутизаторами. Маршрутизатор - це комп'ютер, що передає пакети даних з однієї мережі в іншу. В інтрамережі, що працює на основі TCP/IP, інформація передається у виді дискретних блоків, що називаються IP-пакетами (IP packets) або IP-дейтаграмами (IP datagrams). Завдяки програмному забезпеченню TCP/IP усі комп'ютери, підключені до обчислювальної мережі, стають "близькими родичами". Власне кажучи воно ховає маршрутизатори і базову архітектуру мереж і робить так, що все це виглядає як одна велика мережа. Точно так само, як підключення до мережі Ethernet розпізнаються по 48-розрядних ідентифікаторах Ethernet, підключення до інтрамережі ідентифікуються 32-розрядними IP-адресами, що ми виражаємо у формі десяткових чисел, розділених крапками (наприклад, 128.10.2.3). Узявши IP-адресу вилученого комп'ютера, комп'ютер в інтрамережі або в Internet може відправити дані на нього, начебто вони складають частину однієї і тієї ж фізичної мережі.  
+
Причина, по якій TCP/IP настільки важливий сьогодні, полягає в тому, що він дозволяє самостійним мережам підключатися до Internet або поєднуватися для створення часток інтрамереж. Обчислювальні мережі, що складають інтрамережу, фізично підключаються через пристрої, що називаються маршрутизаторами або IP-маршрутизаторами. '''[[Маршрутизатор]]''' - це комп'ютер, що передає пакети даних з однієї мережі в іншу. В інтрамережі, що працює на основі TCP/IP, інформація передається у виді дискретних блоків, що називаються IP-пакетами (IP packets) або IP-дейтаграмами (IP datagrams). Завдяки програмному забезпеченню TCP/IP усі комп'ютери, підключені до обчислювальної мережі, стають "близькими родичами". Власне кажучи воно ховає маршрутизатори і базову архітектуру мереж і робить так, що все це виглядає як одна велика мережа. Точно так само, як підключення до мережі Ethernet розпізнаються по 48-розрядних ідентифікаторах Ethernet, підключення до інтрамережі ідентифікуються 32-розрядними IP-адресами, що ми виражаємо у формі десяткових чисел, розділених крапками (наприклад, 128.10.2.3). Узявши IP-адресу вилученого комп'ютера, комп'ютер в інтрамережі або в Internet може відправити дані на нього, начебто вони складають частину однієї і тієї ж фізичної мережі.  
  
TCP/IP дає рішення проблеми обміну даними між двома комп'ютерами, підключеними до одній і тієї ж інтрамережі, але приналежним різним фізичним мережам. Рішення складається з декількох частин, причому кожен член сімейства протоколів TCP/IP вносить свою лепту в загальну справу. <i>IP</i> - самий фундаментальний протокол з комплекту TCP/IP - передає IP-дейтаграми по інтрамережі  і виконує важливу функцію, що називається маршрутизацією, по суті справи це вибір маршруту, по якому дейтаграма буде випливати з пункту А в пункт B, і використання маршрутизаторів для "стрибків" між мережами.  
+
TCP/IP дає рішення проблеми обміну даними між двома комп'ютерами, підключеними до одній і тієї ж інтрамережі, але приналежним різним фізичним мережам. Рішення складається з декількох частин, причому кожен член сімейства протоколів TCP/IP вносить свою лепту в загальну справу.
  
<i>TCP</i> - це протокол більш високого рівня, що дозволяє прикладним програмам, запущеним на різних головних комп'ютерах мережі, обмінюватися потоками даних. TCP поділяє потоки даних на ланцюжки, що називаються TCP-сегментами, і передає них за допомогою IP. У більшості випадків кожен TCP-сегмент пересилається в одній IP-дейтаграмі. Однак при необхідності TCP буде розщеплювати сегменти на декілька IP-дейтаграмм, що вміщаються у фізичні кадри даних, що використовують для передачі інформації між комп'ютерами в мережі. Оскільки IP не гарантує, що дейтаграми будуть отримані в тій же самій послідовності, у якій вони були послані, TCP здійснює повторну "зборку" TCP-сегментів на іншому кінці маршруту, щоб утворити безперервний потік даних. FTP і telnet - це два приклади популярних прикладних програм TCP/IP, що спираються на використання TCP.
+
==Структура стеку TCP/IP==
 +
<center>[[Image:777.PNG]]</center>
 +
<center>[[Image:стекTCPIP.png]]</center>
  
<b>Короткий опис протоколів сімейства TCP/IP з розшифровкою абревіатур</b>
+
[[ARP]]. (Address Resolution Protocol, протокол визначення адрес): протокол для визначення фізичної адреси інтерфейсу. Ця адреса необхідна для формування заголовка пакета канального рівня (кадру). Пакети ARP протоколу не доповнюються IP-заголовком міжмережного рівня, а одразу пакуються в кадри (пакети канального рівня), бо вони циркулюють тільки в межах однієї мережі.
  
<b>ARP</b>. (Address Resolution Protocol, протокол визначення адрес): конвертує 32-розрядні IP-адреси у фізичні адреси обчислювальної мережі, наприклад, у 48-розрядні адреси Ethernet.  
+
[[ATM]] ( Asynchronous Transfer Mode ) – нова універсальна технологія побудови каналів зв’язку для глобальних і локальних мереж, що забезпечує гарантовану якість і терміновість передавання даних. За цією технологією створюють нові швидкісні магістральні мережі для передавання даних в Україні. Високі ціни на обладнання стримують процес розширення застосування технології ATM .  
  
<b>FTP</b> (File Transfer Protocol, протокол передачі файлів): дозволяє передавати файли з одного комп'ютера на іншій з використанням TCP-з'єднань. У схожому, але менш розповсюдженому протоколі передачі файлів - Trivial File Transfer Protocol (TFTP) - для пересилання файлів застосовується UDP, а не TCP.  
+
[[DNS]] ( Domain Name System ) – доменна система імен, яка призначена для перетворення символьних імен мережних ресурсів у цифрові адреси серверів, де розміщено ці ресурси.  
  
<b>ICMP</b> (Internet Control Message Protocol, протокол керуючих повідомлень Internet): дозволяє IP-маршрутизаторам посилати повідомлення про помилки і керуючу інформацію іншим IP-маршрутизаторам і головним комп'ютерам мережі. ICMP-повідомлення "подорожують" у вигляді полів даних IP-дейтаграм і обов'язково повинні реалізовуватися у всіх варіантах IP.  
+
Ethernet – найбільш розповсюджена технологія побудови каналів зв’язку у локальних мережах.  
  
<b>IGMP</b> (Internet Group Management Protocol, протокол керування групами Internet): дозволяє IP-дейтаграмам поширюватися в циркулярному режимі (multicast) серед комп'ютерів, що належать до відповідних груп.  
+
Frame Relay – найбільш розповсюджена технологія побудови каналів зв’язку для глобальних мереж.  
  
<b>IP</b> (Internet Protocol, протокол Internet): низькорівневий протокол, що направляє пакети даних по окремих мережах, зв'язаних разом за допомогою маршрутизаторів для формування Internet або інтрамережі. Дані "подорожують" у формі пакетів, називаних IP-дейтаграмами.  
+
[[FTP]] (File Transfer Protocol, протокол передачі файлів): дозволяє передавати файли з одного комп'ютера на іншій з використанням TCP-з'єднань. У схожому, але менш розповсюдженому протоколі передачі файлів - Trivial File Transfer Protocol (TFTP) - для пересилання файлів застосовується UDP, а не TCP.  
  
<b>RARP</b> (Reverse Address Resolution Protocol, протокол зворотного перетворення адрес): перетворить фізичні мережні адреси в IP-адреси.  
+
[[HTTP]] ( Hypertext Transfer Protocol ) – протокол для передавання Web -сторінок (гіпертексту).  
  
<b>SMTP</b> (Simple Mail Transfer Protocol, простий протокол обміну електронною поштою): визначає формат повідомлень, що SMTP-клієнт, що працює на одному комп'ютері, може використовувати для пересилання електронної пошти на SMTP-сервер, запущений на іншому комп'ютері.  
+
[[ICMP]] (Internet Control Message Protocol, протокол керуючих повідомлень Internet): дозволяє IP-маршрутизаторам посилати повідомлення про помилки і керуючу інформацію іншим IP-маршрутизаторам і головним комп'ютерам мережі. ICMP-повідомлення "подорожують" у вигляді полів даних IP-дейтаграм і обов'язково повинні реалізовуватися у всіх варіантах IP.  
  
<b>TCP</b> (Transmission Control Protocol, протокол керування передачею): протокол орієнтований на роботу з підключеннями і передає дані у вигляді потоків байтів. Дані пересилаються пакетами - TCP-сегментами, - які складаються з заголовків TCP і даних. TCP - "надійний" протокол, тому що в ньому використовуються контрольні суми для перевірки цілісності даних і відправлення підтверджень, щоб гарантувати, що передані дані прийняті без перекручувань.  
+
[[IGMP]] (Internet Group Management Protocol, протокол керування групами Internet): дозволяє [[IP-дейтаграмам]] поширюватися в циркулярному режимі (multicast) серед комп'ютерів, що належать до відповідних груп.  
  
<b>UDP</b> (User Datagram Protocol, протокол користувацьких дейтаграм): протокол, що не залежить від підключень, що передає дані пакетами, називаними UDP-дейтаграмами. UDP - "ненадійний" протокол, оскільки відправник не одержує інформацію, що показує, чи була в дійсності прийнята дейтаграма.  
+
[[IP]] (Internet Protocol, протокол Internet): низькорівневий протокол, що направляє пакети даних по окремих мережах, зв'язаних разом за допомогою маршрутизаторів для формування Internet або інтрамережі. Дані "подорожують" у формі пакетів, називаних IP-дейтаграмами.  
  
 +
[[Протокол ІРv6]]
  
<b>Структура протоколів TCP/IP приведена на малюнку нижче. Протоколи TCP/IP поділяються на 4 рівні.</b>
+
[[PPP]] ( Point - to - Point Protocol ) – протокол, що широко застосовують для побудови каналу зв’язку між двома віддаленими вузлами, що з’єднані між собою фізичною лінією зв’язку.
<center>[[Image:Img00002.gif]]</center>
+
  
Самий нижній (<b><I>рівень IV</I></b>) відповідає фізичному і канальному рівням моделі OSI. Цей рівень у протоколах TCP/IP не регламентується, але підтримує всі популярні стандарти фізичного і канального рівня: для локальних мереж це Ethernet, Token Ring, FDDI, Fast Ethernet, 100VG-AnyLAN, для глобальних мереж - протоколи з'єднань "крапка-крапка" SLIP і PPP, протоколи територіальних мереж з комутацією пакетів X.25, frame relay. Розроблена також спеціальна специфікація, що визначає використання технології ATM як транспорт канального рівня. Звичайно з появою нової технології локальних або глобальних мереж вона швидко включається в стек TCP/IP за рахунок розробки відповідного RFC, що визначає метод інкапсуляції пакетів IP у її кадри.  
+
[[RARP]] (Reverse Address Resolution Protocol, протокол зворотного перетворення адрес): перетворить фізичні мережні адреси в IP-адреси.  
  
Наступний рівень (<b><I>рівень III</I></b>) - це рівень межмережевої взаємодії, що займається передачею пакетів з використанням різних транспортних технологій локальних мереж, територіальних мереж, ліній спеціального зв'язку і т.п.  
+
[[SMTP]] (Simple Mail Transfer Protocol, простий протокол обміну електронною поштою): визначає формат повідомлень, що SMTP-клієнт, що працює на одному комп'ютері, може використовувати для пересилання електронної пошти на SMTP-сервер, запущений на іншому комп'ютері.  
  
Як основний протокол мережного рівня (у термінах моделі OSI) у стеку використовується протокол IP, що споконвічно проектувався як протокол передачі пакетів у складених мережах, що складаються з великої кількості локальних мереж, об'єднаних як локальними, так і глобальними зв'язками. Тому протокол IP добре працює в мережах зі складною топологією, раціонально використовуючи наявність у них підсистем і ощадливо витрачаючи пропускну здатність низькошвидкісних ліній зв'язку. Протокол IP є дейтаграмним протоколом, тобто він не гарантує доставку пакетів до вузла призначення, але намагається це зробити.  
+
[[TCP]] (Transmission Control Protocol, протокол керування передачею): протокол орієнтований на роботу з підключеннями і передає дані у вигляді потоків байтів. Дані пересилаються пакетами - TCP-сегментами, - які складаються з заголовків TCP і даних. TCP - "надійний" протокол, тому що в ньому використовуються контрольні суми для перевірки цілісності даних і відправлення підтверджень, щоб гарантувати, що передані дані прийняті без перекручувань.  
  
До рівня міжмережевої взаємодії відносяться і всі протоколи, зв'язані зі складанням і модифікацією таблиць маршрутизації, такі як протоколи збору маршрутної інформації RIP (Routing Internet Protocol) і OSPF (Open Shortest Path First), а також протокол міжмережевих керуючих повідомлень ICMP (Internet Control Message Protocol). Останній протокол призначений для обміну інформацією про помилки між маршрутизаторами мережі і вузлом - джерелом пакета. За допомогою спеціальних пакетів ICMP повідомляється про неможливість доставки пакета, про перевищення часу життя або тривалості зборки пакета з фрагментів, про аномальні величини параметрів, про зміну маршруту пересилання і типу обслуговування, про стан системи і т.п.  
+
[[UDP]] (User Datagram Protocol, протокол користувацьких дейтаграм): протокол, що не залежить від підключень, що передає дані пакетами, називаними UDP-дейтаграмами. UDP - "ненадійний" протокол, оскільки відправник не одержує інформацію, що показує, чи була в дійсності прийнята [[дейтаграма]].  
  
Наступний рівень (<b><I>рівень II</I></b>) називається основним. На цьому рівні функціонують протокол керування передачею TCP (Transmission Control Protocol) і протокол дейтаграм користувача UDP (User Datagram Protocol). Протокол TCP забезпечує надійну передачу повідомлень між вилученими прикладними процесами за рахунок утворення віртуальних з'єднань. Протокол UDP забезпечує передачу прикладних пакетів дейтаграмним способом, як і IP, і виконує тільки функції сполучної ланки між мережним протоколом і численними прикладними процесами.  
+
[[SNMP]] (англ. Simple Network Management Protocol — простий протокол керування мережею) — це протокол керування мережами зв'язку на основі архітектури TCP/IP.
  
Верхній рівень (<b><I>рівень I</I></b>) називається прикладним. За довгі роки використання в мережах різних країн і організацій стік TCP/IP нагромадив велику кількість протоколів і сервісів прикладного рівня. До них відносяться такі широко використовувані протоколи, як протокол копіювання файлів FTP, протокол емуляції термінала telnet, поштовий протокол SMTP, використовуваний в електронній пошті мережі Internet, гіпертекстові сервіси доступу до вилученої інформації, такі як WWW і багато хто інші.  
+
==Рівні протоколів TCP/IP==
 +
Найнижчий (<b><I>рівень IV</I></b>) відповідає фізичному і канальному рівням моделі OSI. Цей рівень у протоколах TCP/IP не регламентується, але підтримує всі популярні стандарти фізичного і канального рівня: для локальних мереж це Ethernet, Token Ring, FDDI, Fast Ethernet, 100VG-AnyLAN, для глобальних мереж - протоколи з'єднань "крапка-крапка" SLIP і PPP, протоколи територіальних мереж з комутацією пакетів X.25, frame relay. Розроблена також спеціальна специфікація, що визначає використання технології ATM як транспорт канального рівня. Звичайно з появою нової технології локальних або глобальних мереж вона швидко включається в стек TCP/IP за рахунок розробки відповідного [[RFC]], що визначає метод інкапсуляції пакетів IP у її кадри.  
  
 +
Наступний рівень (<b><I>рівень III</I></b>) - це рівень межмережевої взаємодії, що займається передачею пакетів з використанням різних транспортних технологій локальних мереж, територіальних мереж, ліній спеціального зв'язку і т.п.
  
<b>Стек TCP/IP</b>
+
Як основний протокол мережного рівня (у термінах моделі OSI) у стеку використовується протокол IP, що споконвічно проектувався як протокол передачі пакетів у складених мережах, що складаються з великої кількості локальних мереж, об'єднаних як локальними, так і глобальними зв'язками. Тому протокол IP добре працює в мережах зі складною топологією, раціонально використовуючи наявність у них підсистем і ощадливо витрачаючи пропускну здатність низькошвидкісних ліній зв'язку. Протокол IP є дейтаграмним протоколом, тобто він не гарантує доставку пакетів до вузла призначення, але намагається це зробити.
  
Стек TCP/IP був розроблений з ініціативи Міністерства оборони США більше за 20 років для зв'язку експериментальної мережі ARPAnet з іншими мережами як набір загальних протоколів для різнорідної обчислювальної середи. Великий внесок в розвиток стека TCP/IP, який отримав свою назву по популярних протоколах IP і TCP, вніс університет Берклі, реалізовувавши протоколи стека в своєї версії ОС UNIX. Популярність цієї операційної системи привела до широкого поширення протоколів TCP, IP і інших протоколів стека. Сьогодні цей стек використовується для зв'язку комп'ютерів всесвітньої інформаційної мережі Internet, а також у величезному числі корпоративних мереж.
+
До рівня міжмережевої взаємодії відносяться і всі протоколи, зв'язані зі складанням і модифікацією таблиць маршрутизації, такі як протоколи збору маршрутної інформації [[RIP]] (Routing Internet Protocol) і OSPF (Open Shortest Path First), а також протокол міжмережевих керуючих повідомлень ICMP (Internet Control Message Protocol). Останній протокол призначений для обміну інформацією про помилки між маршрутизаторами мережі і вузлом - джерелом пакета. За допомогою спеціальних пакетів ICMP повідомляється про неможливість доставки пакета, про перевищення часу життя або тривалості зборки пакета з фрагментів, про аномальні величини параметрів, про зміну маршруту пересилання і типу обслуговування, про стан системи і т.п.  
  
Стек TCP/IP на нижньому рівні підтримує всі популярні стандарти фізичного і канального рівнів: для локальних мереж це Ethernet, Token Ring, FDDI, для глобальних протоколи роботи на аналогових комутованих і виділених лініях SLIP, РРР, протоколи територіальних мереж Х.25 і ISDN.
+
Наступний рівень (<b><I>рівень II</I></b>) називається основним. На цьому рівні функціонують протокол керування передачею TCP (Transmission Control Protocol) і протокол дейтаграм користувача UDP (User Datagram Protocol). Протокол TCP забезпечує надійну передачу повідомлень між вилученими прикладними процесами за рахунок утворення віртуальних з'єднань. Протокол UDP забезпечує передачу прикладних пакетів дейтаграмним способом, як і IP, і виконує тільки функції сполучної ланки між мережним протоколом і численними прикладними процесами.  
 
+
Основними протоколами стека, що дали йому назву, є протоколи IP і TCP. Ці протоколи в термінології моделі OSI відносяться до мережевого і транспортного рівнів відповідно. IP забезпечує просування пакету по складовій мережі, а TCP гарантує надійність його доставки.
+
 
+
За довгі роки використання в мережах різних країн і організацій стек TCP/IP увібрав в себе велику кількість протоколів прикладного рівня. До них відносяться такі популярні протоколи, як протокол пересилки файлів FTP, протокол емуляції термінала telnet, поштовий протокол SMTP, що використовується в електронній пошті мережі Internet, гіпертекстові сервіси служби WWW і багато інших.
+
 
+
Сьогодні стек TCP/IP являє собою один з самих поширених стеків транспортних протоколів обчислювальних мереж. Дійсно, тільки в мережі Internet об'єднано більше 10 мільйонів комп'ютерів по всьому світу, які взаємодіють один з одним за допомогою стека протоколів TCP/IP.
+
 
+
Стрімке зростання популярності Internet привело і до змін в розставлянні сил в світі комунікаційних протоколів протоколи TCP/IP, на яких побудований Internet, стали швидко тіснити безперечного лідера минулих років стік IPX/SPX компанії Novell. Сьогодні в світі загальна кількість комп'ютерів, на яких встановлений стек TCP/IP, порівнялося із загальною кількістю комп'ютерів, на яких працює стек IPX/SPX, і це говорить про різкий перелом відносно адміністраторів локальних мереж до протоколів, що використовуються на настільних комп'ютерах, оскільки саме вони складають переважне число світового комп'ютерного парку і саме на них раніше майже скрізь працювали протоколи компанії Novell, необхідні для доступу до файлових серверів NetWare. Процес становлення стека TCP/IP як стек номер один в будь-яких типах мереж продовжується, і зараз люба промислова операційна система обов'язково включає програмну реалізацію цього стека в своєму комплекті постачання.
+
 
+
Хоч протоколи TCP/IP нерозривно пов'язані з Internet і кожний з багатомільйонної армади комп'ютерів Internet працює на основі цього стека, існує велика кількість локальних, корпоративних і територіальних мереж, що безпосередньо не є частинами Internet, в яких також використовують протоколи TCP/IP. Щоб відрізняти їх від Internet, ці мережі називають мережами TCP/IP або просто IP-мережами.
+
 
+
Оскільки стек TCP/IP спочатку створювався для глобальної мережі Internet, він має багато особливостей, що дають йому перевагу перед іншими протоколами, коли мова заходить про побудову мереж, що включають глобальні зв'язки. Зокрема, дуже корисною властивістю, що робить можливим застосування цього протоколу у великих мережах, є його здатність фрагментувати пакети. Дійсно, велика мережа часто складається з мереж, побудованих на абсолютно різних принципах. У кожній з цих мереж може бути встановлена власна величина максимальної довжини одиниці даних, що передаються (кадру). У такому випадку при переході з однієї мережі, що має велику максимальну довжину, в мережу з меншою максимальною довжиною може виникнути необхідність розподілу кадру, що передається на декілька частин. Протокол IP стека TCP/IP ефективно вирішує цю задачу.
+
 
+
Іншою особливістю технології TCP/IP є гнучка система адресації, що дозволяє більш просто в порівнянні з іншими протоколами аналогічного призначення включати в интромережу мережі інших технологій. Ця властивість також сприяє застосуванню стека TCP/IP для побудови великих гетерогенных мереж.
+
 
+
У стеку TCP/IP дуже економно використовуються можливості широкомовних розсилок. Ця властивість абсолютно необхідна при роботі на повільних каналах зв'язку, характерних для територіальних мереж.
+
 
+
Однак, як і завжди, за переваги, що отримуються треба платити, і платою тут виявляються високі вимоги до ресурсів і складність адміністрування IP-мереж. Могутні функціональні можливості протоколів стека TCP/IP вимагають для своєї реалізації високих обчислювальних витрат. Гнучка система адресації і відмова від широкомовних розсилок приводять до наявності в IP-мережі різних централізованих служб типу DNS, DHCP і т. п. Кожна з цих служб направлена на полегшення адміністрування мережі, в тому числі і на полегшення конфігурування обладнання, але в той же час сама вимагає пильної уваги з боку адміністраторів.
+
 
+
Можна приводити і інші доводи за і проти стека протоколів Internet, однак факт залишається фактом сьогодні це самий популярний стек протоколів, що широко використовується як в глобальних, так і локальних мережах.
+
 
+
 
+
 
+
<b>Адресація у ІР-мережах</b>
+
  
 +
Верхній рівень (<b><I>рівень I</I></b>) називається прикладним. За довгі роки використання в мережах різних країн і організацій стік TCP/IP нагромадив велику кількість протоколів і сервісів прикладного рівня. До них відносяться такі широко використовувані протоколи, як протокол копіювання файлів FTP, протокол емуляції термінала telnet, поштовий протокол SMTP, використовуваний в електронній пошті мережі Internet, гіпертекстові сервіси доступу до вилученої інформації, такі як WWW і багато хто інші.
 +
==Адресація у ІР-мережах==
 
Міжмережна схема адресації, що застосовується у протоколі ІР, описана у документах RFC 990 i RFC 997. В її основі покладено принцип відокремлення адресації мереж від адресації пристроїв у цих мережах. Така схема полегшує маршрутизацію. При цьому адреси повинні призначатися упорядковано (послідовно), для того, щоб зробити маршрутизацію більш ефективною.
 
Міжмережна схема адресації, що застосовується у протоколі ІР, описана у документах RFC 990 i RFC 997. В її основі покладено принцип відокремлення адресації мереж від адресації пристроїв у цих мережах. Така схема полегшує маршрутизацію. При цьому адреси повинні призначатися упорядковано (послідовно), для того, щоб зробити маршрутизацію більш ефективною.
  
Рядок 110: Рядок 90:
  
 
Коли протокол ІР був стандартизований у вересні 1981 року, його специфікація вимагала, щоб кожний пристрій, підключений до мережі, мав унікальну 32-бітну адресу. Ця адреса поділяється на дві частини. Перша частина адреси ідентифікує мережу, в якій розміщений пристрій. Друга частина однозначно ідентифікує самий пристрій у рамках мережі. Така схема приводить до дворівневої адресної ієрархії.
 
Коли протокол ІР був стандартизований у вересні 1981 року, його специфікація вимагала, щоб кожний пристрій, підключений до мережі, мав унікальну 32-бітну адресу. Ця адреса поділяється на дві частини. Перша частина адреси ідентифікує мережу, в якій розміщений пристрій. Друга частина однозначно ідентифікує самий пристрій у рамках мережі. Така схема приводить до дворівневої адресної ієрархії.
 
{| border="1" cellpadding="2"
 
|+ Формат адреси
 
|-
 
! 0 1 2 3 . . . !!              !! . . . 30 31
 
 
|-
 
! Ключ          !! Номер мережі  !!Номер пристрою у мережі
 
|}
 
  
 
Зараз поле номера мережі у адресі називається мережним префіксом, так як воно ідентифікує мережу. Всі робочі станції у мережі мають один і той же префікс. При цьому вони повинні мати унікальні номери пристроїв. Дві робочі станції, розміщені в різних мережах, повинні мати різні мережні префікси, але при цьому вони можуть мати однакові номери пристроїв.  
 
Зараз поле номера мережі у адресі називається мережним префіксом, так як воно ідентифікує мережу. Всі робочі станції у мережі мають один і той же префікс. При цьому вони повинні мати унікальні номери пристроїв. Дві робочі станції, розміщені в різних мережах, повинні мати різні мережні префікси, але при цьому вони можуть мати однакові номери пристроїв.  
Рядок 159: Рядок 130:
  
  
<b>Особливі ІР-адреси.</b>
+
==Особливі ІР-адреси==
 
+
 
У протоколі ІР існує декілька домовленостей про особливу інтерпретацію ІР-адрес.  
 
У протоколі ІР існує декілька домовленостей про особливу інтерпретацію ІР-адрес.  
  
Рядок 181: Рядок 151:
 
Групова адресація призначена для економічного розповсюдження у Internet або у великій корпоративній мережі аудіо- чи відеопрограм, призначених одразу великій аудиторії слухачів або глядачів. Якщо такі засоби знайдуть широке застосування, то Internet зможе створити серйозну конкурецію радіо і телебаченню.
 
Групова адресація призначена для економічного розповсюдження у Internet або у великій корпоративній мережі аудіо- чи відеопрограм, призначених одразу великій аудиторії слухачів або глядачів. Якщо такі засоби знайдуть широке застосування, то Internet зможе створити серйозну конкурецію радіо і телебаченню.
  
 +
==Структура IP-пакету==
 +
IP-пакети складаються з даних верхнього рівня та IP-заголовку. За специфікацією протоколу, пакет має бути не більший за 65535 бітів (з заголовком і даними включно).
 +
* '''Версія (Version)''' — 4-бітове поле, що описує використовувану версію протоколу IP. Всі пристрої зобов'язані використовувати протокол IP однієї версії, пристрій що використовує іншу версію буде відкидати пакети.
 +
* '''Довжина IP-заголовку (IP header Length — HLEN)''' — 4-бітове поле, що описує довжину заголовку пакету в 32-бітових блоках. Це значення — це повна довжина заголовку з врахуванням двох полів змінної довжини.
 +
* '''Тип обслуговування (Type of Service — TOS)''' — 8-бітове поле, що вказує на степінь важливості інформації, яка присвоєна протоколом верхньго рівня.
 +
* '''Загальна довжина (Total Length)''' — 16-бітове поле, що описує довжину пакету в байтах, із заголовком і даними включно. Для того щоб вирахувати довжину блока даних, потрібно від повної довжини відняти значення поля HLEN.
 +
* '''Ідентифікація (Identification)''' — шістнадцятибітове поле, що зберігає ціле число, яке описує даний пакет. Це число являє собою послідовний номер.
 +
* '''Флаги (Flags)''' — 3-бітове поле, в якому два молодших біта контролюють фрагментацію пакетів. Перший біт визначає чи був пакет фрагментовано, а другий чи є цей пакет останнім фрагментом в серії фрагментів.
 +
* '''Зміщення фрагментації (Fragment Offset)''' — 13-бітове поле, що допомагає зібрати разом фрагменти пакетів. Це поле дозволяє використовувати 16 бітів в сумі для флагів фрагментації.
 +
* '''Час життя (Time-to-Live — TTL)''' — 8-бітове поле — лічильник, в якому зберігаються послідовно зменшуване значення кількості пройдених вузлів (роутетів, що їх ще іноді в цьому випадку називають хопами(hops)) на шляху до місця призначення. У випадку коли лічільник пройдених хопів дорівнюватиме нулю — пакет буде відкинуто, таким чином попереджується нескінченна циклічна пересилка пакетів.
 +
* '''Протокол (Protocol)''' — 8-бітове поле, що вказує на те, який протокол верхнього рівня отримає пакет, після завершення обробки IP-протоколом. Наприклад TCP або UDP.
 +
* '''Контрольна сума заголовку (Header Checksum)''' — 16-бітове поле, що допомагає перевірити цілісність заголовку пакету.
 +
* '''IP-адреса відправника (Source IP address)''' (адресант, сорс, відправник) — 32-бітове поле, що зберігає IP-адресу вузла-відправника.
 +
* '''IP-адреса отримувача (Destination IP adress)''' (адресат, дест, отримувач) — 32-бітове поле, що зберігає адресу вузла призначення (отримувача).
 +
* '''Опції (Options)''' — поле змінної довжини, що дозволяє протоколу IP реалізувати підтримку різних опцій, зокрема засобів безпеки.
 +
* '''Підкладка (Padding)''' — поле, що використовується для вставки додаткових нулів, для гарантування кратності IP-заголовку 32 бітам.
 +
* '''Дані (Data)''' — поле змінної довжини (64 Кбіт макс.), що зберігає інформації для верхніх рівнів.
  
 +
IP-пакет складається з даних протоколу верхнього рівня і заголовку, що має описану вище структуру. Хоча основною частиною заголовку є адреси відправника і призначення, саме інші частини заголовку роблять протокол таким надійним і гнучким. Інформація, що зберігається в полях заголовку задає дані пакету і призначена для протоколів верхніх рівнів.
  
<b>Використання масок у ІР-адресації.</b>
 
  
 +
==Використання масок у ІР-адресації==
 
Традиційна схема поділу ІР-адреси на номер мережі і номер вузла базується на понятті класу, який визначається значеннями кількох перших біт адреси. Саме тому, що перший байт адреси 185.23.44.206 попадає у діапазон 128-191, ми можемо сказати, що ця адреса відноситься до класу В, а значить, номером мережі є перші два байти, доповнені двома нульовими байтами - 185.23.0.0, а номером вузла - 0.0.44.206.
 
Традиційна схема поділу ІР-адреси на номер мережі і номер вузла базується на понятті класу, який визначається значеннями кількох перших біт адреси. Саме тому, що перший байт адреси 185.23.44.206 попадає у діапазон 128-191, ми можемо сказати, що ця адреса відноситься до класу В, а значить, номером мережі є перші два байти, доповнені двома нульовими байтами - 185.23.0.0, а номером вузла - 0.0.44.206.
  
Рядок 195: Рядок 183:
 
</ul>
 
</ul>
  
____________________________________________________________________________________________________
+
Для запису масок використовують і інші формати, наприклад, зручно інтерпретувати значення маски, записаної у шістнадцятьковому коді: FF.FF.00.00 - маска для адрес класу В. Часто зустрічається і таке позначення 185.23.44.206/16 - цей запис означає, що маска для цієї адреси містить 16 одиниць або що у вказаній адресі під номер адреси мережі відведено 16 двійкових розрядів.
  
Примітка. Для запису масок використовують і інші формати, наприклад, зручно інтерпретувати значення маски, записаної у шістнадцятьковому коді: FF.FF.00.00 - маска для адрес класу В. Часто зустрічається і таке позначення 185.23.44.206/16 - цей запис означає, що маска адреси для цієї адреси містить 16 одиниць або що у вказаній адресі під номер адреси мережі відведено 16 двійкових розрядів.
+
==Адресація і технологія CIDR==
  
____________________________________________________________________________________________________
+
Технологія безкласової междоменной маршрутизації (Classless Inter-Domain Routing, CIDR), яка описана в документах RFC 1517, RFC 1518, RFC 1519, RFC 1520 і яка вперше була офіційно оголошена в 1993 році, дозволяє центрам розподілу адрес уникнути видачі абонентам зайвих адрес.
  
 +
Розподіл IP-адреси на номери мережі і вузла в технології CIDR відбувається на основі маски змінної довжини, що призначається постачальником послуг. Необхідною умовою застосування CIDR є наявність у організації, що розпоряджається адресами, безперервних діапазонів адрес. Такі адреси мають однаковий префікс, тобто однакову цифрову послідовність у кількох старших розрядах. Нехай в розпорядженні деякого постачальника послуг є безперервний простір IP-адрес в кількості 2n. Звідси випливає, що префікс має довжину (32 - n) розрядів. Решта n розрядів грає роль лічильника послідовних номерів.
  
 +
<center>[[Файл:Cidr.jpg]]</center>
  
<b>Підмережі.</b>
+
Коли споживач звертається до постачальника послуг з проханням про виділення йому деякого числа адрес, то в наявному пулі адрес «вирізається» неперервна область S1,S2 або S3, в залежності від необхідної кількості адрес. При цьому повинні бути виконані
 +
наступні умови:
  
 +
* кількість адрес у виділеної області має дорівнювати степеню двійки;
 +
 +
* початкова межа пулу адрес, що виділяється повинна бути кратна необхідній кількості вузлів.
 +
 +
Очевидно, що префікс кожної з показаних на малюнку областей має власну довжину - чим менше кількість адрес в даній області, тим довший її префікс.
 +
 +
Завдяки CIDR постачальник послуг одержує можливість «нарізати» блоки з виділеного йому адресного простору відповідно до вимог кожного
 +
клієнта.
 +
 +
==Підмережі==
 
Як відомо, ІР-адреса складається з двох їєрархічних рівнів. Необхідність у введенні третього рівня їєрархії - рівня підмереж - була зумовлена виникненням дефіциту номерів мереж і стрімким зростанням таблиць маршрутизації маршрутизаторів у Internet. Після впровадження рівня підмережі номер пристрою поділяється на дві частини - номер підмережі та номер пристрою у цій підмережі.
 
Як відомо, ІР-адреса складається з двох їєрархічних рівнів. Необхідність у введенні третього рівня їєрархії - рівня підмереж - була зумовлена виникненням дефіциту номерів мереж і стрімким зростанням таблиць маршрутизації маршрутизаторів у Internet. Після впровадження рівня підмережі номер пристрою поділяється на дві частини - номер підмережі та номер пристрою у цій підмережі.
  
Рядок 214: Рядок 215:
  
 
Крім того, легко розв'язується проблема виділення номерів при рості організації. Організація отримує номер мережі, а далі адміністратор довільно привласнює номери підмереж для кожної внутрішньої мережі. Це дозволяє організації розширювати свою мережу без необхідності отримання ще одного мережного номера.
 
Крім того, легко розв'язується проблема виділення номерів при рості організації. Організація отримує номер мережі, а далі адміністратор довільно привласнює номери підмереж для кожної внутрішньої мережі. Це дозволяє організації розширювати свою мережу без необхідності отримання ще одного мережного номера.
 
+
==Маска підмережі==
 
+
<b>Маска підмережі.</b>
+
 
+
 
Якщо маршрутизатори у мережі Internet використовують тільки мережний префікс адреси отримувача для передачі трафіка у організацію, то марщрутизатори всередині приватної мережі організації розширений мережний префікс для передачі трафіка індивідуальним підмережам. Розширеним мережним префіксом називають префікс мережі і номер підмережі.
 
Якщо маршрутизатори у мережі Internet використовують тільки мережний префікс адреси отримувача для передачі трафіка у організацію, то марщрутизатори всередині приватної мережі організації розширений мережний префікс для передачі трафіка індивідуальним підмережам. Розширеним мережним префіксом називають префікс мережі і номер підмережі.
  
Рядок 239: Рядок 237:
  
 
Якщо деяка ІР-мережа створена для роботи у "автономному режимі", без зв'язку з Internet, в стандартах Internet визначено декілька діапазонів адрес, рекомендуємих для локального використання. Ці адреси не обробляються маршрутизаторами Internet ні за яких умов. Адреси, зарезервовані для локальних цілей, вибрані з різних класів: у класі А - це мережа 10.0.0.0, у класі В - це діапазон з 16 номерів мереж 172.16.0.0. - 172.31.0.0, у класі С - це діапазон з 255 мереж - 192.168.0.0. - 192.168.255.0.
 
Якщо деяка ІР-мережа створена для роботи у "автономному режимі", без зв'язку з Internet, в стандартах Internet визначено декілька діапазонів адрес, рекомендуємих для локального використання. Ці адреси не обробляються маршрутизаторами Internet ні за яких умов. Адреси, зарезервовані для локальних цілей, вибрані з різних класів: у класі А - це мережа 10.0.0.0, у класі В - це діапазон з 16 номерів мереж 172.16.0.0. - 172.31.0.0, у класі С - це діапазон з 255 мереж - 192.168.0.0. - 192.168.255.0.
 
 
<b>Протокол ІРv6.</b>
 
 
Робота по розширенню протоколу ІР була розпочата у 1992 році. Необхідність цього диктувалась тим, що практично всі ресурси старої версії протоколу ІР (ІРv4) були вичерпані. Швидке зростання Інтернет привело до появи дефіциту ІР-адрес. Зросший трафік почав викликати перевантаження магістральних маршрутизаторів. Змінився і характер передаваємого трафіка. Все більшу роль у ньому почали займати мультімедійні дані.
 
 
Нова версія протоколу ІР - версія 6 - була прийнята організацією IETF у 1995 році. Вона описана у документі RFC 1752. В теперішній час відбувається поступовий перехід до протоколу ІРv6. Існує декілька фрагментів мережі Інтернет, у яких маршрутизатори підтримують обидві версії ІР. Ці фрагменти об'єднані між собою і утворюють так звану "шосту" магістраль (6 bone). Для того, щоб передати дейтаграми протоколу ІРv6, магістраль 6 bone інкапсулює їх у дейтаграму ІР і передає їх через ті частини мережі Інтернет, які не підтримують нову версію протоколу. Цей процес називається тунелюванням. Слід пам'ятати, що поява додаткового заголовку при тунелюванні веде до зростання мережного трафіка. Документ RFC 1933 визначає чотири конфігурації тунелів між робочими станціями і маршрутизаторами:
 
 
<ul>
 
<li>маршрутизатор-маршрутизатор;</li>
 
<li>робоча станція-маршрутизатор;</li>
 
<li>робочі станції-маршрутизатори;</li>
 
<li>маршрутизатор-робоча станція. </li>
 
</ul>
 
 
Іншим методом, який дозволяє здійснити плавний перехід на нову версію, є застосування подвійних стеків. Подвійні стеки дозволяють вузлу у мережі ІР підтримувати обидві версії протоколу. Такі вузли називаються IPv6/IPv4-вузлами. Застосування подвійного стеку дозволяє роздільно переводити на протокол IPv6 кожний пристрій у мережі. За цим необхідно задіяти додаткові ресурси такого пристрою, змінити його конфігураційну інформацію і провести ряд інших операцій.
 
 
Протокол IPv6 підтримується практично всіма сучасними операційними системами і виробниками мережного обладнання. Природньо, розвиток протоколу ІР повлік за собою модернізацію всього стеку ТСР/ІР.
 
 
Схема адресації IPv6 істотньо відрізняється від схеми адресації протоколу ІР. Адреса отримувача і відправника у протоколі IPv6 задаються 128 бітами. Така довжина адресного простору дозволяє на достатньо великий період часу зняти проблему дефіциту адрес у мережі Інтернет. Основним механізмом, закладеним у схему адресації протоколу IPv6, є введення ієрархічного розподілу адресного простору на рівні. Замість попередніх двох рівнів - номера мережі і номера пристрою, - у протоколі IPv6 застосовується п'ять рівнів, поєднуючи два рівня ідентифікації провайдерів і три рівня ідентифікації абонентів у мережі.
 
 
У протоколі IPv6 відмінено поділ адрес на класи. У основі розподілу адресного простору лежить технологія CIDR (Class-less Inter-Domain Routing, безкласової міждоменної маршрутизації). CIDR дозволяє об'єднувати маршрути. Одним записом у таблиці маршрутизації можна описувати сотні адрес. Це дозволяє значно зменшити об'єм маршрутної інформації у магістральних маршрутизаторах Інтернет.
 
 
Технологія CIDR вводить поняття узагальненого мережного префікса. Маршрутизатори використовують цей мережний префікс для визначення меж у ІР-адресі між номером мережі і номером пристрою, замість традиційної перевірки перших трьох бітів адреси для виявлення класу адреси. Завдячуючи цьому технологія CIDR здатна підтримувати мережі довільного розміру. У технології CIDR будь-яка маршрутна інформація розсилається маршрутизаторами з указівкою мережного префіксу. Довжина мережного префіксу у бітах служить для визначення числа старших біт, які відповідають номеру мережі у запису таблиці маршрутизації.
 
 
Технологія CIDR вже застосовується з четвертою версією протоколу ІР і підтримується протоколами маршрутизації OSPF, RIP-2 i BGP-4. Для плавного переходу до протоколу ІРv6 введений спеціальний тип адрес - IPv4-compatible (сумісні адреси). У цих адресах старші 96 біт містять нулі, а молодші 32 біти - звичайну адресу IPv4.
 
  
 
[[category:Комп'ютерні мережі]]
 
[[category:Комп'ютерні мережі]]

Поточна версія на 23:51, 3 січня 2013

Вступ (TCP/IP)

Протоколи мережної взаємодії TCP/IP є результатом еволюційного розвитку протоколів глобальної обчислювальної мережі ARPANET. Роботи зі створення мережі ARPANET були розпочаті рядом університетів США і фірмою BBN у 1968 р. У 1971 р. мережа була введена в регулярну експлуатацію і забезпечувала для усіх своїх вузлів три основні послуги: · інтерактивний вхід користувача на вилучений вузол; · передача файлів між вузлами мережі; · електронна пошта. Усі ці засоби базувалися на транспортних послугах, наданих програмою керування мережі NCP (Network Control Program), що реалізує свій внутрішній набір протоколів. Накопичений до 1974 р. досвід експлуатації мережі ARPANET виявив багато недоліків протоколів NCP і дозволив визначити основні вимоги до нового набору протоколів, що отримали назву TCP/IP: · незалежність від середовища передачі повідомлень; · можливість підключення до мережі ЕОМ будь-якої архітектури; · єдиний спосіб організації з'єднання між вузлами в мережі; · стандартизація прикладних протоколів. Широко використовувана нині версія 4 протоколів TCP/IP була стандартизована в 1981 р. у вигляді документів, названих RFC (Request For Comment). Повний перехід мережі ARPANET на нові протоколи був завершений у 1982 р. Ця мережа зіграла роль "зародка" всесвітньої мережі Internet, побудованої на базі протоколів TCP/IP. Реалізація протоколів TCP/IP виявилася найбільш вдалою у версіях BSD4.2 і BSD4.3 операційної системи UNIX. Ця реалізація є еталоном (стандартом "de facto") для всіх наступних.

Основи TCP/IP

TCP/IP - це засіб для обміну інформацією між комп'ютерами, об'єднаними в мережу. Не має значення, чи складають вони частину однієї і тієї ж мережі або підключені до окремих мереж. Не грає ролі і те, що один з них може бути комп'ютером Cray, а інший Macintosh. TCP/IP - це не залежний від платформи стандарт, що перекидає мости через прірву, що лежить між різнорідними комп'ютерами, операційними системами і мережами. Це протокол, що глобально керує Internet, і значною мірою завдяки мережі TCP/IP завоював свою популярність.

Розуміння TCP/IP головним чином має на увазі здатність розбиратися в наборах таємничих протоколів, що використовуються головними комп'ютерами TCP/IP для обміну інформацією. TCP/IP – це абревіатура терміна Transmission Control Protocol/Internet Protocol (Протокол керування передачею/Протокол Internet). У термінології обчислювальних мереж протокол – це заздалегідь погоджений стандарт, що дозволяє двом комп'ютерам обмінюватися даними. Фактично TCP/IP не один протокол, а декілька. Саме тому ви часто чуєте, як його називають набором, або комплектом протоколів, серед яких TCP і IP - два основних.

Програмне забезпечення для TCP/IP, на комп'ютері, являє собою специфічну для даної платформи реалізацію TCP, IP і інших членів сімейства TCP/IP. Звичайно в ньому також маються такі високорівневі прикладні програми, як FTP (File Transfer Protocol, Протокол передачі файлів), що дають можливість через командний рядок керувати обміном файлами по мережі.

Причина, по якій TCP/IP настільки важливий сьогодні, полягає в тому, що він дозволяє самостійним мережам підключатися до Internet або поєднуватися для створення часток інтрамереж. Обчислювальні мережі, що складають інтрамережу, фізично підключаються через пристрої, що називаються маршрутизаторами або IP-маршрутизаторами. Маршрутизатор - це комп'ютер, що передає пакети даних з однієї мережі в іншу. В інтрамережі, що працює на основі TCP/IP, інформація передається у виді дискретних блоків, що називаються IP-пакетами (IP packets) або IP-дейтаграмами (IP datagrams). Завдяки програмному забезпеченню TCP/IP усі комп'ютери, підключені до обчислювальної мережі, стають "близькими родичами". Власне кажучи воно ховає маршрутизатори і базову архітектуру мереж і робить так, що все це виглядає як одна велика мережа. Точно так само, як підключення до мережі Ethernet розпізнаються по 48-розрядних ідентифікаторах Ethernet, підключення до інтрамережі ідентифікуються 32-розрядними IP-адресами, що ми виражаємо у формі десяткових чисел, розділених крапками (наприклад, 128.10.2.3). Узявши IP-адресу вилученого комп'ютера, комп'ютер в інтрамережі або в Internet може відправити дані на нього, начебто вони складають частину однієї і тієї ж фізичної мережі.

TCP/IP дає рішення проблеми обміну даними між двома комп'ютерами, підключеними до одній і тієї ж інтрамережі, але приналежним різним фізичним мережам. Рішення складається з декількох частин, причому кожен член сімейства протоколів TCP/IP вносить свою лепту в загальну справу.

Структура стеку TCP/IP

777.PNG
СтекTCPIP.png

ARP. (Address Resolution Protocol, протокол визначення адрес): протокол для визначення фізичної адреси інтерфейсу. Ця адреса необхідна для формування заголовка пакета канального рівня (кадру). Пакети ARP протоколу не доповнюються IP-заголовком міжмережного рівня, а одразу пакуються в кадри (пакети канального рівня), бо вони циркулюють тільки в межах однієї мережі.

ATM ( Asynchronous Transfer Mode ) – нова універсальна технологія побудови каналів зв’язку для глобальних і локальних мереж, що забезпечує гарантовану якість і терміновість передавання даних. За цією технологією створюють нові швидкісні магістральні мережі для передавання даних в Україні. Високі ціни на обладнання стримують процес розширення застосування технології ATM .

DNS ( Domain Name System ) – доменна система імен, яка призначена для перетворення символьних імен мережних ресурсів у цифрові адреси серверів, де розміщено ці ресурси.

Ethernet – найбільш розповсюджена технологія побудови каналів зв’язку у локальних мережах.

Frame Relay – найбільш розповсюджена технологія побудови каналів зв’язку для глобальних мереж.

FTP (File Transfer Protocol, протокол передачі файлів): дозволяє передавати файли з одного комп'ютера на іншій з використанням TCP-з'єднань. У схожому, але менш розповсюдженому протоколі передачі файлів - Trivial File Transfer Protocol (TFTP) - для пересилання файлів застосовується UDP, а не TCP.

HTTP ( Hypertext Transfer Protocol ) – протокол для передавання Web -сторінок (гіпертексту).

ICMP (Internet Control Message Protocol, протокол керуючих повідомлень Internet): дозволяє IP-маршрутизаторам посилати повідомлення про помилки і керуючу інформацію іншим IP-маршрутизаторам і головним комп'ютерам мережі. ICMP-повідомлення "подорожують" у вигляді полів даних IP-дейтаграм і обов'язково повинні реалізовуватися у всіх варіантах IP.

IGMP (Internet Group Management Protocol, протокол керування групами Internet): дозволяє IP-дейтаграмам поширюватися в циркулярному режимі (multicast) серед комп'ютерів, що належать до відповідних груп.

IP (Internet Protocol, протокол Internet): низькорівневий протокол, що направляє пакети даних по окремих мережах, зв'язаних разом за допомогою маршрутизаторів для формування Internet або інтрамережі. Дані "подорожують" у формі пакетів, називаних IP-дейтаграмами.

Протокол ІРv6

PPP ( Point - to - Point Protocol ) – протокол, що широко застосовують для побудови каналу зв’язку між двома віддаленими вузлами, що з’єднані між собою фізичною лінією зв’язку.

RARP (Reverse Address Resolution Protocol, протокол зворотного перетворення адрес): перетворить фізичні мережні адреси в IP-адреси.

SMTP (Simple Mail Transfer Protocol, простий протокол обміну електронною поштою): визначає формат повідомлень, що SMTP-клієнт, що працює на одному комп'ютері, може використовувати для пересилання електронної пошти на SMTP-сервер, запущений на іншому комп'ютері.

TCP (Transmission Control Protocol, протокол керування передачею): протокол орієнтований на роботу з підключеннями і передає дані у вигляді потоків байтів. Дані пересилаються пакетами - TCP-сегментами, - які складаються з заголовків TCP і даних. TCP - "надійний" протокол, тому що в ньому використовуються контрольні суми для перевірки цілісності даних і відправлення підтверджень, щоб гарантувати, що передані дані прийняті без перекручувань.

UDP (User Datagram Protocol, протокол користувацьких дейтаграм): протокол, що не залежить від підключень, що передає дані пакетами, називаними UDP-дейтаграмами. UDP - "ненадійний" протокол, оскільки відправник не одержує інформацію, що показує, чи була в дійсності прийнята дейтаграма.

SNMP (англ. Simple Network Management Protocol — простий протокол керування мережею) — це протокол керування мережами зв'язку на основі архітектури TCP/IP.

Рівні протоколів TCP/IP

Найнижчий (рівень IV) відповідає фізичному і канальному рівням моделі OSI. Цей рівень у протоколах TCP/IP не регламентується, але підтримує всі популярні стандарти фізичного і канального рівня: для локальних мереж це Ethernet, Token Ring, FDDI, Fast Ethernet, 100VG-AnyLAN, для глобальних мереж - протоколи з'єднань "крапка-крапка" SLIP і PPP, протоколи територіальних мереж з комутацією пакетів X.25, frame relay. Розроблена також спеціальна специфікація, що визначає використання технології ATM як транспорт канального рівня. Звичайно з появою нової технології локальних або глобальних мереж вона швидко включається в стек TCP/IP за рахунок розробки відповідного RFC, що визначає метод інкапсуляції пакетів IP у її кадри.

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

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

До рівня міжмережевої взаємодії відносяться і всі протоколи, зв'язані зі складанням і модифікацією таблиць маршрутизації, такі як протоколи збору маршрутної інформації RIP (Routing Internet Protocol) і OSPF (Open Shortest Path First), а також протокол міжмережевих керуючих повідомлень ICMP (Internet Control Message Protocol). Останній протокол призначений для обміну інформацією про помилки між маршрутизаторами мережі і вузлом - джерелом пакета. За допомогою спеціальних пакетів ICMP повідомляється про неможливість доставки пакета, про перевищення часу життя або тривалості зборки пакета з фрагментів, про аномальні величини параметрів, про зміну маршруту пересилання і типу обслуговування, про стан системи і т.п.

Наступний рівень (рівень II) називається основним. На цьому рівні функціонують протокол керування передачею TCP (Transmission Control Protocol) і протокол дейтаграм користувача UDP (User Datagram Protocol). Протокол TCP забезпечує надійну передачу повідомлень між вилученими прикладними процесами за рахунок утворення віртуальних з'єднань. Протокол UDP забезпечує передачу прикладних пакетів дейтаграмним способом, як і IP, і виконує тільки функції сполучної ланки між мережним протоколом і численними прикладними процесами.

Верхній рівень (рівень I) називається прикладним. За довгі роки використання в мережах різних країн і організацій стік TCP/IP нагромадив велику кількість протоколів і сервісів прикладного рівня. До них відносяться такі широко використовувані протоколи, як протокол копіювання файлів FTP, протокол емуляції термінала telnet, поштовий протокол SMTP, використовуваний в електронній пошті мережі Internet, гіпертекстові сервіси доступу до вилученої інформації, такі як WWW і багато хто інші.

Адресація у ІР-мережах

Міжмережна схема адресації, що застосовується у протоколі ІР, описана у документах RFC 990 i RFC 997. В її основі покладено принцип відокремлення адресації мереж від адресації пристроїв у цих мережах. Така схема полегшує маршрутизацію. При цьому адреси повинні призначатися упорядковано (послідовно), для того, щоб зробити маршрутизацію більш ефективною.

При застосуванні у мережі стеку протоколів ТСР/ІР порти кінцевих пристроїв отримують унікальні адреси, тобто адресується не сам пристрій у мережі, а визначене з'єднання цього пристрою з мережею. Ця схема приводить до низки неподобств. Одним з них є необхідність заміни адреси пристрою при переміщенні його у іншу мережу. Другий недолік в тім, що для роботи з пристроєм, який має декілька підключень у розподіленій мережі, необхідно знати всі його адреси, які ідентифікують ці підключення.

Отже для кожного пристрою у мережах ІР можна говорити про адреси трьох рівнів:

  • Фізична адреса пристрою (точніше - визначеного інтерфейсу). Для пристроїв у мережах Ethernet - це МАС-адреса мережної карти або порту маршрутизатора. Ці адреси призначаються виробниками обладнання. Фізична адреса має шість байтів: старші три байти - ідентифікатор фірми-виробника. Молодші три байти призначаються самим виробником;
  • ІР-адреса, що складається з чотирьох байтів. Ця адреса застосовується на мережному рівні еталонної моделі OSI;
  • Символьний ідентифікатор - ім'я. Цей ідентифікатор може призначатися адміністратором довільно.

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

Зараз поле номера мережі у адресі називається мережним префіксом, так як воно ідентифікує мережу. Всі робочі станції у мережі мають один і той же префікс. При цьому вони повинні мати унікальні номери пристроїв. Дві робочі станції, розміщені в різних мережах, повинні мати різні мережні префікси, але при цьому вони можуть мати однакові номери пристроїв.

Для забезпечення гнучкості у привласнюванні адрес комп'ютерним мережам розробники протоколу визначили, що адресний простір повинен бути поділений на три різних класи - А, В і С. Знаючи клас, Ви знаєте, де у 32-бітовій адресі проходить межа між мережним префіксом і номером пристрою. На мал.1 показані формати адрес цих основних класів.

1 419.gif
Мал.1 Три класи ІР-адрес.

Одна з основних переваг застосування класів є в тім, що по класу адреси можна визначити, де проходить межа між мережним префіксом і номером пристрою.

Недоліком такого методу є необхідність зміни мережної адреси при підключенні додаткових пристроїв. Наприклад, якщо загальне число пристроїв у мережі класу С буде перевищувати 255, то вимагатиметься заміна її адреси на адресу класу В. Зміна мережних адрес потребує від адміністратора додаткових зусиль по налагодженню мережі. Крім того, введення класів адрес значно зменшує теоретично можливе число індивідуальних адрес. У поточній версії протоколу ІР (версія 4) загальне число адрес складає 4 294 967 296, так як протокол передбачає застосування 32 біт для задання адреси. Природньо, застосування частини бітів у службових цілях зменшує доступну кількість індивідуальних адрес.

Клас А призначений для великих мереж. Кожна адреса класу А має 8-бітовий префікс мережі, у якому старший біт встановлений у 1, а наступні 7 використовуються для номера мережі. Для номера пристрою задіюються 24 біти, що залишилися. На сьогоднішній день всі адреси класу А вже виділені. Мережі класу А також позначаються як "/8", поскільки адреси цього класу мають 8-бітовий префікс.

Максимальне число мереж класу А складає 126 (2 адреси віднімаються, що складаються з одних нулів і одиниць). Кожна мережа цього класу підтримує до 16 777 214 пристроїв. Так як адресний блок класу А може містити максимум 2 147 483 648 (2 в степіні 31) індивідуальних адрес, а в протоколі ІР версіі 4 може підтримуватися максимум до 4 294 967 296 (2 в степіні 32) адрес, то клас А займає 50% загального адресного простору протоколу ІР.

Клас В призначений для мереж середнього розміру. Кожна адреса класу В має 16-бітовий мережний префікс, у якому два старших біти дорівнюють 10, наступні 14 біт використовуються для номера мережі. Для номера пристрою надані 16 біт. Мережі класу В також позначаються як "/16", поскільки адреса цього класу має 16-бітний мережний префікс.

Максимальне число мереж класу В дорівнює 16 382 (2 в 14 степіні мінус 2). Кожна мережа цього класу підтримує до 65 534 (2 в 16 степіні мінус 2) пристроїв. Так як весь адресний блок класу В може містити максимум до 1 073 741 824 (2 в 30 степіні) індивідуальних адрес, він займає 25% загального простору протоколу ІР.

Адреса класу С використовується у мережах з невеликим числом пристроїв. Кожна мережа класу С має 24-бітний префікс, в якому три старших біти дорівнюють 110, а наступні 21 біт використовуються для номера мережі. Під номери пристроїв виділені 8 біт, що залишилися. Мережі класу С також позначаються як "/24", поскільки адреса цього класу має 24-бітний мережний префікс.

Максимальне число мереж класу С складає 2 097 152 (2 в 21 степіні). Кожна мережа цього класу підтримує до 254 (2 у восьмій мінус 2) пристроїв. Клас С займає 12,5% загального адресного простору протоколу ІР.

У доповнення до цих класів адрес надають ще два класи. У класі D старші чотири біти дорівнюють 1110. Цей клас використовується для групової передачі даних. У класі Е старші чотири біти дорівнюють 1111. Він зарезервований для проведення експериментів.

Для зручності читання адрес у технічній літературі, прикладних програмах і т.д. ІР-адреси зображаються у вигляді чотирьох десяткових чисел, розділених точками. Кожне з цих чисел відповідає одному октету (8 бітам) ІР-адреси. Цей формат називають точечно-десятковим (Decimal-Point Notation) або точечно-десятковою нотацією.

ІР-адреса у точечно-десятковому форматі.
0... ...31
10010001 00001010 00100010 00000011
145. 10. 34. 3.


Особливі ІР-адреси

У протоколі ІР існує декілька домовленостей про особливу інтерпретацію ІР-адрес.

  • Якщо вся ІР-адреса складається тільки з двійкових нулів, то вона означає адресу того вузла, який згенерував цей пакет; цей режим використовується тільки у деяких повідомленнях ІСМР.
  • Якщо в полі адреси мережі стоять тільки нулі, по домовленості вважається, що вузол призначення належить тій самій мережі, що і вузол , який відправив пакет.
  • Якщо всі двійкові розряди ІР-адреси дорівнюють 1, то пакет з такою адресою призначення повинен розсилатися всім вузлам, які знаходяться у тій самій мережі, що і відправник цього пакета. Така розсилка називається обмеженим широкомовним повідомленням (limited broadcast).
  • Якщо в полі номера вузла призначення стоять тільки одиниці, то пакет, який має таку адресу, розсилається всім вузлам мережі із заданим номером мережі. Наприклад, пакет з адресою 192.190.21.255 доставляється всім вузлам мережі 192.190.21.0. Таке розсилання називається широкомовним повідомленням (broadcast).

Особливий зміст має ІР-адреса, перший октет якої дорівнює 127. Вона використовується для тестування програм і взаємодії процесів у межах однієї машини. Коли програма посилає дані за адресою 127.0.0.1, то утворюється як би "петля". Дані не передаються по мережі, а повертаються модулям верхнього рівня як тільки но прийняті. Тому в ІР-мережі забороняється привласнювати машинам ІР-адреси, які починаються із 127. Ця адреса має назву loopback.

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

Форма групової адреси - multicast - означає, що даний пакет повинен бути доставлений відразу декільком вузлам, які утворюють групу з номером, вказаним у полі адреси. Вузли самі ідентифікують себе, тобто визначають, до якої з груп вони відносяться. Один і той самий вузол може входити до декількох груп. Члени будь-якої групи multicast не обов'язково повинні належати одній мережі. Групова адреса не поділяється на поля номера мережі і вузла і обробляється маршрутизатором особливим чином.

Основне призначення multicast-адрес - розповсюдження інформації за схемою "один-до-багатьох". Хост, який хоче передавати одну й ту саму інформацію багатьом абонентам, за допомогою спеціального протокола IGMP (Internet Group Management Protocol) повідомляє про створення в мережі нової мультімовної групи із визначеною адресою. Маршрутизатори, які підтримують мультімовність, розповсюджують інформацію про створення нової групи у мережах, підключених до портів цього маршрутизатора. Хости, які хотять під'єднатися до знов створюваної мультімовної групи, повідомляють про це своїм локальним маршрутизаторам і ті передають цю інформацію хосту, ініціатору створення нової групи.

Щоб маршрутизатори мали можливість автоматично розповсюджувати пакети з адресою multicast по складній мережі, необхідно використовувати у кінцевих маршрутизаторах модифіковані протоколи обміну маршрутною інформацією, такі як, наприклад, MOSPF (Multicast OSPF, аналог OSPF). Групова адресація призначена для економічного розповсюдження у Internet або у великій корпоративній мережі аудіо- чи відеопрограм, призначених одразу великій аудиторії слухачів або глядачів. Якщо такі засоби знайдуть широке застосування, то Internet зможе створити серйозну конкурецію радіо і телебаченню.

Структура IP-пакету

IP-пакети складаються з даних верхнього рівня та IP-заголовку. За специфікацією протоколу, пакет має бути не більший за 65535 бітів (з заголовком і даними включно).

  • Версія (Version) — 4-бітове поле, що описує використовувану версію протоколу IP. Всі пристрої зобов'язані використовувати протокол IP однієї версії, пристрій що використовує іншу версію буде відкидати пакети.
  • Довжина IP-заголовку (IP header Length — HLEN) — 4-бітове поле, що описує довжину заголовку пакету в 32-бітових блоках. Це значення — це повна довжина заголовку з врахуванням двох полів змінної довжини.
  • Тип обслуговування (Type of Service — TOS) — 8-бітове поле, що вказує на степінь важливості інформації, яка присвоєна протоколом верхньго рівня.
  • Загальна довжина (Total Length) — 16-бітове поле, що описує довжину пакету в байтах, із заголовком і даними включно. Для того щоб вирахувати довжину блока даних, потрібно від повної довжини відняти значення поля HLEN.
  • Ідентифікація (Identification) — шістнадцятибітове поле, що зберігає ціле число, яке описує даний пакет. Це число являє собою послідовний номер.
  • Флаги (Flags) — 3-бітове поле, в якому два молодших біта контролюють фрагментацію пакетів. Перший біт визначає чи був пакет фрагментовано, а другий чи є цей пакет останнім фрагментом в серії фрагментів.
  • Зміщення фрагментації (Fragment Offset) — 13-бітове поле, що допомагає зібрати разом фрагменти пакетів. Це поле дозволяє використовувати 16 бітів в сумі для флагів фрагментації.
  • Час життя (Time-to-Live — TTL) — 8-бітове поле — лічильник, в якому зберігаються послідовно зменшуване значення кількості пройдених вузлів (роутетів, що їх ще іноді в цьому випадку називають хопами(hops)) на шляху до місця призначення. У випадку коли лічільник пройдених хопів дорівнюватиме нулю — пакет буде відкинуто, таким чином попереджується нескінченна циклічна пересилка пакетів.
  • Протокол (Protocol) — 8-бітове поле, що вказує на те, який протокол верхнього рівня отримає пакет, після завершення обробки IP-протоколом. Наприклад TCP або UDP.
  • Контрольна сума заголовку (Header Checksum) — 16-бітове поле, що допомагає перевірити цілісність заголовку пакету.
  • IP-адреса відправника (Source IP address) (адресант, сорс, відправник) — 32-бітове поле, що зберігає IP-адресу вузла-відправника.
  • IP-адреса отримувача (Destination IP adress) (адресат, дест, отримувач) — 32-бітове поле, що зберігає адресу вузла призначення (отримувача).
  • Опції (Options) — поле змінної довжини, що дозволяє протоколу IP реалізувати підтримку різних опцій, зокрема засобів безпеки.
  • Підкладка (Padding) — поле, що використовується для вставки додаткових нулів, для гарантування кратності IP-заголовку 32 бітам.
  • Дані (Data) — поле змінної довжини (64 Кбіт макс.), що зберігає інформації для верхніх рівнів.

IP-пакет складається з даних протоколу верхнього рівня і заголовку, що має описану вище структуру. Хоча основною частиною заголовку є адреси відправника і призначення, саме інші частини заголовку роблять протокол таким надійним і гнучким. Інформація, що зберігається в полях заголовку задає дані пакету і призначена для протоколів верхніх рівнів.


Використання масок у ІР-адресації

Традиційна схема поділу ІР-адреси на номер мережі і номер вузла базується на понятті класу, який визначається значеннями кількох перших біт адреси. Саме тому, що перший байт адреси 185.23.44.206 попадає у діапазон 128-191, ми можемо сказати, що ця адреса відноситься до класу В, а значить, номером мережі є перші два байти, доповнені двома нульовими байтами - 185.23.0.0, а номером вузла - 0.0.44.206.

Для гнучкого встановлення межі між номером мережі і номером вузла використовують маску, Маска - це число, яке використовується у парі з ІР-адресою; двійковий запис маски містить одиниці у тих розрядах, які повинні у ІР-адресі інтерпретуватися як номер мережі. Поскільки номер мережі є цілою частиною адреси, одиниці у масці також повинні бути безперервною послідовністю. Для стандартних класів мереж маски мають такі значення:

  • клас А - 11111111.00000000.00000000.00000000 (255.0.0.0);
  • клас В - 11111111.11111111.00000000.00000000 (255.255.0.0);
  • клас С - 11111111.11111111.11111111.00000000 (255.255.255.0).

Для запису масок використовують і інші формати, наприклад, зручно інтерпретувати значення маски, записаної у шістнадцятьковому коді: FF.FF.00.00 - маска для адрес класу В. Часто зустрічається і таке позначення 185.23.44.206/16 - цей запис означає, що маска для цієї адреси містить 16 одиниць або що у вказаній адресі під номер адреси мережі відведено 16 двійкових розрядів.

Адресація і технологія CIDR

Технологія безкласової междоменной маршрутизації (Classless Inter-Domain Routing, CIDR), яка описана в документах RFC 1517, RFC 1518, RFC 1519, RFC 1520 і яка вперше була офіційно оголошена в 1993 році, дозволяє центрам розподілу адрес уникнути видачі абонентам зайвих адрес.

Розподіл IP-адреси на номери мережі і вузла в технології CIDR відбувається на основі маски змінної довжини, що призначається постачальником послуг. Необхідною умовою застосування CIDR є наявність у організації, що розпоряджається адресами, безперервних діапазонів адрес. Такі адреси мають однаковий префікс, тобто однакову цифрову послідовність у кількох старших розрядах. Нехай в розпорядженні деякого постачальника послуг є безперервний простір IP-адрес в кількості 2n. Звідси випливає, що префікс має довжину (32 - n) розрядів. Решта n розрядів грає роль лічильника послідовних номерів.

Cidr.jpg

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

  • кількість адрес у виділеної області має дорівнювати степеню двійки;
  • початкова межа пулу адрес, що виділяється повинна бути кратна необхідній кількості вузлів.

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

Завдяки CIDR постачальник послуг одержує можливість «нарізати» блоки з виділеного йому адресного простору відповідно до вимог кожного клієнта.

Підмережі

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

1 424.gif
Мал.2 Формування трьохрівневої ієрархії.

Збільшення кількості рівнів знімає проблему зростання таблиць маршрутизації завдяки тому, що інформація про топологію корпоративних мереж стає непотрібною магістральним маршрутизаторам Internet. Маршрути з мережі Internet до будь-якої конкретної підмережі, розташованої у мережі із заданою ІР-адресою, однакові і не залежать від того, у якій підмережі розташований отримувач. Це стало можливим завдяки тому, що всі підмережі мережі із заданим номером використовують один і той самий мережний префікс, хоч їх номери (номери підмереж) різні. Маршрутизаторам у приватній мережі потрібно відрізняти окремі підмережі, але для маршрутизаторів Internet всі підмережі відносяться до єдиного запису у таблиці маршрутизації. Це дозволяє адміністратору приватної мережі вносити будь-які зміни у логічну структуру всієї мережі, не впливаючи на розмір таблиць маршрутизації маршрутизаторів Internet.

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

Маска підмережі

Якщо маршрутизатори у мережі Internet використовують тільки мережний префікс адреси отримувача для передачі трафіка у організацію, то марщрутизатори всередині приватної мережі організації розширений мережний префікс для передачі трафіка індивідуальним підмережам. Розширеним мережним префіксом називають префікс мережі і номер підмережі.

1 425.gif
Мал.3 Розширений мережний префікс.

Поняття розширеного мережного префікса, по суті, еквівалентно поняттю маска підмережі (subnet mask). Маска підмережі - це двійкове число, яке містить одиниці у тих розрядах, які відносяться до розширеного мережного префікса. Маска підмережі дозволяє поділити ІР-адресу на дві частини: номер підмережі та номер пристрою у цій підмережі.

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

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

Документ RFC 1219 визначає основне правило, якому слід дотримуватися при привласнюванні номерів підмережам і пристроям. Номери підмереж призначаються таким чином, щоб старші біти у номері підмережі встановлювалися першими (тобто починаючи з крайньої лівої позиції). В той же час одиничні біти номериівпристроїв рекомендується встановлювати, починаючи з крайньої правої позиції. Отже, якщо дотримуватися цього правила, то на межі між номером підмережі і номером пристрою будуть існувати нульові невикористані біти. Це дозволяє змінити маску підмережі без зміни ІР-адреси, привласненої пристрою.

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

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

Координуючу роль у централізованому розподілі ІР-адрес спочатку відігравала організація InterNIC, однак із зростанням мережі задача розподілу адрес стала дуже складною, і InterNIC делегувала частину своїх функцій іншим організаціям і крупним поставщикам послуг Internet.

Якщо деяка ІР-мережа створена для роботи у "автономному режимі", без зв'язку з Internet, в стандартах Internet визначено декілька діапазонів адрес, рекомендуємих для локального використання. Ці адреси не обробляються маршрутизаторами Internet ні за яких умов. Адреси, зарезервовані для локальних цілей, вибрані з різних класів: у класі А - це мережа 10.0.0.0, у класі В - це діапазон з 16 номерів мереж 172.16.0.0. - 172.31.0.0, у класі С - це діапазон з 255 мереж - 192.168.0.0. - 192.168.255.0.