Функции канального уровня модели osi

Функции канального уровня модели osi

Каждый из семи уровней определяет перечень услуг, которые он предоставляет смежным уровням, реализуя определенный набор сетевых функций.

· Физический уровень — описывает принципы передачи сигналов, скорость передачи, спецификации каналов связи. Уровень реализуется аппаратными средствами (сетевой адаптер, порт концентратора, сетевой кабель).

5. Канальный уровень (data link layer) — решает две основные задачи – проверяет доступность среды передачи (может быть разделена между несколькими сетевыми узлами), а также обнаруживает и исправляет ошибки, возникающие в процессе передачи.

Канальный уровень часто разбивают на два подуровня:

Уровень управления доступом к среде (Media Access Control, MAC) обеспечивает:

· совместный доступ сетевых адаптеров к физическому уровню,

· определение границ кадров,

· распознавание адресов назначения кадров (эти адреса часто называют физическими, или MAC-адресами).

Уровень управления логической связью (Logical Link Control, LLC) отвечает:

· за установление канала связи,

· за безошибочную посылку и прием сообщений с данными.

3. Сетевой уровень — отвечает за буферизацию и маршрутизацию в сети. Маршрутизация – существенная функция при работе в глобальных сетях (с коммутацией пакетов), когда необходимо определить маршрут передачи пакета, выполнить перевод логических адресов узлов сети в физические.

В ЛВС между любой парой узлов есть прямой путь (маршрут), поэтому основная функция этого уровня сводится к буферизации пакетов.

4. Транспортный уровень — (transport layer) решает задачу надежной передачи сообщений в составной сети с помощью подтверждения доставки и повторной отправки пакетов. Скрывает различия между сетевыми сервисами с установлением соединения и без установления соединения, так что пользователи получают требуемое качество обслуживания независимо от нижележащего сетевого уровня. Этот уровень и все следующие реализуются программно.

5. Сеансовый уровень — (session layer) позволяет запоминать информацию о текущем состоянии сеанса связи и в случае разрыва соединения возобновлять сеанс с этого состояния.

6. Уровень представления

Его функция заключается в преобразовании сообщений, используемых прикладным уровнем, в некоторый общепринятый формат обмена данными между сетевыми компьютерами.

Целью преобразования сообщения является сжатие данных и их защита.

7. Прикладной уровень — (application layer) реализует интерфейс между остальными уровнями модели и пользовательскими приложениями.

Основная идея модели OSI заключается в том, что каждому уровню отводится конкретная роль. Благодаря этому общая задача передачи данных расчленяется на ряд отдельных легко обозримых задач.

Тема 5.2. Протокол

Операционная система управляет ресурсами компьютера, а сетевая операционная система обеспечивает управление аппаратными и программными ресурсами всей сети. Тем не менее, для передачи данных в сети нужен еще один компонент – протокол.

Протокол – это правила и технические процедуры, позволяющие нескольким компьютерам при объединении в сеть общаться друг с другом. Отметим три основных момента, касающихся протоколов:

· Существует множество протоколов. И хотя все они участвуют в реализации связи, каждый протокол имеет:

· выполняет определенные задачи;

· обладает своими преимуществами и ограничениями.

· Функции протокола определяются уровнем, на котором он работает (табл. 5.1).

Уровень Набор правил (протокол)
Прикладной Инициация или прием запроса
Представительский Добавление в сообщение форматирующей, отображающей и шифрующей информации
Сеансовый Добавление информации о трафике – с указанием момента отправки пакета
Транспортный Добавление информации для обработки ошибок
Сетевой Добавление адресов и информации о месте пакета в последовательности передаваемых пакетов
Канальный Добавление информации для проверки ошибок (трейлера пакета) и подготовка данных для передачи по физическому соединению
Физический Передача пакета как потока битов в соответствии с определенным способом доступа

7. Иерархически организованный набор протоколов, достаточный для организации взаимодействия узлов сети, называется стеком протоколов.

Работа протоколов

Протоколы реализуются через заголовки, которые добавляются к пакетам по мере того, как они передаются по уровням. Каждый заголовок связывается с конкретным уровнем и в каждом последующем уровне воспринимается как часть пакета (рис. 5.2).

Рис. 5.2. Формирование, передача и прием пакета

При поступлении пакета в принимающий узел, заголовки соответствующих уровней используются для вызова заданной функции в принимающем узле. При передаче пакета выше этот заголовок изымается. И компьютер-отправитель, и компьютер-получатель должны выполнять каждое действие одинаковым способом с тем, чтобы пришедшие, по сети данные совпали с отправленными.

Основные типы протоколов

Существует несколько стандартных стеков протоколов, разработанных разными фирмами. Протоколы этих стеков выполняют работу, специальную для своего уровня. Однако коммуникационные задачи, которые возложены на сеть, приводят к разделению протоколов на три типа (рис. 5.3): прикладные протоколы; транспортные протоколы и сетевые протоколы.

