logo
Лекції в

11.3 Структури рамок Ethernet.

Проте на практиці в мережах Ethernet на канальному рівні використовуються  кадри 4-х різних форматів (типів). Це пов'язано з тривалою історією розвитку технології Ethernet, що нараховує період існування до прийняття стандартів IEEE 802, коли підрівень LLC не виділявся з загального протоколу і, відповідно, заголовок LLC не застосовувався.

Консорціум трьох фірм Digital, Intel і Xerox у 1980 році подав на розгляд комітету 802.3 свою фірмову версію стандарту Ethernet (у який був, природно, описаний визначений формат кадру) як проект міжнародного стандарту, але комітет 802.3 прийняв стандарт, що відрізняється в деяких деталях від пропозиції DIX. Відмінності стосувалися і формату кадру, що породило існування двох різних типів кадрів у мережах Ethernet.

Ще один формат кадру з'явився в результаті зусиль компанії Novell по прискоренню роботи свого стека протоколів у мережах Ethernet.

І нарешті, четвертий формат кадру став результатом діяльності комітету 802.2 по приведенню попередніх форматів кадрів до деякого загального стандарту.

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

Нижче наводиться опис усіх чотирьох типів кадрів Ethernet (тут під кадром розуміється весь набір полів, що відносяться до канального рівня, тобто поля MAC і LLC рівнів). Той самий тип кадру може мати різні назви, тому нижче для кожного типу кадру приведене по декілька найбільш вживаних назв:

Формати всіх цих чотирьох типів кадрів Ethernet приведені на рисунку нижче.

Границі байтів (октетів)

1

2

3

4

5

6

7

8

Преамбула/початковий обмежувач рамки (8)

Адреса призначення (6)

Адреса джерела (6)

Поле рамки

14

Тип рамки (2)

Дані

(46...1500)

.

.

.

Поле даних

46... 1500

Доповнення (якщо потрібно)

Контрольна послідовність (4)

Поле рамки

 4

Повна довжина рамки

64... 1518

Рис. 11.3.1. Рамка в стандарті Ethernet II.

11.3.1 Рамка в стандарті Ethernet II. Стандарт Ethernet II є попередником стандарту 802.3. Цей тип рамки, опрацьований DIX, забезпечує той самий метод доступу CSMA/CD, що й 802.3 (рис.11.3.1). Щоб дозволити всім станціям у мережі зсинхронізувати свої тактові генератори трансіверів для забезпечення передавальній станції можливості виявлення сигналів інших станцій, застосовується 7-октетна преамбула і 1-байтовий початковий обмежувач рамки (рис. 11.3.2). 7-байтова преамбула і 1-байтовий початковий обмежувач гарантують, що станція, що передає, може виявити інше передавання (або сигнал глушіння, який сигналізує про колізію) незалежно від того, як далеко в сегменті розташована інша станція, що створила колізію. Преамбулу/початковий обмежувач звичайно розглядають як частину апаратно-програмного забезпечення передавання даних через кабельну систему, а не як частину власне рамки.

Преамбула/початковий обмежувач рамки (8)

Преамбула (7) 10101010...

Початковий обмежувач (1) 10101011

Рис. 11.3.2 . Преамбула/початковий обмежувач рамки.

Безпосередньо за преамбулою та початковим обмежувачем розташовані 6-октетні поля адрес станції-призначення і станції-джерела та 2-октетне поле типу рамки. Разом ці три поля утворюють заголовок рамки Ethernet II. При передаванні кожного байта адресного поля біти передаються справа наліво, тобто першим передається наймолодший (перший справа) біт. Для адреси призначення перший біт, що передається (I/G), вказує, чи адреса відноситься до конкретної станції, чи є багатоадресною. Якщо перший байт адреси призначення непарний, то то рамка призначена групі станцій, а не одній унікальній фізичній адресі. Спеціальним випадком багатоадресності є широкомовна адреса, для якої всі біти адресного поля встановлені в "1". Як вказано вище, для індивідуальної адреси перші три байти ідентифікують виробника мережевої карти, а останні три - конкретну мережеву карту. Адреса призначення ідентифікує безпосереднього приймача в мережі, а не обов'язково остаточного приймача. Структура поля адреси призначення має такий вигляд:

Біти

1

2

3

4

...

47

48

Значення

I/G

S

S

S

S

S

S

Перший біт (I/G - individual/group) може приймати такі значення: 0 - одноадресна рамка, 1 - багато- або загальноадресна (широкомовна) рамка. Решта бітів першого байта та решта байтів цього поля (S) вказують адресу групи вузлів (перші три байти) і локальну адресу в групі (другі три байти). Для загальноадресних пакетів усі біти рівні 1. Адреса джерела ідентифікує вузол, який передав пакет. Найстарший біт першого байта (I/G) завжди рівний 0.

Поле Тип рамки ідентифікує протокол вищого рівня, застосований для створення пакету, інкапсульованого в рамку Ethernet II. Це можуть бути протоколи TCP/IP, XNS, AppleTalk тощо. Приклади можливих значень поля Тип рамки (в шістнадцятковому форматі) наведені в таблиці 11.3.1.

Таблиця 11.3.1. Коди протоколів вищого рівня.

Значення

Тип протоколу

0600

XNS

0800

IP

0806

ARP

8035

RARP

809B

AppleTalk

80F3

AppleTalk ARP

8137

IPX/SPX NetWare

Наступне поле містить дані, поміщені в рамку. Це поле може мати довжину до 1500 октетів і включає як заголовок, так і дані протоколу більш високого рівня. Повна довжина рамки Ethernet II лежить в межах від 64 до 1518 октетів. Проте це не означає, що найменша можлива довжина даних становить 64 байти; якщо дані коротші, то вводиться поле Доповнення, заповнене, наприклад, символами проміжку, які додаються для доведення довжини поля даних до 64 октетів.

Останнім полем є Контрольна послідовність рамки (Frame Check Sequence - FCS) - лишок циклічної контрольної суми (Cyclic Redundancy Checksum - CRC) для виявлення помилок при передаванні. Значення лишку циклічної контрольної суми обчислюється для всьго вмісту рамки (без преамбули/початкового обмежувача) з використанням алгоритму CRC-32. Станція, яка прийняла рамку, здіснює власне обчислення лишку циклічної контрольної суми за тим самим алгоритмом і порівнює отримане значення із вмістом вказаного поля. Якщо результати відрізняються, то пакет вважається помилковим і відкидається.