OSI and DoD Network Models

Привіт друзі! Минулого тижня я зачепив тему мереж і сьогодні маю бажання тему розвинути. І почати хочу з моделей мереж – ISO OSI та DoD.

OSI – як ви писали в коментарях до минулого допису і як підказує Вікіпедія, модель не має практичної реалізації, оскільки концепція мереж еволюціонувала швидше, ніж була стандартизована ISO, але про неї часто питають на співбесідах та роблять посилання, пояснюючи мережеву термінологію. Тому для розуміння корисно.
Більш того – модель, як і будь яка абстрактна модель, придумана щоб описати процеси та явища. Якщо зручно 7 рівнів – ок. 10 – вам видніше. Для багатьох, впевнений, модель мережі представлена всього 1 рівнем – прикладним http – сайти в браузері відкриваються, то й добре 😊

DoD (з Вікіпедії) – модель мережевої взаємодії, розроблена Міністерством оборони США. Стек протоколів TCP/IP – практична реалізація моделі. Всього 4 рівні:
1️⃣ Прикладний – відповідає трьом верхнім рівням моделі OSI (прикладному рівню, рівню уявлення і сеансовому рівню). Приклади протоколів – HTTP, FTP, SOAP
2️⃣ Транспортний – відповідає транспортному рівню моделі OSI. Приклади протоколів – TCP та UDP
3️⃣ Міжмережевий – відповідає мережному рівню моделі OSI. Приклади протоколів – IP, ICMP, IGMP
4️⃣ Мережевого доступу – відповідає двом нижнім рівням моделі OSI (фізичному рівню і канальному рівню)

Для кращого розуміння моделі мені подобається представляти її на прикладі пошти 📬:

уявіть собі, що ви пишете паперового листа. Його текст і листівка – те, що може прочитати і зрозуміти інша людина – це представники прикладного рівня. Далі ви ховаєте листа в конверт – представника транспортного рівня (так само як http повідомлення пакуються в tcp пакети). Без сповіщення про отримання – udp, зі сповіщенням – tcp. Далі на конверті ви пишете адресу та індекс відправника та отримувача – атрибути міжмережевого рівня, аналог поштового індексу і адреси – IP адреса. І далі ви кидаєте листа в поштову скриньку і сервіси рівня мережевого доступу займаються його доставкою (пакунок листів – аналог фрейму, листоноші – аналог мережевого кабеля, пошта – роутери провайдера)

Як вам аналогія?

Саме час задатись питанням – навіщо це знати тестувальнику? Краще розуміння технології дає змогу краще тестувати ПЗ, що її використовує!

А також дає розуміння, що абстракції можна використовувати так, як ми захочемо. Наприклад, я зустрічав реалізацію tcp over http – тобто, фактично можна створити дуже повільну версію http, що пакується в tcp, що пакується в http, що пакується в tcp, що відправляється на IP-адресу. Тому що можемо 😎

Пост в телеграмі

23 March 2020
Автор: 
Oleksii Ostapov

Leave a comment

Leave a Reply