Прикладной
Представительский
Сеансовый
Транспортный
Сетевой
Канальный
Физический

Рис. 5.3. Основные типы протоколов по уровням модели OSI

Прикладные протоколы работают на верхнем уровне модели OSI и обеспечивают взаимодействие приложений и обмен данными между ними.

Транспортные протоколы поддерживают сеансы связи между компьютерами и гарантируют надежный обмен данными между ними.

Сетевые протоколы обеспечивают услуги связи. Эти протоколы управляют: адресацией, маршрутизацией, проверкой ошибок и запросами на повторную передачу.

Контрольные вопросы:

Сетевая модель OSI?

Уровней модели OSI?

Протокол?

Основные типы протоколов?

Лекция 6. Популярные стеки протоколов: OSI, TCP/IP, IPX/SPX, NetBIOS/SMB. Стандартизация сетей. Требования, предъявляемые к компьютерным сетям.

План:

1. Стандартизация сетей

Популярные стеки протоколов

Требования, предлагаемые к современным вычислительным сетям

4. Контрольные вопросы

Стандартизация сетей

В компьютерных сетях идеологической основой стандартизации является рассмотренная ранее модель взаимодействия открытых систем (OSI).

Открытой может быть названа любая система (компьютер, вычислительная сеть, ОС, программный пакет, другие аппаратные и программные продукты), которая построена в соответствии с открытыми спецификациями.

Под термином «спецификация» в вычислительной технике понимают формализованное описание аппаратных или программных компонентов, способов их функционирования, взаимодействия с другими компонентами, условий эксплуатации, особых характеристик.

Под открытыми спецификациями понимаются опубликованные, общедоступные спецификации, соответствующие стандартам и принятые в результате достижения согласия после всестороннего обсуждения всеми заинтересованными сторонами.

Использование при разработке систем открытых спецификаций позволяет третьим сторонам разрабатывать для этих систем различные аппаратные или программные средства расширения и модификации, а также создавать программно-аппаратные комплексы из продуктов разных производителей.

Модель OSI касается только открытости средств взаимодействия сетевых устройств, связанных в компьютерную сеть.

Преимущества сетей построенных с соблюдением принципов открытости:

· возможность построения сети из аппаратных и программных средств различных производителей, придерживающихся одного и того же стандарта;

· безболезненная замена отдельных компонентов сети другими, более совершенными, что позволяет сети развиваться с минимальными затратами;

· легкость сопряжения одной сети с другой.

Работы по стандартизации вычислительных сетей ведутся большим количеством организаций. В зависимости от статуса организаций различают следующие виды стандартов:

· стандарты отдельных фирм, например, стек протоколов SNA компании IBM или графический интерфейс OPEN LOOK для Unix-систем компании Sun;

· стандарты специальных комитетов и объединений создаются несколькими компаниями, например стандарты технологии ATM, разрабатываемые объединением ATM Forum, или стандарты технологии 100 Мбит Ethernet разрабатываемые союзом Fast Ethernet Alliance;

· национальные стандарты, например стандарт FDDI, является одним из стандартов института ANSI;

· международные стандарты, например модель и стек коммуникационных протоколов Международной организации по стандартизации (ISO).

Некоторые стандарты, непрерывно развиваясь, могут переходить из одной категории в другую.

Утвержденные официальные стандарты Интернета и TCP/IP публикуются в виде документов RFC (Request for Comments – рабочее предложение).

В соответствии с принципом открытости Интернета все документы RFC, в отличие, скажем, от стандартов ISO, находятся в свободном доступе. Список RFC можно найти, в частности, на сайте www.rfc-editor.org.

Популярные стеки протоколов

Важнейшим направлением стандартизации в области вычислительных сетей является стандартизация коммуникационных протоколов. Наиболее известными стеками протоколов являются: OSI, TCP/IP, IPX/SPX, NetBIOS/SMB, DECnet, SNA (не все из них применяются сегодня на практике).

Важно различать модель OSI и стек протоколов OSI. Модель OSI является концептуальной схемой взаимодействия открытых систем, стек OSI представляет собой набор спецификаций конкретных протоколов.

Стек OSI полностью соответствует модели OSI (рис. 6.1).

Рис. 6.1. Стек протоколов OSI

Протоколы стека OSI отличает сложность и неоднозначность спецификаций. Эти свойства явились результатом общей политики разработчиков стека, стремившихся учесть в своих протоколах все многообразие уже существующих и появляющихся технологий.

На физическом и канальном уровнях стек OSI поддерживает протоколы Ethernet, Token Ring, FDDI, а также протоколы LLC, X.25 и ISDN, то есть использует все разработанные вне стека популярные протоколы нижних уровней, как и большинство других стеков.

Сетевой уровень включает сравнительно редко используемые протоколы Connection-oriented Network Protocol (CONP) и Connectionless Network Protocol (CLNP). Как следует из названий, первый из них ориентирован на соединение (connection-oriented), второй — нет (connectionless).

