Ethernet фреймы
Обрамления Ethernet находятся на уровне Data Link модели OSI 7 Layer. Это базовый сетевой блок современных IP-сетей. Поскольку система вытягивает данные из физического провода, Ethernet Frame является первым слоем, который должен быть удален или обезглавлен перед считыванием информации.
Ethernet-фрейм
| 8 Bytes |
1 Byte |
6 Bytes |
6 Bytes |
4 Bytes |
2 Bytes |
9000 Bytes (Jumbo Frames) |
4 Bytes |
| Preamble |
SFD (Start Frame Delimeter) |
Destination Address |
Source Address |
VLAN TAG |
Type / Length |
DATA |
Frame Check Sequence (CRC) |
IPv4 и IPv6
IPv4 и IPv6 находятся на сетевом уровне модели OSI 7 Layer. Они обеспечивают адресацию систем для связи за пределами локальной подсети. После того, как система обезглавила Ethernet Frame, система оценивает представленную информацию IP. IPv4 был создан в 1981 году как часть IETF RFC 7911983Однако по мере роста Интернета стало очевидно, что общественное пространство IPv4 будет полностью поглощено, что привело к созданию IPv6. Адресное пространство IPv4 официально истощено24 сентября 2015 года.IPv6 — это все, что вы можете купитьАРИНамериканский реестр интернет-номеров.АЙНАявляется глобальным организатором интернет-адресного пространства, есть и другие регионы.
Заголовок IPv4
| IPv4 Header (32 bits) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Version |
IHL (header Len) |
Type Of Server (TOS) |
Total Length |
| 4 |
Identification |
IP Flag |
Fragment Offset |
| 8 |
Time To Line (TTL) |
Protocol |
Header Checksum |
| 12 |
Source Address |
| 16 |
Destination Address |
| 20 |
IP Option (Variable Length, Optional, not common) |
Заголовок IPv6
| IPv6 Header (128 bits) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Version |
Traffic Class |
Flow Label |
| 4 |
Payload Length |
Next Header |
Hop Limit |
| 8-20 |
Source Address |
| 24 - 36 |
Destination Address |
Заголовок TCP
TCP является одним из последних уровней инкапсуляции перед входом в операционную систему. Серверы обычно прослушивают определенный порт для функционирования протокола. Например, незашифрованный веб-сервер обычно слушает на TCP-порте 80.
| TCP Header (60 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Source Port # (16 bits) |
Destination Port # (16 bits) |
| 4/td>
| Sequence Number (32 bits) |
| 8 |
Acknowledgement Number (32 bits) |
| 12 |
Header Length (4) |
Reserved (6) |
URG |
ACK |
PSH |
RST |
SYN |
FIN |
Window Size (16 bits) |
| 16 |
TCP Checksum (16 bits) |
Urgent Pointer (16 bit) |
| 20 |
Options (if any, variable length, padded with 0's) |
| 24 |
Actual Data Payload |
Заголовок UDP
UDP находится на том же уровне, что и TCP, поскольку он также является одним из последних уровней инкапсуляции перед входом в операционную систему. Серверы обычно прослушивают определенный порт для функционирования протокола. Например, DHCP-сервер будет указан на UDP-портах 67 и 68 для запроса DHCP.
| UDP Header (8 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Source Port # (16 bits) |
Destination Port # (16 bits) |
| 4 |
Length (16 bits) |
Checksum (16 bits) |
Заголовок ICMP
ICMP находится на том же уровне, что и TCP и UDP, но используется для управления сетью с помощью ARP и ping.
| ICMP Header (8 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Type (8 bits) |
Code (8 bits) |
Checksum (16 bits) |
| 4 |
Other Message Specific Information (32 bits) |
IGMP Header
IGMP находится на том же уровне, что и TCP, UDP и ICMP, но используется для многоадресных коммуникаций. Далее следует заголовок IGMPv1
IGMP Header Версия 1
| IGMP Header Version1 (8 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Version (4 bits) |
Type (4 bits) |
Unused (8 bits) |
Checksum (16 bits) |
| 4 |
Group Address (32 bits) |
IGMP Header Версия 2
| IGMP Header Version2 (8 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Type (8 bits) |
Max Response Time (8 bits) |
Checksum (16 bits) |
| 4 |
Group Address (32 bits) |
Заголовок Internet Protocol Security (IPSEC)
IPSEC - это набор протоколов безопасности, созданный для IP-коммуникаций. Каждый пакет аутентифицируется и шифруется перед передачей.
Заголовок аутентификации IPSEC
| IPSEC Authentication Header(12 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Next Header (8 bits) |
Payload Length (8 bits) |
Reserved (16 bits) |
| 4 |
Security Parameters Index (SPI) (32 bits) |
| 8 |
Sequence Number (32 bits) |
| 16 |
Integrity Check Value (ICV) (32 bits or more as required) |
IPSEC SP Header
| IPSEC Encapsulating Security Payload (ESP) Header |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Security Parameter Index (SPI) (32 bits) |
| 4 |
Sequence Number (32 bits) |
| 8 |
Payload Data (32 bits or more) |
| ... |
Padding (0 - 255 Bytes) |
| ... |
Padding Length (8 Bytes) |
Next Header (8 Bytes) |
Integrity Check Value (ICV) (4 bytes or more) |
Генерированная инкапсуляция маршрутизации (GRE)
GRE - это протокол туннелирования, который инкапсулирует другие данные. Как только данные инкапсулированы, трафик покажется конечному пользователю ссылкой «точка-точка», даже если может быть несколько маршрутизированных соединений, которые пересекает туннель. Может быть полезно передавать один тип сети, такой как гостевой трафик, по другой сети, такой как корпоративная сеть, если шифрование не требуется.
| Generic Routing Encapsulation Header(16 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Checksum Present (1 bits) |
Reserved (12 bits) |
Version Number (3 bits) |
Protocol Type (16 bits) |
| 4 |
Checksum (optional) (16 bits) |
Reserved (optional) (16 bits) |
Generic Routing Encapsulation (GRE) Заголовок: Расширенный
В сентябре 2000 года IETF в RFC2890добавлены расширения к заголовку GRE.
| Generic Routing Encapsulation Header(32 Bytes) |
| Starting Byte |
Byte |
Byte |
Byte |
Byte |
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
| 0 |
Checksum Present (1 bits) |
Key Present (1 bits) |
Sequence Number Present (1 bits) |
Reserved (12 bits) |
Version Number (3 bits) |
Protocol Type (16 bits) |
| 4 |
Checksum (optional) (16 bits) |
Reserved (optional) (16 bits) |
| 8 |
Key (optional) (32 bits) |
| 12 |
Sequence Number (optional) (32 bits) |
Модель OSI 7 уровня
Поскольку эта статья ссылается на модель уровня OSI 7, она включена в качестве приложения для ссылки
Презентация
Заседание
Транспорт
Сеть
Ссылка на данные
Физический