tcp ip model with different layers
Повне керівництво по шарах моделі TCP / IP:
Ми дізналися все про Захист брандмауера у нашому попередньому уроці. У цьому посібнику ми дізнаємося про модель TCP / IP.
Модель TCP / IP відноситься до протоколу управління передачею та Інтернет-протоколу.
шлюз за замовчуванням недоступний Windows 10
Поточна модель Інтернету використовує цю мережеву модель для комунікаційних цілей. Прочитайте Навчальні посібники з мереж для чіткого розуміння концепції.
Ці протоколи є просто поєднанням правил, які регулюють кожне спілкування по мережі. Вони, в свою чергу, визначають шлях, яким слід керуватись для спілкування між джерелом та пунктом призначення або Інтернетом.
Модель TCP / IP складається з чотирьох рівнів, які завершують загальний процес спілкування. У цьому посібнику ми детально розглянемо функціональність кожного шару.
Як тестувальник програмного забезпечення, необхідно співпереживати моделі TCP / IP, оскільки програмні програми працюють на верхньому рівні, тобто на рівні програми цієї моделі.
Що ви дізнаєтесь:
Архітектура мережі
Чотиришарова архітектура така:
Протоколи та мережі, що використовуються в цій мережевій моделі, показані на малюнку нижче:
Давайте узагальнимо протоколи та основні способи використання кожного рівня в моделі TCP / IP за допомогою наведеної нижче схеми.
Функції кожного шару в моделі TCP / IP
Нижче наведено різні функції кожного рівня в моделі TCP / IP.
Рівень мережевого доступу
Функції рівня мережевого доступу наведені нижче:
- Це нижній рівень моделі TCP / IP, і він включає всю функціональність фізичного рівня та рівня каналу передачі даних опорної моделі OSI.
- Таким чином, він характеризує протоколи, апаратне забезпечення та засоби масової інформації, які будуть використовуватися для зв'язку.
- Пакети даних з рівня Інтернету передаються цьому шару для надсилання до місця призначення через фізичний носій.
- Основним завданням цього рівня є об'єднання байтів даних у кадри та забезпечення певного механізму передачі кадру даних IP через фізичний носій.
- Точка до точки (PPP) - це протокол, який використовується для з'єднання точки в точку через орендовані лінії. Він також розгорнутий для забезпечення зв'язку між кінцевим користувачем та постачальниками послуг Інтернету через модеми. Він також підтримує надання IP-адрес через PPP-посилання.
- Більшість кінцевих користувачів віддають перевагу Ethernet-каналу, який працює лише за протоколом Ethernet-передачі даних. Таким чином, створюється PPP через Ethernet, який дозволяє надсилати інкапсульовані кадри даних всередині фреймів Ethernet.
- PPPoE спочатку створює тунель між мережевими пристроями кінцевих користувачів, такими як маршрутизатор та маршрутизатор ISP. Потім маршрутизатор надсилає кадри PPP через тунель, оскільки тунель працює як точка-точка між маршрутизаторами. Тепер дані передаються також через мережі WAN завдяки цій технології.
- PPP також використовує процес автентифікації для перевірки відповідальності за використання даних у постачальників послуг Інтернету. Методи включають протокол автентифікації за паролем (PAP) і протокол аутентифікації рукостискання каналу (CHAP).
Інтернет-шар
- Другий шар знизу - рівень Інтернету.
- Після сегментації даних за допомогою TCP або UDP, додавши відповідні заголовки в пакет даних, вони направлять їх на нижній рівень для подальшого зв'язку.
- Цільовий хост, якому призначений пакет даних, може знаходитись в якійсь іншій мережі, шлях якої може бути досягнутий через різні маршрутизатори. Обов'язок рівня Інтернету - призначати логічні адреси та ефективно направляти пакети даних до мережі призначення.
- Інтернет-рівень (IP) - найпопулярніший протокол, який використовується для виконання цього завдання.
Інтернет-протокол
Призначення цього протоколу полягає в маршрутизації пакетів даних до місця призначення відповідно до інформації в заголовку пакета, дотримуючись набору протоколів.
Додаючи заголовок, який має IP-адресу джерела та пункту призначення, сегмент, отриманий від TCP або UDP, перетворюється в PDU, відомий як пакет. Коли пакет надходить до маршрутизатора, він переглядає адресу призначення в заголовку, а потім пересилає пакет відповідно до наступного маршрутизатора, щоб досягти пункту призначення.
Давайте розберемося в цьому на прикладі:
На малюнку нижче, коли хост A хоче спілкуватися з хостом B, він не використовуватиме жодного протоколу маршрутизації, оскільки обидва знаходяться в одному діапазоні мережі з IP-адресами одного набору.
Але якщо хост А хоче надіслати пакет на хост С, то за допомогою протоколу він виявляє, що хост призначення є якоюсь іншою мережею. Таким чином, наведений вище формат буде шукати таблицю маршрутизації, щоб дізнатись про наступну адресу переходу для переходу до пункту призначення.
У цьому випадку хост A досягне хосту C через маршрутизатори A, B і C. Оскільки маршрутизатор C безпосередньо підключений до цільової мережі за допомогою комутатора, пакет доставляється на хост C.
Маршрутизатор отримує всю інформацію про маршрутизацію з полів заголовка IP. Мережевий рівень TCP / IP (рівень каналу передачі даних) буде відповідати за кінцеву доставку пакетів даних.
Потік пакетів в Інтернет-протоколі
Заголовок IPV4
- Версія: IPV4 має номер версії 4.
- Довжина заголовка: Він показує розмір заголовка.
- DS поле: Поле DS означає поле диференційованих послуг і розгортається для побудови пакетів.
- Загальна довжина: Він позначає розмір заголовка плюс розмір пакета даних.
- Ідентифікація: Це поле використовується для фрагментації пакетів даних та для розподілу кожного поля і тим самим допомагає побудувати вихідний пакет даних.
- Прапори: Використовується для позначення процедури дроблення.
- Зсув фрагмента: Він вказує номер фрагмента та хост джерела, який використовує їх для перестановки фрагментованих даних у правильному порядку.
- Час їхати: Це встановлюється на кінці вихідного хосту.
- Протокол: Він позначає протокол, який він використовує для передачі даних. TCP має номер протоколу 6, а UDP має номер протоколу 17.
- Контрольна сума заголовка: Це поле використовується для виявлення помилок.
- ІР-адреса джерела: Він зберігає IP-адресу кінцевого хосту джерела.
- IP-адреса призначення: Він зберігає IP-адресу хоста призначення.
Ми детально обговоримо це в наших майбутніх підручниках.
Транспортний рівень
- Це третій шар знизу, який відповідає за загальну передачу даних і допомагає у встановленні наскрізного логічного зв’язку між хостом джерела та призначення та пристроями в мережі.
- Для виконання цих завдань використовуються два протоколи:
- Перший - це протокол управління передачею (TCP), який є надійним і заснованим на з'єднанні протоколом.
- Другий - користувальницький протокол дейтаграм (UDP), який є протоколом без зв’язку.
- Перш ніж глибоко вивчити ці два протоколи, ми обговоримо концепцію ПОРТ-НОМЕР, яка використовується обома цими протоколами.
Номер порту:
У мережі хост-пристрій може одночасно надсилати або отримувати трафік з кількох джерел.
У такій ситуації система не розпізнає, до якого з додатків належать дані. Протоколи TCP та UDP вирішують ці проблеми, ставлячи номер порту в їх заголовки. Добре відомі протоколи прикладного рівня присвоюються номеру порту в діапазоні від 1 до 1024.
У кінці джерела кожному сеансу TCP або UDP присвоюється випадковий номер порту. IP-адреса, номер порту та тип протоколу, що використовується у поєднанні, реформує сокет як на джерелі, так і на кінці призначення. Оскільки кожен сокет є ексклюзивним, кілька хостів можуть відправляти або отримувати трафік за один і той же проміжок часу.
У таблиці нижче наведено номер порту, який присвоюється декільком протоколам прикладного рівня, що відповідають протоколу транспортного рівня.
Протокол застосування | Транспортний протокол | Номер порту |
---|---|---|
DNS | TCP, UDP | 53 |
HTTP | TCP | 80 |
HTTPS | TCP | 443 |
FTP (контроль) | TCP | двадцять один |
FTP (дані) | TCP | двадцять |
SSH | TCP | 22 |
Телнет | TCP | 2. 3 |
SMTP | TCP | 25 |
TFTP | UDP | 69 |
Кілька сеансів з використанням номера порту
TCP
- Кожного разу, коли рівню додатків потрібно циркулювати потік величезного трафіку або даних, він надсилає його транспортному рівню, в якому TCP виконує весь наскрізний зв'язок між мережами.
- Спочатку TCP налаштовує тристоронній процес рукостискання між джерелом і призначенням, а потім розбиває дані на невеликі фрагменти, відомі як сегменти, і включає заголовок у кожен сегмент, а потім пересилає його на рівень Інтернету.
На малюнку нижче показано формат заголовка TCP.
- Тристороннє рукостискання: Це процес, розгорнутий TCP для встановлення зв'язку між джерелом та хостом призначення в мережі. Застосовується для надійної передачі даних. Він розгортає прапори SYN та ACK кодових бітів заголовка TCP для виконання завдання. Він забезпечує надійний зв'язок шляхом позитивного підтвердження з повторною передачею, а також відомий як PAR. Система, що використовує PAR, буде повторно передавати сегмент даних, поки не отримає ACK. Кожного разу, коли приймач відкидає дані, відправник повинен повторно передавати дані, поки не отримає позитивний ACK від приймача.
Є три етапи тристороннього рукостискання, які є такими:
- Крок 1: Хост-джерело A хоче встановити з'єднання з хостом-місцем призначення B, він передає сегмент із SYN та порядковим номером, що означає, що хост A хоче ініціювати сеанс зв'язку з хостом B і з яким порядковим номером він визначений у цьому сегменті.
- Крок 2: Хост B відповідає на запит хоста A за допомогою SYN та ACK, встановлених у біті сигналу. ACK позначає відповідь отриманого сегмента, а SYN - порядковий номер.
- Крок 3: Хост A підтверджує відповідь хосту B і обидва встановлюють між собою безпечний зв’язок, а потім починають передачу даних по ньому.
Як описано на малюнку нижче, під час тристороннього процесу рукостискання спочатку хост-джерело надсилає TCP-заголовок цільовому хосту, встановлюючи прапор SYN. У відповідь він повертає встановлений прапор SYN та підтвердження. Цільовий хост практикує отриманий порядковий номер плюс 1 як номер підтвердження.
TCP IP підтримує модель клієнт-сервер системи зв'язку.
Тристоронній процес рукостискання
- Сегментація даних :
- Це одна з особливостей протоколу TCP. Рівень програми надсилає величезну кількість даних для передачі до місця призначення транспортному рівню. Але транспортний рівень обмежує обсяг даних, що надсилаються за один раз. Це робиться шляхом розподілу даних на невеликі сегменти.
- Для розпізнавання послідовності сегментів даних у заголовку TCP використовується номер послідовності, який описує номер байта всього сегмента даних.
- Управління потоком:
- Хост-джерело надсилатиме дані в кластері сегментів. Заголовок TCP, що має біт вікна, використовується для з'ясування кількості сегментів, які можуть бути надіслані за один приклад часу. Він використовується для уникнення незначного руху в кінці пункту призначення.
- Коли сеанс розпочато, розмір вікна є незначним, але в міру збільшення трафіку з часом розмір вікна може стати величезним. Хост призначення може налаштувати вікно відповідно до управління потоком. Таким чином вікно називається розсувним.
- Джерело може передавати лише кількість сегментів, дозволених вікном. Для того, щоб надіслати більше сегментів, спочатку він буде чекати підтвердження від приймаючого кінця, як тільки отримає ACK, а пізніше він може збільшити розмір вікна відповідно до своїх потреб.
- На малюнку нижче пристрій призначення збільшує розмір з 500 до 600, а потім до 800 після надсилання ACK назад вихідному хосту.
- Надійна доставка та відновлення помилок :
- Після того, як останній сегмент визначеного вікна отримає адресат, він повинен надіслати ACK до кінця джерела. Прапор ACK встановлюється в заголовку TCP, а номер ACK ставиться як порядковий номер наступного байта. Якщо адресат не отримує сегменти у належному порядку, тоді він не передаватиме ACK назад до джерела.
- Це пояснює джерело, що мало хто з сегментів втрачає місце під час передачі, і він повторно передасть усі сегменти.
- На малюнку нижче показано, що коли джерело не отримало ACK для сегмента з SEQ номером 200, воно повторно передає дані, а після отримання ACK надсилає наступну послідовність сегмента даних у відповідно до розміру вікна.
- Замовлена доставка :
- TCP забезпечує послідовну доставку даних до місця призначення. Він доставляє дані в тому порядку, в якому отримує їх із рівня додатків для доставки на кінцевий хост. Таким чином, для підтримки замовленої доставки він використовує порядковий номер під час передачі сегментів даних.
- Припинення з'єднання :
- Коли передача даних між джерелом і пунктом призначення завершиться, TCP завершить сеанс, надіславши прапори FIN та ACK, і використовує чотиристороннє рукостискання, щоб закрити його.
Розсувне вікно TCP та надійна доставка
Протокол датаграм користувачів (UDP):
Це ненадійний і без з’єднання протокол передачі даних. У цьому протоколі, на відміну від TCP, він не генерує жодного прапора ACK, отже, вихідний хост не буде чекати відповіді від кінцевого пункту призначення, і він буде передавати дані без будь-яких затримок і чекати ACK.
У сценарії реального часу використовується UDP, оскільки скидання пакетів даних вибирається замість очікування пакетів для повторної передачі. Таким чином, він найбільш широко використовується в іграх, перегляді відео в Інтернеті, чаті тощо, де підтвердження даних не є проблемою. У цих сценаріях перевірка та виправлення помилок відбувається на рівні програми.
Заголовок UDP:
- Порт джерела: Він класифікує інформацію про кінцевий пакет джерела розміром 16 біт.
- Порт призначення : Він також має розмір 16 біт і використовується для класифікації типу служби передачі даних у вузлі призначення.
- Довжина : Вказує загальний розмір дейтаграми UDP. Максимальний розмір поля довжини може бути загальним розміром самого заголовка UDP.
- Контрольна сума : Зберігає значення контрольної суми, обчислене кінцем джерела перед передачею. Якщо він не містить жодного значення, тоді всі його біти встановлюються в нуль.
Програми UDP :
- Він надає дейтаграму, тому він підходить для тунелювання IP та мережевої файлової системи.
- Простий у використанні, отже, він використовується в DHCP та тривіальному протоколі передачі файлів.
- Будучи без громадянства, це робить його ефективним для потокових медіа-програм, таких як IPTV.
- Також підходить для передачі голосу через IP та потокових програм у режимі реального часу.
- Він підтримує багатоадресну передачу, тому він підходить для трансляційних послуг, таких як Bluetooth та інформаційний протокол маршрутизації.
Шар додатків
(i) Це верхній рівень моделі TCP / IP.
(ii) Він виконує всі завдання сесійного рівня, рівня презентації та рівня додатків моделі TCP / IP.
(iii) Він поєднує в собі функції взаємодії з різними програмами, кодування даних, перекладу даних та доступу користувачів для спілкування з різними мережевими системами.
Найпоширеніші протоколи рівня додатків визначені нижче:
# 1) TELNET: Це означає протокол емуляції терміналу. Як правило, це практика доступу до віддалених кінцевих програм. Сервер telnet, який діє як хост, ініціює додаток сервера telnet для встановлення з'єднання з віддаленим кінцевим хостом, відомим як клієнт telnet.
Після встановлення з'єднання воно представляється в ОС сервера telnet. Люди на сервері використовують його клавіатуру та мишу для роботи та доступу до віддаленого хосту через TELNET.
# 2) HTTP: Це означає протокол передачі гіпертексту. Це основа Всесвітньої павутини (WWW). Цей протокол використовується для обміну гіпертекстом між різними системами. Це тип протоколу запит-відповідь.
Наприклад, Веб-браузер, такий як Internet Explorer або Mozilla, виступає в ролі веб-клієнта, а потокове передавання програм на ПК, що розміщує веб-сайт, буде виконувати функції веб-сервера.
Таким чином, сервер, який надає такі ресурси, як HTML-файли та інші функції, запитувані клієнтом, повертає клієнту відповідне повідомлення, яке містить вміст даних про стан завершення та запитаних даних у рядку повідомлення.
Ресурси HTTP розпізнаються і розміщуються в мережі за допомогою уніфікованих локаторів ресурсів (URL-адрес), що розгортають методи уніфікованих ідентифікаторів ресурсів (URI) HTTP та https.
# 3) FTP: Це означає протокол передачі файлів. Він використовується для спільного використання або передачі файлів між двома хостами. Хост, який запускає FTP-програму, поводиться як FTP-сервер, тоді як інший поводиться як FTP-клієнт.
Клієнтський хост, що запитує спільний доступ до файлів, вимагає аутентифікації з сервера для доступу до даних. Після авторизації він може отримувати доступ до будь-якого типу файлів із сервера, надсилати або отримувати файли.
# 4) SMTP: Простий протокол перевезення пошти - це вправа надсилати електронні листи. Коли ми налаштовуємо хост для надсилання електронних листів, ми використовуємо SMTP.
# 5) DNS: Кожен із хост-пристроїв будь-якої мережі має унікальну логічну адресу, яка називається IP-адреса. Як вже обговорювалося, IP-адреси - це група з такою кількістю цифр, яку запам’ятати непросто. Коли ми вводимо будь-яку веб-адресу у веб-браузері, наприклад Google.com, ми фактично запитуємо хост, який має IP-адресу.
Але нам не потрібно запам’ятовувати IP-адресу веб-сторінки, яку ми запитуємо, оскільки DNS (сервер доменних імен) відображає ім’я до кожної логічної IP-адреси та зберігає його.
що таке хороший безкоштовний брандмауер для Windows 7 64-bit?
Таким чином, коли ми вводимо в браузері будь-яку веб-сторінку, тоді він надсилає DNS-запит своєму DNS-серверу, щоб зіставити IP-адресу з іменем. Після отримання адреси сеанс HTTP будується з IP-адресою.
# 6) DHCP: Кожному з хост-пристроїв у будь-якій мережі потрібна IP-адреса для зв'язку з іншими пристроями в мережі. Цю адресу він отримує шляхом ручного налаштування або за допомогою протоколу динамічної конфігурації хоста (DHCP). Якщо використовується DHCP, тоді хосту буде автоматично присвоєна IP-адреса.
Припустимо, мережа складається з 10000 хост-пристроїв. Тоді розподілити IP-адресу вручну кожному хосту дуже складно, і це теж вимагає часу, тому ми використовуємо протокол DHCP для призначення IP-адреси та іншої інформації підключеним хост-пристроям, таким як IP маски підмережі або IP шлюзу.
Програми тестування програмного забезпечення працюватимуть на цьому рівні моделі TCP / IP, оскільки вона надає кінцевим споживачам можливість тестувати різні послуги та користуватися цими послугами.
Висновок
Ми бачили різні протоколи, які використовуються на кожному рівні моделі TCP / IP для виконання завдань, пов’язаних із цим рівнем, та їх переваг у системі зв'язку.
Усі вищезазначені протоколи мають своє значення та різні ролі при тестуванні та застосуванні програмних засобів.
НАЗАД Підручник | НАСТУПНИЙ підручник
Рекомендована література
- Все про комутатори рівня 2 та рівня 3 у мережевій системі
- Повне керівництво по брандмауеру: Як побудувати безпечну мережеву систему
- Все про маршрутизатори: типи маршрутизаторів, таблиця маршрутизації та IP-маршрутизація
- Що таке широкосмугова мережа (WAN): приклади мережі WAN у реальному часі
- Що таке протоколи HTTP (протокол передачі гіпертексту) та DHCP?
- Важливі протоколи рівня додатків: протоколи DNS, FTP, SMTP та MIME
- IPv4 проти IPv6: в чому точна різниця
- Що таке моя IP-адреса та місцезнаходження (перевірте справжню IP-адресу тут)