Более популярны протоколы маршрутизации стека OSI: ES-IS (End System — Intermediate System) между конечной и промежуточной системами и IS-IS (Intermediate System — Intermediate System) между промежуточными системами.

Транспортный уровень стека OSI в соответствии с функциями, определенными для него в модели OSI.

Читайте также:  Как запустить программу через wine

Службы прикладного уровня обеспечивают передачу файлов, эмуляцию терминала, службу каталогов и почту. Из них наиболее популярными являются служба каталогов (стандарт Х.500), электронная почта (Х.400), протокол виртуального терминала (VTP), протокол передачи, доступа и управления файлами (FTAM), протокол пересылки и управления работами (JTM).

Стек IPX/SPX является оригинальным стеком протоколов фирмы Novell, разработанным для сетевой ОС NetWare еще в начале 80-х годов. Название стеку дали протоколы сетевого и транспортного уровней — Internetwork Packet Exchange (IPX) и Sequenced Packet Exchange (SPX).

К сетевому уровню этого стека отнесены протоколы маршрутизации RIP и NLSP. А в качестве представителей трех верхних уровней приведены два популярных протокола: протокол удаленного доступа к файлам NetWare Core Protocol (NCP) и протокол объявления о сервисах Service Advertising Protocol (SAP).

Рис. 6.2. Стек протоколов IPX/SPX

Особенности стека IPX/SPX обусловлены ориентацией ранних версий ОС NetWare на работу в локальных сетях небольших размеров, состоящих из персональных компьютеров со скромными ресурсами. Однако в крупных корпоративных сетях они слишком перегружали медленные глобальные связи широковещательными пакетами. Стек IPX/SPX является собственностью фирмы Novell и на его реализацию нужно получать лицензию (то есть открытые спецификации не поддерживались).

Стек NetBIOS/SMB является совместной разработкой компаний IBM и Microsoft (рис. 6.3).

Рис. 6.3. Стек NetBIOS/SMB

Специфические протоколы NetBEUI и SMB задействованы на верхних уровнях стека.

Протокол Network Basic Input/Output System (NetBIOS) появился в 1984 году. В дальнейшем он был заменен на протокол расширенного пользовательского интерфейса NetBEUI (NetBIOS Extended User Interface).

NetBEUI разрабатывался как эффективный протокол, потребляющий немного ресурсов и для не больших сетей (не более 200 рабочих станций). Этот протокол не поддерживает маршрутизация пакетов. Это ограничивает применение только локальными сетями, не разделенными на подсети, и делает невозможным его использование в составных сетях.

Протокол Server Message Block (SMB) поддерживает функции сеансового уровня, уровня представления и прикладного уровня. На основе SMB реализуется файловая служба, а также службы печати и передачи сообщений между приложениями.

Стек TCP/IP был разработан по инициативе Министерства обороны США более 20 лет назад для связи экспериментальной сети ARPAnet с другими сетями как набор общих протоколов для разнородной вычислительной среды. Сегодня этот стек используется для связи компьютеров в Интернете, а также в огромном числе корпоративных сетей.

Соответствие популярных стеков протоколов модели OSI

В большинстве случаев разработчики стеков отдавали предпочтение скорости работы сети в ущерб модульности — ни один стек, кроме стека OSI, не разбит на семь уровней. Т.о. структура стеков протоколов часто не соответствует рекомендуемому моделью OSI разбиению на уровни и по другим причинам.

Рис. 6.4. Соответствие популярных стеков протоколов модели OSI

Требования, предлагаемые к современным вычислительным сетям

Производительность.

Существует несколько основных характеристик производительности сети:

Время реакцииопределяется как интервал времени между возникновением запроса пользователя к какой-либо сетевой службе и получением ответа на этот запрос.

Очевидно, что значение этого показателя зависит от типа службы, к которой обращается пользователь, от того, какой пользователь и к какому серверу обращается, а также от текущего состояния элементов сети – загруженности сегментов, коммутаторов и маршрутизаторов, через которые проходит запрос, загруженность сервера и тому подобное.

Пропускная способностьограничивает объем данных, переданных сетью или ее частью в единицу времени.

Пропускная способность измеряется или в битах в секунду, или в пакетах в секунду. Пропускная способность может быть:

· Мгновенная —отличается от средней тем, что для усреднения выбирается очень маленький промежуток времени – например, 10 мс или 1 с.

· Средняя —вычисляется путем распределения общего объема переданных данных на время их передачи, причем выбирается достаточно длительный промежуток времени – час, день или неделя.

· Максимальная– это наибольшая мгновенная пропускная способность, зафиксированная в течение периода наблюдения.

Задержка передачиопределяется как задержка между моментом поступления пакета на вход какого-либо сетевого устройства или части сети и моментом появления его на выходе этого устройства. Этот параметр производительности по содержанию близок к реакции сети, но отличается тем, что всегда характеризует только сетевые этапы обработки данных, без задержек обработки компьютерами сети.

