TCP/IP
Зміст
Вступ (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 з розшифровкою абревіатур
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-дейтаграмами.
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 - "ненадійний" протокол, оскільки відправник не одержує інформацію, що показує, чи була в дійсності прийнята дейтаграма.
Структура протоколів TCP/IP. Протоколи TCP/IP поділяються на 4 рівні.
Рівні протоколів 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 і багато хто інші. Адресація у ІР-мережах