- •Каналы передачи данных: основные понятия и определения, типы линий связи, аппаратура каналов передачи данных.
- •Классификация и особенности моделей «клиент-сервер».
- •22 . Основные цели, функции и уровни обеспечения качества обслуживания в пакетных сетях.
- •23 . Особенности протоколов канального уровня.
- •24 . Протоколы межсетевого и транспортного уровней tcp/ip
23 . Особенности протоколов канального уровня.
Каждый протокол канального уровня можно охарактеризовать следующим набором свойств: – асинхронный/синхронный режим передачи байтов; – символьно-ориентированный/бит-ориентированный; – с предварительным установлением соединения/дейтаграммный; – с обнаружением искаженных данных/без обнаружения; – с обнаружением потерянных данных/без обнаружения; – с восстановлением искаженных и потерянных данных/без восстановления; – с поддержкой динамической компрессии данных/без поддержки.
Асинхронные протоколы
Единицей передаваемых данных в асинхронных протоколах является не кадр данных, а отдельный символ, который чаще всего представлен одним байтом. В этом режиме каждый байт данных сопровождается специальными сигналами «старт» и «стоп» (рис. 5.9). Асинхронным режим называется потому, что каждый байт может быть несколько смещен во времени относительно побитовых тактов предыдущего байта. Такая асинхронность не влияет на корректность принимаемых данных. Более «свободные» временные допуски определяют низкую стоимость оборудования.
Синхронные символьно-ориентированные и бит-ориентированные протоколы
В синхронных протоколах обмен данными осуществляется кадрами, которые имеют в общем случае заголовок, поле данных и концевик (рис. 5.10). Все биты кадра передаются непрерывным синхронным потоком.
Большинство протоколов допускает использование в кадре поля данных переменной длины. Иногда заголовок может иметь переменную длину. Обычно протоколы определяют максимальное значение длины поля данных. В некоторых задается также минимальное значение.
Синхронные протоколы канального уровня бывают двух типов: символьно-ориентированные (байт-ориентированные) и бит-ориентированные. Для обоих характерны одни и те же методы синхронизации битов. Различие между ними заключается в методе синхронизации символов и кадров.
Символьно-ориентированные протоколы используются в основном для передачи блоков отображаемых символов, например текстовых файлов. Синхронизация достигается за счет того, что передатчик добавляет два или более управляющих символа, называемых символами SYN, перед каждым блоком символов. Границы начала кадра обозначаются с помощью другого специального символа STX (Start of TeXt), окончание кадра – ЕТХ (End of TeXt, ASCII 0000011). Также использовался специальный символ DLE для обозначения символов STX и ЕТХ, если их коды могли встречаться в тексте.
Символьно-ориентированная передача не эффективна для передачи двоичных данных, так как приходится в поле данных кадра добавлять много избыточных данных. Сейчас почти всегда используется бит-ориентированная передача. На рис. 5.11 три различные схемы бит-ориентированной передачи отличаются способом обозначения начала и конца каждого кадра.
Первая схема похожа на схему с символами STX и ЕТХ. Термин «бит-ориентированный» используется потому, что принимаемый поток битов сканируется приемником на побитовой основе. Для синхронизации посылается последовательность байтов, каждый из которых состоит из 11111111, до достижения открывающего флага. В этой схеме необходимо, чтобы флаг не присутствовал в поле данных кадра. Это достигается с помощью бит-стаффинга – вставка нулевого бита. Если подряд передано пять единиц данных, то она автоматически вставляет дополнительный ноль. Аналогичная схема в приемнике выполняет обратную функцию.
Во второй схеме (см. рис. 5.11, б) для обозначения начала кадра имеется только стартовый флаг, а для определения конца кадра используется значение длины кадра. Эта схема наиболее применима в локальных сетях. Для обеспечения битовой синхронизации посылающая станция предваряет содержимое кадра преамбулой 101010. Войдя в битовую синхронизацию, приемник ожидает байт начала кадра 10101011. Считывает в заголовке кадра длину поля данных и отсчитывает заданное количество байтов для определения окончания кадра.
Третья схема (см. рис. 5.11, в) использует для обозначения начала и конца кадра флаги, которые включают запрещенные для данного кода сигналы. Этот способ не требует ни бит-стаффинга, ни поля длины. Недостаток – зависимость от принятого метода физического кодирования.
Передача с установлением соединения и без установления соединения
При дейтаграммной передаче (без установления соединения) кадр посылается в сеть «без предупреждения» (рис. 5.12, а). Предполагается, что сеть всегда готова принять кадр. Основное достоинство – скорость работы. Недостаток: не гарантируется доставка пакета.
Передача с установлением соединения более надежна, но требует больше времени для передачи данных и вычислительных затрат от конечных узлов.
Процедура установления соединения может использоваться для достижения различных целей: – Для взаимной аутентификации либо пользователей, либо оборудования. – Для согласования изменяемых параметров протокола. – Для обнаружения и коррекции ошибок. – В некоторых технологиях для динамической настройки коммутаторов сети для маршрутизации всех последующих кадров (Х.25, frame relay и ATM).
Обнаружение и коррекция ошибок
Виды ошибок, обрабатываемых на канальном уровне: искажение бит в принятом кадре или потеря кадра.
Большая часть протоколов канального уровня обеспечивает только обнаружение ошибок, перенося функцию коррекции на протоколы верхних уровней (Ethernet, Token Ring, FDDI, frame relay и ATM). Они используются для сетей, в которых искажения и потери кадров являются очень редкими событиями.
Все методы обнаружения ошибок основаны на передаче в составе кадра данных избыточной служебной информации, по которой можно судить с некоторой степенью вероятности о достоверности принятых данных. Эту служебную информацию принято называть контрольной суммой, или последовательностью контроля кадра. Контрольная сумма вычисляется как функция от основной информации, причем необязательно только путем суммирования.
Методы коррекции ошибок на канальном уровне основаны на повторной передаче кадра данных. Отправитель нумерует отправляемые кадры и для каждого кадра ожидает от приемника положительной квитанции. Время этого ожидания ограничено. По его истечении положительная квитанция на получена, кадр считается утерянным. Приемник в случае получения кадра с искаженными данными может отправить отрицательную квитанцию – явное указание на то, что данный кадр нужно передать повторно.
Существует два подхода к организации процесса обмена квитанциями: с простоями и с организацией «окна».
Метод с простоями. Источник, послав кадр ожидает получения квитанции и только после этого посылает следующий кадр (или повторяет искаженный). Если квитанция не приходит в течение тайм-аута, то кадр (или квитанция) считается утерянным и его передача повторяется. (рис. 5.13, а) В этом случае производительность обмена данными существенно снижается (особенно на низкоскоростных каналах).
Метод «скользящего окна». Источнику разрешается передать некоторое количество кадров в непрерывном режиме без получения на эти кадры квитанций. Количество кадров, которые разрешается передавать таким образом, называется размером окна. (5.13, б W кадров).
Рассмотрим произвольный момент времени tn, когда источник получил квитанцию на кадр с номером n. Все множество кадров, выходящих из источника, можно разделить на группы:
– Кадры 1 … п отправлены и квитанции на них получены.
– Кадры (п + 1) … (w + n), находятся в пределах окна и могут быть отправлены.
– Кадры (w + п + 1)…бескон., находятся за пределами окна справа и поэтому пока не могут быть отправлены.
Параметры, от которых зависит эффективность передачи данных: – размер окна и величина тайм-аута ожидания. Размер окна должен определяться исходя из характеристик ненадежности сети. Выбор тайм-аута зависит от задержек передачи кадров сетью. В реальных протоколах часто размер окна и величина тайм-аута могут меняться, в т.ч. адаптивно. Метод с простоями является частным случаем метода скользящего окна, когда размер окна равен единице.
Компрессия данных
Компрессия, или сжатие, данных применяется для сокращения времени их передачи. Многие программные и аппаратные средства сети способны выполнять динамическую компрессию в процессе передачи (статическая компрессия обеспечивается стандартными архиваторами до отправки сообщений). Некоторые модемы (называемые интеллектуальными) предлагают адаптивную компрессию, при которой в зависимости от передаваемых данных выбирается определенный алгоритм компрессии.
Десятичная упаковка. Двоичное кодирование десятичных цифр вместо кода ASCII.
Относительное кодирование. Кодирование числовых данных с небольшими отклонениями между последовательными цифрами путем передачи только этих отклонений.
Символьное подавление. Замена последовательностей одинаковых байт на специальную трехбайтовую последовательностью, в которой указывается значение байта, количество его повторений и начало этой последовательности специальным управляющим символом.
Коды переменной длины. Коды часто встречающихся символов заменяют кодами меньшей длины, а редко встречающихся – кодами большей длины. Такое кодирование называется также статистическим кодированием. Одним из наиболее распространенных алгоритмов – алгоритм Хафмана.
Рис. 5.2. Различные типы модуляции Рис. 5.3. Спектры сигналов при потенциальном кодировании и амплитудной модуляции
Рис. 5.4. Дискретная модуляция непрерывного процесса Рис. 5.6. Способы дискретного кодирования данных
Рис. 5.9. Рис. 5.10. Кадры синхронных протоколов
Рис. 5.11. Способы выделения начала и конца кадра при синхронной передаче Рис. 5.12. Протоколы без установления соединения (а) и с установлением соединения (б)
Рис. 5.13. Методы восстановления искаженных и потерянных кадров (t дол. быть на m)