Пропускная способность и задержки передачи является независимыми параметрами, так что сеть может владеть, например, высокой пропускной способностью, но вносить значительные задержки при передаче каждого пакета.

Надежность и безопасность

Для оценки надежности используется:

Коэффициент готовностиозначает частицу времени, в течение которого система может быть использована. Готовность может быть улучшина путем введения избыточности в структуру системы: ключевые элементы системы должны существовать в нескольких экземплярах, чтобы при отказе одного из них функционирования системы обеспечивали другие.

Другим аспектом общей надежности является безопасность (security), то есть способность системы защитить данные от несанкционированного доступа.

Еще одною характеристикой надежности является отказостойкость (faultwrance). В сетях под отказоустойчивостью понимается способность системы спрятать от пользователя отказ отдельных ее элементов (возможно снижение качества ее работы, но не полная остановка системы).

Основная задача канального уровня — передача кадров (frame) по каналам связи. На этом уровне и определяется, где в потоке бит начало сообщения, где конец.

p, blockquote 1,0,0,0,0 —>

p, blockquote 2,0,0,0,0 —>

На канальном уровне проводится нахождение и корректировка ошибок для некоторых каналов с множественным доступом, где одну и ту же среду передачи данных используют несколько устройств.

p, blockquote 3,0,0,0,0 —>

Дополнительные задачи канального уровня:

p, blockquote 4,0,0,0,0 —>

  1. Адресация — если в канале связи (КС) есть несколько устройств, необходимо определить, к какому именно устройству адресовано передаваемое сообщение;
  2. Согласованный доступ к каналу. Если все гаджеты одновременно начнут передавать информацию, то данные в КС искажаются и не смогут быть приняты.

Работа с кадрами

Физический уровень предназначен для передачи потока бит по КС. А на канальном уровне необходимо передавать не отдельные биты, а целые сообщения. Задача №1 для канального уровня, выделить сообщения из потока бит, которые приходят по среде передачи данных.

p, blockquote 5,0,0,0,0 —>

p, blockquote 6,0,0,0,0 —>

Формирование кадра

Например, есть два ноутбука Хост 1 и Хост 2. И на картинке ниже есть три уровня, сетевой, канальный и физический.

p, blockquote 7,0,0,0,0 —>

p, blockquote 8,0,0,0,0 —>

Канальный уровень получает информацию от сетевого и добавляет к нему заголовок и концевик. И именно это сообщение, выделенное красным, заголовок канального уровня, пакет с сетевого уровня и концевик канального уровня и является фреймом. Такое сообщение отправляется через физический уровень по среде передачи данных и поступает на канальный уровень принимающего уровня.

p, blockquote 9,0,0,0,0 —>

Принимающее устройство читает заголовок и концевик, извлекает пакет сетевого уровня и передает вышестоящему сетевому уровню для последующей обработки.

p, blockquote 10,0,0,0,0 —>

Методы выделения кадров

Чтобы определить, где в потоке бит начинаются и заканчиваются отдельные frame, были придуманы следующие методы:

p, blockquote 11,0,0,0,0 —>

  • Указание количества байт;
  • Вставка байтов (byte stuffing) и битов (bit stuffing);
  • Средства физического уровня.

Указатель количества байт

Наипростейший способ определить, где начинается и заканчивается кадр — добавлять длину этого кадра в начало кадра. Например, на картинке ниже показано 3 кадра выделенных разным цветом. В начале каждого кадра указано количество байт. Синим цветом — 6, желтым — 8, зеленым — 4.

p, blockquote 12,0,1,0,0 —>

p, blockquote 13,0,0,0,0 —>

Этот метод прост в реализации, но есть недостаток, искажение данных при передаче по сети. Например, при передаче первого кадра появилось искажение и вместо длины кадра шесть байт, получатель получил семь байт.

p, blockquote 14,0,0,0,0 —>

p, blockquote 15,0,0,0,0 —>

Получатель посчитает, что семь это длина кадра. Далее идет длина следующего кадра. Здесь она два байта, затем длина следующего кадра семь. Если у нас произошла хоть одна ошибка, то будет нарушена последовательность чтений. Следовательно такой метод на практике не годится к применению.

p, blockquote 16,0,0,0,0 —>

Вставка byte и bit

Чтобы определить начало и конец кадра, в начале и конце каждого кадра используют специальные последовательности байт или бит. Вставка байтов применялась в протоколах BSC компании IBM, в котором отправлялись обычные текстовые символы.

p, blockquote 17,0,0,0,0 —>

Перед передачей каждого фрейма добавлялись байты DLE STX (start of text), а после окончания передачи фрейма DLE ETX (end of text). Проблема может возникнуть в том, что в данных тоже может встретиться точно такая же последовательность.

p, blockquote 18,0,0,0,0 —>

Чтобы отличать последовательность, которая встречается в данных от управляющих символов используются Escape последовательности. В протоколе BSC это тоже последовательность символов DLE (data link escape). Если какая-то последовательность управляющих символов встречается в данных перед ними добавляются escape последовательности DLE, чтобы протокол понимал, что в реальности это данные, а не управляющие символы.

