Санкт-Петербургский государственный университет информационных технологий, механики и оптики Кафедра проектирования компьютерных систем В. А. Козак Вычислительные сети Лекция 3 Канальный уровень Санкт-Петербург, 2009 Функции канального уровня • • • • • • • • Обеспечение интерфейса для сетевого уровня; Организация доступа к среде передачи; Обработка ошибок передачи данных; Управление потоком данных, исключающее затопление медленных приемников быстрыми передатчиками; Определяет структуру связей между узлами и способы их адресации; Оперирует не битами, а блоками данных – кадрами; Оборудование, работающее на канальном уровне: коммутаторы, мосты; Примеры протоколов, относящихся к канальному уровню: Ethernet, Token Ring, FDDI, Bluetooth, Wi-Fi, Wi-Max, X.25, Frame Relay, ATM и т.д. Существенные характеристики метода передачи • асинхронный/синхронный; • символьно-ориентированный/бит-ориентированный; • с предварительным установлением соединения/дейтаграммный; • с обнаружением искаженных данных/без обнаружения; • с обнаружением потерянных данных/без обнаружения; • с восстановлением искаженных и потерянных данных/без восстановления; • с поддержкой динамической компрессии данных/без поддержки. Асинхронные протоколы Асинхронные протоколы: • оперируют не с кадрами, а с отдельными символами; • применяться для связи телетайпов, разного рода клавиатур и дисплеев с вычислительными машинами. • применяются стандартные наборы символов (н-р, ASCII или EBCDIC). Синхронные протоколы • Все обмены данными осуществляются кадрами. • Кадр обычно имеет заголовок, поле данных и концевик. • Между пересылаемыми символами (байтами) нет стартовых и стоповых сигналов, отсюда проблема распознавания границы байт. • Проблема определения начала и конца кадра, а также определения границы каждого поля кадра. • Протоколы могут определять максимальное и минимальное значение длины поля данных максимальной единицей передачи данных (Maximum Transfer Unit, MTU). Виды синхронных протоколов • Символьно-ориентированные протоколы; • Бит-ориентированные протоколы. Символьно-ориентированные протоколы • используются в основном для передачи блоков отображаемых символов, например текстовых файлов; • не эффективна для передачи двоичных данных из-за необходимости добавления символов DLE, кроме того управляющие символы различны для разных кодировок. Таблица служебных символов: имя ASCII-код назначение SYN 0010110 синхронизация STX 0000010 старт кадра ЕТХ 0000011 конец кадра DLE 0010000 стаффинг DLE DLE ETX стаффинг DLE ЕТХ (приемник всегда удаляет только первый символ DLE) Бит-ориентированные протоколы Универсальный и наиболее распространённый метод передачи. 3 различные схемы бит-ориентированной передачи: a) Использование стартовых и стоповых битов с битовым заполнением (01111110). Схема похожа на схему с символами STX и ЕТХ. Для недопущения флага в поле данных кадра используется вставка 0 бита, бит-стаффинг; b) Подсчет количества символов. (стартовый флаг + поле длины кадра). Кадр содержит преамбулу; c) Использование запрещенных сигналов физического уровня. Например, отсутствие обязательного изменения полярности сигнала в середине тактового интервала при манчестерском кодировании. Протоколы с гибким форматом кадра • Служебные поля кадра, их длина и тип передаваемых данных заранее не определены; • Примеры: SNMP (простой протокол управления сетью) , РРР (протокол точка-точка); • Поля «Тип» и «Длина» имеют фиксированный размер в один байт. Обнаружение и коррекция ошибок • Канальный уровень должен обнаруживать ошибки передачи данных, связанные с искажением бит в принятом кадре данных или с потерей кадра, и по возможности их корректировать. • В высоконадежных каналах, (н-р, оптоволокно), разумно использовать код с обнаружением ошибок и заново передавать случайные поврежденные блоки. • В беспроводных соединениях, в которых может возникать множество ошибок, чаще используют коды с избыточностью, достаточной для того, чтобы приемник мог определить, какие данные должны были прийти. Методы обнаружения ошибок Все методы основаны на передаче служебной избыточной информации (контрольной суммы или последовательностью контроля кадра - Frame Check Sequence, FCS), по которой можно судить с некоторой степенью вероятности о достоверности принятых данных. Распространенные алгоритмы вычисления контрольной суммы: • контроль по паритету; • вертикальный и горизонтальный контроль по паритету; • циклический избыточный контроль (Cyclic Redundancy Check. Управление потоком передачи Управление потоком передачи необходимо для: • повторной отправки кадров в случае обнаружения ошибки и невозможностью её исправить; • повторной отправки кадров в случае, если кадр был потерян; • недопущения отправки кадров быстрее, чем получатель способен их принимать. Для контроля отправитель нумерует отправляемые кадры и для каждого кадра ожидает от приемника положительной либо отрицательной квитанции. Организация процесса обмена квитанциями Варианты организации процесса обмена квитанциями: • с простоями; • с организацией «окна». Метод скользящего окна более сложен в реализации, чем метод с простоями, но гораздо эффективнее. Метод скользящего окна имеет два параметра, которые могут заметно влиять на эффективность передачи данных между передатчиком и приемником, - размер окна и величина тайм-аута ожидания квитанции. Метод «скользящего окна» Алгоритм «дырявое ведро» Компрессия данных Компрессия (сжатие) данных применяется для сокращения времени их передачи. Так как на компрессию и декомпрессию данных тратится дополнительное время, то выгода от компрессии заметна только для низкоскоростных каналов (<=64 Кбит/с). Основные алгоритмы компрессии данных: • десятичная упаковка; • относительное кодирование; • символьное подавление; • коды переменной длины. Коммутация Коммутация — процесс соединения абонентов коммуникационной сети через транзитные узлы. • Методы коммутации: • коммутация каналов (circuit switching); • коммутация пакетов (packet switching); • коммутация сообщений (message switching) Коммутация каналов Особенности: • перед передачей данных выполняется установление соединения; • установленный при соединении путь остается неизменным до конца сеанса связи; • коммутаторы такой сети не должны буферизовать передаваемые данные; • возможность повременной оплаты. Цели установления соединения при коммутации каналов • резервирование ресурсов; • взаимная аутентификация; • согласование изменяемых параметров протокола: MTU, различных тайм-аутов, кодеков и т. п; • обнаружение и коррекция ошибок; • динамическая настройка коммутаторов сети для маршрутизации всех последующих кадров, относящихся к данному логическому или физическому соединению; • возможность повременной оплаты; • и другие. Достоинства и недостатки коммутации каналов Достоинства коммутации каналов: • постоянная и известная скорость передачи данных; • правильная последовательность прихода данных; • низкий и постоянный уровень задержки передачи данных через сеть. Недостатки коммутации каналов: • возможен отказ сети в обслуживании запроса на установление соединения; • нерациональное использование пропускной способности физических каналов; • обязательная задержка перед передачей данных из-за фазы установления соединения. Коммутация пакетов • Коммутация пакетов эффективна для передачи компьютерного трафика, для которого характерна высокая пульсация скорости передачи данных. • Коммутаторы имеют внутреннюю буферную память для временного хранения пакетов. Достоинства и недостатки коммутации пакетов Достоинства коммутации пакетов: • более устойчива к сбоям; • высокая общая пропускная способность сети при передаче пульсирующего трафика; • возможность динамически перераспределять пропускную способность физических каналов связи. Недостатки коммутации пакетов: • неопределенность скорости передачи данных между абонентами сети; • переменная величина задержки пакетов данных; • возможны потери данных из-за переполнения буферов; • возможны нарушения последовательности прихода пакетов. Сравнительная таблица методов коммутации Коммутация каналов Коммутация пакетов Требуется Не требуется Выделенный «медный» путь Да Нет Каждый пакет перемещается по одному и тому же пути Да Нет Пакеты приходят в правильном порядке Да Нет Критичность выхода из строя коммутатора Да Нет Фиксированная Динамическая Во время установки соединения Для каждого пакета Возможность простоя линии Да Нет Передача с промежуточным хранением Нет Да Прозрачность Да Нет За время на линии За трафик Параметр Установка соединения Доступная пропускная способность Возможность занятости линии Оплата Виртуальные каналы в сетях с коммутацией пакетов • Механизм виртуальных каналов (virtual circuit или virtual channel) создает в сети устойчивые пути следования трафика через сеть с коммутацией пакетов. • Виртуальные каналы позволяют экономить на адресах получателя, указывая вместо них короткие номера виртуальных каналов. • Компромис между временем установки соединения и временем маршрутизации каждого пакета. • Возможно резервирование ресурсов. Сравнение дейтаграмных и виртуальных каналов Задержка при коммутации Организация доступа к линии связи Линии связи: • индивидуальные линии связи; • разделяемые линии связи. Основные виды доступа к разделяемым линиям связи: • централизованный подход; • множественный доступ с контролем несущей; • маркерный доступ. Структурированная кабельная система Структурированная кабельная система (Structured Cabling System, SCS) - это набор коммутационных элементов (кабелей, разъемов, коннекторов, кроссовых панелей и шкафов), а также методика их совместного использования, которая позволяет создавать регулярные, легко расширяемые структуры связей в вычислительных сетях. Иерархическая структура СКС включает: • горизонтальные подсистемы (в пределах этажа); • вертикальные подсистемы (внутри здания); • подсистему кампуса (в пределах одной территории с несколькими зданиями). Преимущества от использования СКС Использование СКС дает ряд преимуществ: • универсальность; • увеличение срока службы; • уменьшение стоимости добавления новых пользователей и изменения их мест размещения; • возможность легкого расширения сети; • обеспечение более эффективного обслуживания; • надежность.