Skip to main content

Що таке demultiplexing?

Demultiplexing (демультиплексування) - це процес на транспортному рівні, при якому вхідні дані з мережі розподіляються по потрібних застосунках.

Простіше і доступно: demultiplexing - це коли ОС розуміє, якому застосунку віддати отримані дані.


Навіщо потрібен demultiplexing

Коли пакет приходить на комп'ютер:

  • він приходить на одну IP-адресу
  • через один мережевий інтерфейс

Але застосунків багато. Demultiplexing вирішує завдання:

якій програмі передати ці дані


Як працює demultiplexing

1. Приходить сегмент/датаграма

Транспортний рівень отримує дані з мережі.


2. Аналізуються поля заголовка

ОС дивиться:

  • протокол (TCP або UDP)
  • порт призначення
  • (для TCP - також IP-адреси і порт джерела)

3. Дані передаються потрібному сокету

На основі цієї інформації:

  • обирається socket
  • дані передаються конкретному процесу

Demultiplexing у TCP і UDP

UDP

  • вибір робиться переважно за:
    • портом призначення
    • протоколом
  • один сокет може отримувати повідомлення від різних відправників

TCP

  • з'єднання визначається точною парою:

    (IP джерела, порт джерела, IP призначення, порт призначення)
  • це дозволяє серверу:

    • обслуговувати тисячі клієнтів
    • на тому самому порту

Зв'язок з multiplexing

Важливо для співбесіди.

  • Multiplexing - об'єднання даних від різних застосунків при відправленні
  • Demultiplexing - розбір вхідних даних і доставка їх потрібним застосункам

Це дві сторони одного механізму.


Що важливо пам'ятати

  • demultiplexing - функція транспортного рівня
  • заснований на портах і сокетах
  • без нього паралельна робота застосунків була б неможливою

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.