Читайте также:  Как перенести жесткий диск на другой компьютер

p, blockquote 19,0,0,0,0 —>

Вставка битов применяется в более современных протоколах, таких как HDLC и PPP. Здесь перед началом и концом каждого кадра добавляется последовательность бит состоящая из 01111110. Может возникнуть проблема, если в данных встречаются подряд идущие 6 или более единиц. Чтобы решить эту задачу в данные, после каждых пяти последовательно идущих 1 добавляется 0. Затем, как получатель прочитал 5 последовательно идущих 1 и встретил 0, то он, этот 0 игнорирует.

p, blockquote 20,0,0,0,0 —>

Средства физического уровня

Другой вид определения начала и конца кадра, это использование средств физического уровня и он применяется в технологии Ethernet. В первом варианте технологии ethernet использовалась преамбула — это последовательность данных, которая передается перед началом каждого кадра. Она состоит из 8 байт. Первые семь байт состоят из чередующихся 0 и 1: 10101010. Последний байт содержит чередующиеся 0 и 1, кроме двух последних бит в котором две единицы. И именно такая последовательность говорит, что начинается новый кадр.

p, blockquote 21,0,0,0,0 —>

В более старых версиях используется избыточное кодирование, позволяющее определить ошибки, но при этом не все символы являются значащими. В технологии Fast Ethernet применили эту особенность кода и используют символы, которые не применяются для представления данных в качестве сигналов о начале и конце кадра.

p, blockquote 22,0,0,0,0 —>

Перед отправкой каждого кадра передаются символы J (11000) и K (10001), а после окончания отправки кадра передается символ T (01101).

p, blockquote 23,0,0,0,0 —>

Обнаружение и исправление ошибок

Самый простой способ это обнаружить ошибку. Например, с помощью контрольной суммы или какого-либо другого алгоритма. Если у нас технология канального уровня использует обнаружение технических ошибок, то кадр в котором произошла ошибка, просто отбрасывается. Попыток восстановить данные не производится.

p, blockquote 24,1,0,0,0 —>

Более сложный механизм — это исправление ошибок. Чтобы иметь возможность исправить ошибку, нужно добавить к данным дополнительную информацию, с помощью которой мы сможем обнаружить ошибки и восстановить правильные данные. Для этого используются специальные коды исправляющие ошибки.

p, blockquote 25,0,0,0,0 —>

Другой вариант исправление ошибок при передаче данных — это повторная отправка тех кадров в которых произошла ошибка. Он используется совместно с обнаружением ошибок, когда отправитель передает данные получателю, получатель обнаруживает ошибку в данных, но вместо того чтобы исправить ошибку в передаваемых данных, отправитель передает эти данные еще раз.

p, blockquote 26,0,0,0,0 —>

Давайте рассмотрим, как реализуется повторная отправка сообщений. Предположим, что у нас есть отправитель и получатель и отправитель передал получателю некоторое сообщение. Получатель получил это сообщение проверил его на корректность убедился, что данные переданы правильно и после этого передает отправителю подтверждение о получении. Отправитель передает следующее сообщение предположим, что здесь произошла ошибка, получатель эту ошибку обнаружил или сообщение вообще не дошло до получателя, поэтому получатель не может передать подтверждение о получении этого сообщения.

p, blockquote 27,0,0,0,0 —>

p, blockquote 28,0,0,0,0 —>

Отправитель, после того как, отправил сообщение запустил таймер ожидания подтверждения. По истечению времени ожидания подтверждение не пришло, отправитель понял, что при передаче сообщения произошла проблема и нужно повторно передать то же самое сообщение.

p, blockquote 29,0,0,0,0 —>

p, blockquote 30,0,0,0,0 —>

В этот раз сообщение успешно дошло до получателя и он снова передает подтверждение. После этого отправитель может передавать следующий кадр.

p, blockquote 31,0,0,0,0 —>

p, blockquote 32,0,0,0,0 —>

Есть два варианта метода повторной отправки сообщения. Схему которую мы рассмотрели называется с остановкой и ожиданием. Отправитель передает фрейм и останавливается ожидая подтверждение. Следующий кадр передается только после того, как пришло подтверждение о получении предыдущего сообщения. Такой метод используются в технологии канального уровня Wi-Fi.

p, blockquote 33,0,0,0,0 —>

Другой вариант метода повторной отправки это скользящее окно. В этом случае отправитель передает ни одно сообщение, а сразу несколько сообщений и количество сообщений, которые можно передать не дожидаясь подтверждения называется размером окна. Здесь получатель передает подтверждение не для каждого отдельного сообщения, а для последнего полученного сообщения. Такой метод лучше работает на высокоскоростных каналах связи. Сейчас нет технологии канального уровня, которая использует этот метод, но он используется на транспортном уровне в протоколе TCP.

