Стандарт Ethernet следует считать средством обеспечения соединения между абонентами сети, относящимся к канальному уровню (link-level layer). Поэтому имеет смысл рассматривать передаваемые по сети данные как состоящие из фреймов1 (frame), или кадров. Фреймы Ethernet имеют переменную длину, однако их размер не может быть меньше 64 октетов2 и превышать 1518 октетов (с учетом преамбулы фрейма, передаваемых данных и кодов циклической проверки CRC). Как и в любой другой сети с коммутацией пакетов, в каждом фрейме Ethernet предусмотрено специальное поле для адреса получателя. Помимо адреса получателя, фрейм Ethernet содержит также физический адрес отправителя (рис. 2.4).
Таким образом, кроме полей адреса отправителя и получателя, в каждый передаваемый по сети Ethernet фрейм добавляется преамбула, поле типа, поле данных и код циклического избыточного контроля (Cyclic Redundancy Check, или CRC). Преамбула состоит из 64-битовой последовательности нулей и единиц и предназначена для облегчения синхронизации принимающей сетевой платы. Поле CRC (его размер 32 бита) служит для обнаружения ошибок при передаче данных на приемном конце. При этом отправитель вычисляет код циклического избыточного контроля как функцию от данных, находящихся во фрейме, и помещает их в передаваемый пакет. Получатель снова вычисляет код CRC и сравнивает его с находящимся во фрейме. Если коды совпадают, принимающая сторона считает, что пакет получен без искажений.
Поле типа состоит из 16-битового целого числа, которое предназначено для идентификации типа данных, передаваемых во фрейме. С точки зрения построения процесса межсетевого взаимодействия поле типа очень важно, поскольку оно позволяет автоматически распознавать фреймы Ethernet. Другими словами, операционная система на основе поля типа полученного фрейма определяет программный модуль протокола, который должен обработать поступивший пакет данных.
Одно из ключевых преимуществ автоматического распознавания фреймов заключается в том, что на одной и той же машине можно использовать несколько различных протоколов, а также передавать по физической сети пакеты данных разных протоколов без их взаимного влияния. Благодаря полю типа на одном и том же компьютере могут свободно сосуществовать приложения, использующие как семейство протоколов TCP/IP, так и любые другие протоколы, например те, что только разрабатываются и находятся на стадии тестирования. Таким образом, операционная система анализирует поле типа каждого полученного фрейма и определяет, как должно обрабатываться его содержимое. Ниже мы увидим, как автоматически опознаваемые фреймы Ethernet используются в семействе протоколов TCP/IP для выделения пакетов разных протоколов.
1. Термин фрейм (кадр) взят из терминологии, использовавшейся для описания процесса передачи данных по последовательному каналу связи. При этом отправитель разделял данные на фрагменты (фреймы) и перед передачей фрейма помещал до и после него специальные коды.
2. Формально для описания размера символа, зависящего от применяемого оборудования, используется термин байт. Однако в телекоммуникации используется другой термин — октет, который, в отличие от байта, не зависит от применяемого оборудования и всегда состоит из 8 бит.
Адресация оборудования в сетях Ethernet | Проверка знаний: Сеть Ethernet |