Evgenii Legotckoi
Evgenii Legotckoi20 липня 2015 р. 02:38

Архітектура мереж передачі даних

Декомпозиція задачі мережевої взаємодії

Архітектура мережі - це уявлення мережі у вигляді системи взаємозалежних елементів, кожний у тому числі покладено певна приватна функція.

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

Декомпозиція завдання - розбиття однієї складної задачі на кілька простих.


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

Багаторівневий підхід

Ще ефективнішою концепцією, що розвиває ідею декомпозиції, є багаторівневий підхід.

Багаторівневий підхід При багаторівневому підході після того, як завдання розбито на окремі блоки та модулі, роблять упорядкування даних блоків та модулів за рівнями.

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

Взаємодія між рівнями відбувається через міжрівневий інтерфейс, також іменується інтерфейсом послуг, який визначає набір функцій, який рівень надає нижчележачому.

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

Протокол і стек протоколів

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

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

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

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

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

Рекомендуємо хостинг TIMEWEB
Рекомендуємо хостинг TIMEWEB
Стабільний хостинг, на якому розміщується соціальна мережа EVILEG. Для проектів на Django радимо VDS хостинг.

Вам це подобається? Поділіться в соціальних мережах!

Коментарі

Only authorized users can post comments.
Please, Log in or Sign up
AD

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:50бали,
  • Рейтинг балів-4
m
  • molni99
  • 26 жовтня 2024 р. 01:37

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:80бали,
  • Рейтинг балів4
m
  • molni99
  • 26 жовтня 2024 р. 01:29

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:20бали,
  • Рейтинг балів-10
Останні коментарі
ИМ
Игорь Максимов22 листопада 2024 р. 11:51
Django - Підручник 017. Налаштуйте сторінку входу до Django Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
Evgenii Legotckoi
Evgenii Legotckoi31 жовтня 2024 р. 14:37
Django - Урок 064. Як написати розширення для Python Markdown Добрый день. Да, можно. Либо через такие же плагины, либо с постобработкой через python библиотеку Beautiful Soup
A
ALO1ZE19 жовтня 2024 р. 08:19
Читалка файлів fb3 на Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Игорь Максимов05 жовтня 2024 р. 07:51
Django - Урок 064. Як написати розширення для Python Markdown Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
d
dblas505 липня 2024 р. 11:02
QML - Урок 016. База даних SQLite та робота з нею в QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
Тепер обговоріть на форумі
Evgenii Legotckoi
Evgenii Legotckoi24 червня 2024 р. 15:11
добавить qlineseries в функции Я тут. Работы оень много. Отправил его в бан.
t
tonypeachey115 листопада 2024 р. 06:04
google domain [url=https://google.com/]domain[/url] domain [http://www.example.com link title]
NSProject
NSProject04 червня 2022 р. 03:49
Всё ещё разбираюсь с кешем. В следствии прочтения данной статьи. Я принял для себя решение сделать кеширование свойств менеджера модели LikeDislike. И так как установка evileg_core для меня не была возможна, ибо он писался…
9
9Anonim25 жовтня 2024 р. 09:10
Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…

Слідкуйте за нами в соціальних мережах