p, blockquote 34,0,0,0,0 —>

У нас есть несколько вариантов, что можно делать с ошибками. Можно их обнаруживать, исправлять с помощью кодов исправления ошибок, либо с помощью повторной доставки сообщений. Также мы можем исправлять и обнаруживать ошибки на канальном уровне, либо на вышестоящих уровнях.

p, blockquote 35,0,0,0,0 —>

Множественный доступ к каналам

Как это лучше делать? Практика показала, что на каналах где ошибки возникают редко, например, если данные передаются по проводам, то на канальном уровне лучше использовать простое обнаружение ошибок. А если ошибки в среде передачи данных происходят часто, например как это происходит в wifi? где используются электромагнитное излучение и много помех, то ошибки эффективнее обнаруживать и исправлять прямо на канальном уровне. Модель взаимодействия открытых систем разрабатывалась, когда на практике использовались только каналы связи “точка-точка” — это были последовательные линии связи, которые объединяли большие компьютеры.

p, blockquote 36,0,0,1,0 —>

Затем появились другие технологии канального уровня, на основе разделяемых каналов связи, когда к одной и той же среде передачи данных подключено несколько устройств. В таких каналах появились новые задачи, которые не были учтены в модели взаимодействия открытых систем, поэтому пришлось поменять эту модель и разделить канальный уровень на два подуровня.

p, blockquote 37,0,0,0,0 —>

p, blockquote 38,0,0,0,0 —>

Подуровни канального уровня

Подуровень №1 — управление логическим каналом (logical link control) LLC, а подуровень №2 — управление доступом к среде (media access control) MAC.

p, blockquote 39,0,0,0,0 —>

Подуровень LLC отвечает за передачу данных, формирование кадров, обработку ошибок и тому подобное. LLC общий уровень для различных технологий канального уровня.

p, blockquote 40,0,0,0,0 —>

Подуровень MAC используется, если технология канального уровня с разделяемым доступом. Если технология канального уровня используют соединение “точка-точка”, то подуровень MAC не нужен.

p, blockquote 41,0,0,0,0 —>

Во-первых если у нас есть несколько устройств, которые подключены к одному и тому же каналу связи, то при передаче данных мы должны явно указать, к какому устройству эти данные предназначены. Для этого используются адресация канального уровня, также необходимо обеспечить корректное, совместное использование разделяемой среды передачи данных.

p, blockquote 42,0,0,0,0 —>

Подуровень MAC особенный для разных технологий канального уровня, он зависит от того, какая среда передачи данных используется.

p, blockquote 43,0,0,0,0 —>

Услуги подуровня LLC

Мультиплексирование — передача данных через одну технологию канального уровня, нескольких типов протоколов вышестоящего уровня. Управление потоком, если в сети устройства, которые работают с разной скоростью, то более мощное устройство, может начать передавать данные очень быстро, так что более слабые устройства не успевают их принимать. В компьютерных сетях это называется “затопление” и некоторые технологии канального уровня обеспечивают защиту от затопления медленного получателя быстрым отправителем.

p, blockquote 44,0,0,0,0 —>

Множественный доступ к каналу связи

Предположим, есть какая-то общая среда передачи данных, к которой подключены несколько компьютеров и они начали передавать данные одновременно. Но так как среда передачи данных одна, то данные искажаются и не могут быть прочитаны из среды. Это называется коллизия. Подуровень MAC обеспечивает управление доступом, к разделяемой среде. В один и тот же момент времени, канал связи для передачи данных должен использовать только один отправитель. В противном случае произойдет коллизия и данные искажаются.

p, blockquote 45,0,0,0,0 —>

Методы управления доступом:

p, blockquote 46,0,0,0,0 —>

  • Рандомизированный метод. Предположим, к среде подключено N устройств в этом случае для передачи данных случайным образом выбирается одно из этих устройств с вероятностью 1/N. Такой подход применяется в технологиях канального уровня изернет и вай-фай.
  • Определение правил использования среды, например, в технологии Token Ring, данные может передавать только одно устройство, у которого сейчас находится токен. После того как это устройство передало данные, оно передает токен следующему устройству и следующее устройство может передавать данные. Хотя такой подход обеспечивает более эффективное использование полосы пропускания канала связи, но он требует более дорогого оборудования. Поэтому на практике получил распространение рандомизированный подход.

Раньше было очень много технологий канального уровня, каждая из которых обладала теми или иными преимуществами и недостатками. Однако сейчас в процессе развития остались только две популярные технологии это ethernet и вай-фай.

Читайте также:  Как вывести изображение с фотоаппарата на монитор

p, blockquote 47,0,0,0,0 —>

p, blockquote 48,0,0,0,0 —> p, blockquote 49,0,0,0,1 —>

Мы рассмотрели канальный уровень, его основные задачи. Выяснили, что канальный уровень может обнаруживать и исправлять ошибки. Спасибо за прочтение статьи, надеемся она была для Вас полезной.

