
- •Практична робота 10
- •Загальні відомості про архітектуру сімейства протоколів tcp/ip
- •Рівень мережного інтерфейсу
- •Рівень Internet. Протоколи ip, icmp, arp, rarp. Internet–адреси
- •Транспортний рівень. Протоколи tcp і udp. Tcp і udp сокети. Адресні простори портів. Поняття encapsulation
- •Рівень додатків/процесів
- •Використовування моделі клієнт-сервер для взаємодії видалених процесів
- •Організація зв'язку між видаленими процесами за допомогою датаграм
- •Мережний порядок байт. Функції htons(), htonl(), ntohs(), ntohl()
- •Функції перетворення ip-адрес inet_ntoa(), inet_aton()
- •Функція bzero()
- •Створення сокета. Системний виклик socket()
- •Адреси сокетів. Настройка адреси сокета. Системний виклик bind()
Практична робота 10
Тема: Сімейство протоколів TCP/IP. Сокети (sockets) в UNIX і основи роботи з ними.
Мета: Розглянути коротку історію сімейства протоколів TCP/IP. Вивчити загальні відомості про архітектуру сімейства протоколів TCP/IP, рівень мережного інтерфейсу, рівень Internet. Ознайомитися з протоколами IP, ICMP, ARP, RARP. Розглянути наступні поняття: Internet-адреси. Транспортний рівень. Протоколи TCP і UDP. UDP і TCP сокети (sockets). Адресні простори портів. Поняття encapsulation. Рівень додатків/програм. Використовування моделі клієнт-сервер при вивченні мережного програмування.
Коротка
історія сімейства протоколів TCP/IP
Все різноманіття мережних додатків і багатомільйонна всесвітня комп'ютерна мережа виросли з чотирьохкомп'ютерної мережі ARPANET, створеної за замовленням Міністерства Оборони США і що зв'язала обчислювальні комплекси в Стендфордськом дослідницькому інституті, каліфорнійському університеті в Санта-Барбарі, каліфорнійському університеті в Лос-Анджелесі і університеті Юти. Перша передача інформації між двома комп'ютерами мережі ARPANET відбулася в жовтні 1969 року, і цю дату прийнято вважати датою народження нелокальних комп'ютерних мереж. (Необхідно відзначити, що дата є достатньо умовної, оскільки перший зв'язок двох видалених комп'ютерів через комутовані телефонні лінії був здійснений ще в 1965 році, а реальні можливості для розробки користувачами ARPANET мережних додатків з'явилися тільки в 1972 році.) Ця мережа росла і розмножувалася брунькуванням, закривалися її окремі частини, з'являлися її цивільні аналоги, вони зливалися разом, і в результаті "що виросло – то виросло".
При створенні ARPANET був розроблений протокол мережної взаємодії комунікаційних вузлів – Network Control Protocol (NCP), здійснюючий зв'язок за допомогою передачі датаграмм. Цей протокол був призначений для конкретної архітектурної побудови мережі і базувався на припущенні, що мережа є статичною і настільки надійною, що комп'ютерам не вимагається уміння реагувати на виникаючі помилки. У міру зростання ARPANET і необхідності підключення до неї мереж, побудованих на інших архітектурних принципах (пакетні супутникові мережі, наземні пакетні радіомережі), від цього припущення довелося відмовитися і шукати інші підходи до побудови мережних систем. Результатом досліджень в цих областях стала поява сімейства протоколів TCP/IP, на базі якого забезпечувалася надійна доставка інформації по неоднорідній мережі. Це сімейство протоколів дотепер займає що веде місце як мережна технологія, що використовується в операційній системі UNIX. Саме тому ми і вибрали його для практичної ілюстрації загальних мережних рішень, висловлених в лекції 14.
Загальні відомості про архітектуру сімейства протоколів tcp/ip
Сімейство протоколів TCP/IP побудовано за "листковим" принципом, докладно розглянутому в лекції (лекція 14). Хоча воно і має багаторівневу структуру, його будова відрізняється від будови еталонної моделі OSI, запропонованої стандартом ISO. Це і недивно, оскільки основні риси сімейства TCP/IP були закладені до появи еталонної моделі і багато в чому послужили поштовхом для її розробки. В сімействі протоколів TCP/IP можна виділити чотири рівні:
Рівень мережного інтерфейсу.
Рівень Internet.
Транспортний рівень.
Рівень додатків/процесів.
Співвідношення рівнів сімейства TCP/IP і рівнів моделі OSI/ISO приведено на рисунку 15–16.1.
Мал. 15-16.1. Співвідношення моделей OSI/ISO і TCP/IP
На кожному рівні сімейства TCP/IP присутні декілька протоколів. Зв'язок між самими споживаними протоколами і їх приналежність рівням зображені на рисунку 15–16.2.
Давайте стисло охарактеризуємо кожний рівень сімейства.
Мал. 15-16.2. Основні протоколи сімейства TCP/IP