Чи однакові розміри сегментів, пакетів і кадрів, якщо ми ігноруємо заголовки?


12

Я шукав пояснення щодо відмінностей між сегментами, пакетами та кадрами та з того, що я прочитав:

  • Сегмент - це вихідні дані + заголовок транспортного шару.
  • Пакет - це заголовок сегмента + мережевий шар.
  • Frame - це заголовок шару шару даних +.

В основному це означає, що якщо ми відкладемо заголовки в сторону, сегменти = пакети = кадри.

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

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

Чи справді одне і те ж - сегменти, пакети та кадри, за винятком заголовків, які кожен із них містить? Чи всі вони однакового розміру?


1
"заповнення" або кількість даних можуть бути різними. Подивіться на "алгоритм Nagle", реалізований у ряді мережевих стеків: en.wikipedia.org/wiki/Nagle's_algorithm
Florenz Kley

Відповіді:


16

введіть тут опис зображення

Кожен шар має свій заголовок, як ви бачите:

  • Сегменти: Транспортний рівень (TCP / UDP) = транспортний заголовок + дані (з верхнього рівня)
  • Пакет: Інтернет-рівень (IP) = мережевий заголовок + транспортний заголовок і дані (як транспорт, так і дані з верхніх шарів)
  • Кадри: Мережевий рівень (Ethernet) = заголовок кадру + мережа, транспортний заголовок та дані (з трьох верхніх шарів).

Отже, щоб відповісти на ваше запитання, різниця між сегментом, пакетом і кадрами - це в основному те, що його відповідний шар розглядають як "дані". На сегменті дані надходять із рівня додатків; на пакеті дані надходять із транспортного рівня (транспортний заголовок + дані); а на кадрі дані надходять із рівня Інтернет (транспортні та Інтернет-заголовки + дані з додаткового рівня).


1
А як щодо того, як дані в кінцевому рахунку передаються через фізичний шар? Якщо не всі дані передаються одразу, то як працює розбиття? Чи відбувається це одночасно на шарах мережевих і посилальних даних (і ними обробляється транспортний шар)? Чи можете ви детальніше розкрити цей процес у своїй відповіді?
amiregelz

Діого є правильним, але є також деякі міркування, які можуть вводити в оману. Незважаючи на те, що ви можете надсилати 100 байт даних, пакет все ще займає повний MTU (як правило, ~ 1500 байт) на дроті. Суть полягає в тому, що якщо ви надсилаєте купу мініатюрних пакетів, ви ніколи не отримаєте максимально можливу пропускну здатність для мережевого зв’язку. Деякі капсульовані тунелі можуть зменшити / мінімізувати ці відходи ... але це інша тема.
TheCompWiz

@Diogo Чи можете ви відредагувати свою відповідь відповідно до мого коментаря? Дякую.
amiregelz

0

Чи справді одне і те ж - сегменти, пакети та кадри, за винятком заголовків, які кожен із них містить?

http://www.inetdaemon.com/tutorials/basic_concepts/communication/frames_packets_n_pdus.shtml

Чи всі вони однакового розміру?

Якщо ви думаєте про шари як про єдині сутності, то ні; всі вони мають різні максимальні та мінімальні розміри. Мислення про них по відношенню один до одного; нижній шар диктує, який максимальний розмір даних, який він може передавати з шару вгорі.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.