Канальный уровень — уровень сетевой модели OSI, предназначенный для обмена данными между узлам находящимся в том же сегменте локальной сети, путем передачи специальных блоков данных, которые называются кадрами (frame). В процессе формирования кадров данные снабжаются служебной информацией (заголовком), необходимой для корректной доставки получателю, и, в соответствии с правилами доступа к среде передачи, отправляются на физический уровень. Таким образом канальный уровень обеспечивает создание, передачу и прием кадров данных.

Этот уровень обслуживает запросы сетевого уровня и использует сервис физического уровня для приема и передачи пакетов.

Кадры канального уровня не пересекают границ сетевого сегмента. Межсетевая маршрутизация и глобальная адресация это функция более высокого уровня, что позволяет протоколам канального уровня сосредоточится на локальной доставке и адресации.

В локальных сетях канальный уровень разделяется на два подуровня:

  • уровень управления логическим каналом (logical link control, LLC).
  • уровень доступа к среде (media access layer, MAC),

Процедура доступа к среде и является главной функцией МАС-уровня. В сетях Ethernet используется метод доступа к среде передачи данных, называемый методом коллективного доступа с опознаванием несущей и обнаружением коллизий (carrier sense multiple access with collision detection, CSMA/CD). Этот метод применяется исключительно в сетях с логической общей шиной (к которым относятся и радиосети, породившие этот метод).

Когда устройства пытаются использовать среду одновременно, возникают коллизии кадров. Протоколы канального уровня выявляют такие случаи и обеспечивают механизмы для уменьшения их количества или же их предотвращения.

Коллизия (англ. collision — ошибка наложения, столкновения) — в терминологии компьютерных и сетевых технологий, наложение двух и более кадров от станций, пытающихся передать кадр в один и тот же момент времени.

Все компьютеры такой сети имеют непосредственный доступ к общей шине, поэтому она может быть использована для передачи данных между любыми двумя узлами сети. Одновременно все компьютеры сети имеют возможность немедленно (с учетом задержки распространения сигнала по физической среде) получить данные, которые любой из компьютеров начал передавать в общую шину.

Чтобы получить возможность передавать кадр, станция должна убедиться, что разделяемая среда свободна. Это достигается прослушиванием несущей частоты (carrier-sense).

Если среда свободна, то узел имеет право начать передачу кадра. Все станции, подключенные к кабелю, могут распознать факт передачи кадра, и та станция, которая узнает собственный адрес в заголовках кадра, записывает его содержимое в свой внутренний буфер, обрабатывает полученные данные, передает их вверх по своему стеку, а затем посылает по кабелю кадр-ответ. Адрес станции источника содержится в исходном кадре, поэтому станция-получатель знает, кому нужно послать ответ. После окончания передачи кадра все узлы сети обязаны выдержать технологическую паузу. Эта пауза, называемая также межкадровым интервалом, нужна для приведения сетевых адаптеров в исходное состояние, а также для предотвращения монопольного захвата среды одной станцией. После окончания технологической паузы узлы имеют право начать передачу своего кадра, так как среда свободна.

При описанном подходе возможна ситуация, когда две станции одновременно пытаются передать кадр данных по общей среде. Механизм прослушивания среды и пауза между кадрами не гарантируют защиты от возникновения такой ситуации, когда две или более станции одновременно решают, что среда свободна, и начинают передавать свои кадры. Говорят, что при этом происходит коллизия (collision), так как содержимое обоих кадров сталкивается на общем кабеле и происходит искажение информации — методы кодирования, используемые в Ethernet, не позволяют выделять сигналы каждой станции из общего сигнала.

Коллизия — это нормальная ситуация в работе сетей Ethernet. Для возникновения коллизии не обязательно, чтобы несколько станций начали передачу абсолютно одновременно, такая ситуация маловероятна. Гораздо вероятней, что коллизия возникает из-за того, что один узел начинает передачу раньше другого, но до второго узла сигналы первого просто не успевают дойти к тому времени, когда второй узел решает начать передачу своего кадра. То есть коллизии — это следствие распределенного характера сети.

Заголовок кадра содержит аппаратные адреса отправителя и получателя, что позволяет определить, какое устройство отправило кадр и какое устройство должно получить и обработать его. В отличии от иерархических и маршрутизируемых адресов, аппаратные адреса одноуровневые. Это означает, что никакая часть адреса не может указывать на принадлежность к какой либо логической или физической группе.

Для успешной доставки одного адреса назначения явно недостаточно. Нужна дополнительная служебная информация — длина поля данных, тип сетевого протокола и др.

Формат кадра Ethernet

