В сетях Ethernet могут применяться кадры четырех форматов:
- Ethernet II (Ethernet DIX);
- Ethernet 802.2;
- Ethernet 802.3;
- Ethernet SNAP.
На Рис. 1. приведены форматы кадров Ethernet (первая строка - обозначение полей, вторая строка - размеры полей в байтах).
Кадр Ethernet II |
P |
DA |
SA |
Type |
Data |
FCS |
8 |
6 |
6 |
2 |
46-1500 |
4 |
|
Кадр Ethernet 802.2/LLC |
P |
SFD |
DA |
SA |
Length |
DSAP |
SSAP |
Control |
Data |
FCS |
7 |
1 |
6 |
6 |
2 |
1 |
1 |
1/2 |
43/42-1497/1496 |
4 |
|
Кадр Ethernet 802.3 (“Raw”) |
P |
SFD |
DA |
SA |
Length |
Data |
FCS |
7 |
1 |
6 |
6 |
2 |
46-1500 |
4 |
|
Кадр Ethernet SNAP |
P |
SFD |
DA |
SA |
Length |
DSAP
(0xAA) |
SSAP
(0xAA) |
Control
(0x03) |
PROTID |
Data |
FCS |
7 |
1 |
6 |
6 |
2 |
1 |
1 |
1 |
5 |
38-1492 |
4 |
Рис. 1 Форматы кадров Ethernet
- Поле P (Preamble, преамбула) состоит из семи байт 10101010 и используется для синхронизации. Преамбула кадра Ethernet II содержит также полет SFD;
- Поле SFD (Start of Frame Delimiter, разделитель начала кадра) имеет значение 10101011 и указывает на то, что следующий байт принадлежит заглавию кадра.
- Поле DA (Destination Address, адрес назначения) содержит адрес одного из трех типов:
3.1 индивидуальный (unicast) адрес – первый бит старшего байта равняется 0, указывает на единственного получателя (являет собой его MAC-адресу); уникальность адресов обеспечивают производители сетевого оборудования: во втором и третьем байте сохраняется номер фирмы-изготовителя, а другие заполняются изготовителем; некоторые сетевые адаптеры позволяют устанавливать для них произвольный MAC-адресу;
3.2 широковещательный (broadcast) адрес – состоит из всех единиц (0xFFFFFFFFFFFF), указывает на то, что данный кадр должен быть получен всеми узлами сети;
3.3
групповой (multicast) адрес – первый бит старшего байта равняется 1, в других битах сохраняется номер группы узлов, для которых назначенный дан кадр.
- Поле SA(Source Address, адрес источника) содержит MAC-адресу отправителя кадра (всегда индивидуальный адрес);
- Поле Type (тип) указывает на протокол верхнего уровня, чьи данные передаются в кадре (фактически, выполняет функции полей DSAP и SSAP из заглавия кадра LLC);
- Поле Length (длина) содержит размер поля Data (в байтах);
- Поле Data (данные) содержит данные, переданные протоколом верхнего уровня;
- Поле FCS (Frame Check Sequence, контрольная последовательность кадра) содержит контрольную сумму кадра, вычисленную по алгоритму CRC-32;
- Поля DSAP, SSAP и Control составляют заглавие LLC-кадру.
- Поле PROTID (идентификатор протокола) позволяет использовать кадры Ethernet для передачи данных больше широкого множества протоколов верхнего уровня. Это поле состоит из двух подполей: трехбайтового OUI (Organizationally Unique Identifier, организационно уникальный идентификатор), что хранит номер организации, которая контролирует кодов протоколов во втором (двухбайтовому) подполе Type (тип). IEEE присвоен OUI = 0x00000.