Preamble
Преамбула
SFD DA Адрес назначения SA Адрес Источника Type/Length
Тип/Длина
Data
Данные
FCS
Контрольная сумма
7 байт 1 байт 6 байт 6 байт 2 байта 46-1500 байт 4 байта
  • Преамбула (Preamble). Состоит из 8 байтов. Первые семь содержат одну и ту же циклическую последовательность битов (10101010), которая хорошо подходит для синхронизации приемопередатчиков. Последний (Start-of-frame-delimiter, SFD), 1 байт (10101011), служит меткой начала информационной части кадра. Это поле не учитывается при определении длины кадра и не рассчитывается в контрольной сумме.
  • МАС-адрес получателя (Destination Address, DA).
  • МАС-адрес отправителя (Source Address, SA). Первый бит всегда равен нулю.
  • Поле длины либо тип данных (Length/Type, L/T). Два байта, которые содержат явное указание длины (в байтах) поля данных в кадре или указывают на тип данных. Ниже, в описании LLC будет показано, что возможно простое автоматическое распознавание разных типов кадров.
  • Данные (Data). Полезная нагрузка кадра, данные верхних уровней OSI. Может иметь длину от 0 до 1500 байт.
  • Для корректного распознавания коллизий необходим кадр не менее чем из 64 байт. Если поле данных менее 46 байт, то кадр дополняется полем заполнения (Padding).
  • Контрольная сумма (Frame Check Sequence, FCS). 4 байта, которые содержит контрольную сумму всех информационных полей кадра. Вычисление выполняется по алгоритму CRC-32 отправителем и добавляется в кадр. После приема кадра в буфер, приемник выполняет аналогичный расчет. В случае расхождения результата вычислений, предполагается ошибка при передаче, и кадр уничтожается.

Канальный уровень обеспечивает корректность передачи каждого кадра, помещая специальную последовательность бит в начало и конец каждого кадра, чтобы отметить его, а также вычисляет контрольную сумму, суммируя все байты кадра определенным способом и добавляя контрольную сумму к кадру. Когда кадр приходит, получатель снова вычисляет контрольную сумму полученных данных и сравнивает результат с контрольной суммой из кадра. Если они совпадают, кадр считается правильным и принимается. Если же контрольные суммы не совпадают, то фиксируется ошибка.

Кадр приведенный выше является кадром MAС-подуровня, и в соответствии со стандартом 802.2 в его поле данных вкладывается кадр подуровня LLC с удаленными флагами начала и конца кадра. Данный подуровень обеспечивает единый, независимый от используемого метода доступа, интерфейс с верхним (сетевым) уровнем.

Служебный заголовок кадра LLC имеет три поля: точка входа в сервис назначения (Destination Service Access Point, DSAP), точка входа в сервис источника (Source Service Access Point, SSAP) и поле управления. Первые два поля могут использоваться для характеризации протоколов верхнего уровня, данные которых представлены в поле данных кадра LLC. Поле управления используется для реализации процедуры установления соединения на канальном уровне, но оно редко используется в протоколах локальных сетей. Результирующий кадр MAC/LLC изображен в левой части рисунка ниже:

Preamble
Преамбула
SFD DA Адрес назначения SA Адрес Источника Type/Length
Тип/Длина
DSAP SSAP Поле управления Data
Данные
FCS
Контрольная сумма
7 байт 1 байт 6 байт 6 байт 2 байта 1 байт 1 байт 1 байт 46-1497 байт 4 байта

В локальных сетях а дресация узлов назначения и узлов источника производится на основе МАС-адресов, которые «прошиты» в П ЗУ сетевых интерфейсов.

Старшие три байта представляют собой идентификатор производителя оборудования (Vendor codes или OUI — Organizational Unique Identifier), младшие — индивидуальный идентификатор устройства или номер интерфейса.

За уникальность последних несет ответственность производитель оборудования, их значение устанавливается на заводе и является уникальным для каждого выпущенного устройства.

С идентификаторами производителя дело обстоит сложнее. Существует специальная организация в составе IEEE, которая ведет список вендоров, выделяя каждому из них свой диапазон адресов.

Такой механизм существует для того, что бы физический адрес любого устройства был уникальным, и не возникло ситуации его случайного совпадения в одной локальной сети.

Нужно особо отметить, что на большинстве современных адаптеров можно программным путем установить любой адрес. А существуют еще и виртуальные (программные) интерфейсы, где адрес задается только программным путем. Это представляет определенную угрозу работоспособности локальной сети, и может быть причиной серьезных сбоев в работе сети.

Ссылка на основную публикацию
Файл с расширением dav чем открыть
Файл формата DAV открывается специальными программами. Чтобы открыть данный формат, скачайте одну из предложенных программ. Чем открыть файл в формате...
У вас сломался холодильник
Поломка холодильника всегда застает в врасплох. И определить причину моментально практически невозможно. Нужно как можно быстрее «спасти» продукты. Обычно надолго...
У каких марок телефонов хорошая камера
Производители будто бы соревнуются - кто сколько датчиков встроит в девайс. Есть уже с четырьмя и даже пятью камерами! Как...
Файл подкачки windows 7 на флешку
В прошлой статье рассказано, как определиться с оптимальным размером файла подкачки, что делать с SSD-дисками и как установить размер файла...
Adblock detector