Автор работы: Пользователь скрыл имя, 10 Сентября 2015 в 12:34, курс лекций
Работа содержит конспект лекций по дисциплине «Сетевые технологии».
6. МЕТОДЫ ПЕРЕДАЧИ ДАННЫХ НА КАНАЛЬНОМ УРОВНЕ
В предыдущей лекции мы выяснили, что на физическом уровне происходит непосредственно передача битов по проводам. Однако реальная линия связи состоит не только из кабеля, но еще включает дополнительное оборудование: маршрутизаторы, коммутаторы и т.п. Это оборудование помогает управлять передачей информации в сети определенной топологии от компьютера к компьютеру. Задачей качественного, быстрого и надежного установления соединения компьютеров с помощью такого рода оборудования и занимается канальный уровень.
Рассматривая модель OSI, мы выяснили, что канальный уровень оперирует кадрами данных, поскольку работает с компьютерами, которые не обмениваются информацией по битно. Кадры образуются определенным набором бит данных. Они содержат в себе, как минимум, адрес получателя, и отправляются узлом-источником для передачи по кабелю методами физического уровня, затем оборудование сети, в зависимости от ее топологии, распознает - кому эти кадры предназначены, и отправляет их по кабелю к узлу-приемнику. Таким образом, канальный уровень - это по сути логика установки соединений в сети. С одной стороны он привязан к физическому уровню, то есть к типам используемых линий связи и методам передач физического уровня. Но с другой стороны он связан с сетевым уровнем, который уже управляет передачей информации между локальными сетями.
На канальном уровне для каждой топологии сети имеются свои правила работы - протоколы. Если на физическом уровне не решаются вопросы какой компьютер и когда может использовать кабель линии связи, то на канальном уровне важно обеспечить качественную доставку кадра от узла к узлу. Именно на канальном уровне происходит "борьба за кабель", за доставку информации к нужному узлу сети, он занимается проблемами взаимодействия станций друг с другом, обеспечением гарантии доставки кадра информации к станции в любой из используемой топологии сети.
В этой лекции мы поговорим в общем плане о форматах кадров, рассмотрим способы передачи данных на канальном уровне, методы управления обменом информации в сети с определенной топологией и т.д.
6.1. Структура типичного кадра компьютерной сети.
Информация в локальных сетях предается отдельными порциями, называемыми в различных источниках кадрами, пакетами или блоками. Использование кадров связано с тем, что в сети одновременно может происходить несколько сеансов связи, т.е. в течении одного и того интервала времени могут идти два или больше процессов передачи данных между абонентами. Кадры (пакеты) собственно и позволяют разделить во времени сеть между передающими абонентами и уравнять в правах доступа всех абонентов и обеспечить для всех абонентов интегральную скорость передачи информации. Длина кадра зависит от типа сети и составляет от 10 байт – до 10 Кбайт. Важно делить информацию на кадры и для контроля правильности передачи информации. Кадры имеют преимущества пред побайтовой (8бит) или пословной (16 бит и 32 бита) передачей, т.к. при этом уменьшается количество служебной информации и увеличивается полезная загрузка сети.
Структура кадра определяется аппаратурными особенностями данной сети, выбранной топологией и типом среды передачи информации, а также существенно зависит от используемого протокола (порядка обмена информацией).
Типичный кадр содержит в себе следующие основные поля:
Рис. 6.1. Структура пакета
1,2,3,4 - образуют начальное управляющее поле, 5 - поле данных, 6,7- конечное управляющее поле.
При передаче кадров данных на канальном уровне используются как дейтаграммные процедуры, работающие без становления соединения (connectionless), так и процедуры с предварительным установлением логического соединения (connection-oriented).
При дейтаграммной передаче кадр посылается в сеть "без предупреждения", и никакой ответственности за его утерю протокол не несет. Предполагается, что сеть всегда готова принять кадр от конечного узла. Дейтаграммный метод работает быстро, так как никаких предварительных действий перед отправкой данных не выполняется. Однако при таком методе трудно организовать в рамках протокола отслеживание факта доставки кадра узлу назначения. Этот метод не гарантирует доставку пакета.
Передача с установлением соединения более надежна, но требует больше времени для передачи данных и вычислительных затрат от конечных узлов. В этом случае узлу-получателю отправляется служебный кадр специального формата с предложением установить соединение. Если узел-получатель согласен с этим, то он посылает в ответ другой служебный кадр, подтверждающий установление соединения и предлагающий для данного логического соединения некоторые параметры, например идентификатор соединения, максимальное значение поля данных кадров, которые будут использоваться в рамках данного соединения, и т. п. Узел-инициатор соединения может завершить процесс установления соединения отправкой третьего служебного кадра, в котором сообщит, что предложенные параметры ему подходят. На этом логическое соединение считается установленным, и в его рамках можно передавать информационные кадры с пользовательскими данными.
Рис 6.2 Пример обмена кадрами при сеансе связи
После передачи некоторого законченного набора данных, например определенного файла, узел инициирует разрыв данного логического соединения, посылая соответствующий служебный кадр.
Заметим, что, в отличие от протоколов дейтаграммного типа, которые поддерживают только один тип кадра - информационный, протоколы, работающие по процедуре с установлением соединения, должны поддерживать несколько типов кадров - служебные, для установления (и разрыва) соединения, и информационные, переносящие собственно пользовательские данные.
В общем случае логическое соединение обеспечивает передачу данных как в одном направлении - от инициатора соединения, так и в обоих направлениях.
6.3. Методы гарантии доставки кадров информации
При установке соединения не маловажным вопросом становится обеспечение гарантии доставки кадра и обнаружение ошибок.
Рассмотрим общие подходы решению проблемы гарантии доставки кадров. Для того, чтобы гарантировать доставку всех кадров, надо обеспечить такой режим установки соединения, при котором можно было бы в любой момент времени повторить отосланный ранее кадр, в случае обнаружения его потери или искажения. Чтобы убедиться в необходимости повторной передачи данных, отправитель нумерует отправляемые кадры и для каждого кадра ожидает от приемника так называемой положительной квитанции - служебного кадра, извещающего о том, что исходный кадр был получен и данные в нем оказались корректными. Время этого ожидания ограничено - при отправке каждого кадра передатчик запускает таймер, и, если по его истечении положительная квитанция не получена, кадр считается утерянным.
Приемник в случае получения кадра с искаженными данными может отправить отрицательную квитанцию - явное указание на то, что данный кадр нужно передать повторно.
В итоге, путем обмена такого рода квитанциями, можно определить есть ли утечки информации в сети, и не просто определить, а обеспечить ее повторную передачу в случае каких-либо сбоев. Таким образом, канальный уровень обеспечивает гарантированную доставку кадров.
Организацией процесса обмена квитанциями занимается метод скользящего окна. Перед тем как рассмотреть этот, сначала познакомится с частным случаем этого метода, который называется метод с простоями.
Метод с простоями (Idle Source) требует, чтобы источник, пославший кадр, ожидал получения квитанции (положительной или отрицательной) от приемника и только после этого посылал следующий кадр (или повторял искаженный). Если же квитанция не приходит в течение тайм-аута, то кадр (или квитанция) считается утерянным и его передача повторяется.
Рис. 6.3 Обмен кадрами и квитанциями при методе с простоями
На рисунке видно, что в этом случае производительность обмена данными существенно снижается, - хотя передатчик и мог бы послать следующий кадр сразу же после отправки предыдущего, он обязан ждать прихода квитанции. Иногда использование такого метода может привести к тому, что, что время ожидания квитанции будет существенно превышать время посылки сообщения. Снижение производительности этого метода коррекции особенно заметно на низкоскоростных каналах связи
Метод скользящего окна (sliding window) работает гораздо эффективней. Для повышения коэффициента использования линии источнику разрешается передать некоторое количество кадров в непрерывном режиме, то есть в максимально возможном для источника темпе, без получения на эти кадры положительных ответных квитанций. (Далее, где это не искажает существо рассматриваемого вопроса, положительные квитанции для краткости будут называться просто квитанциями.) Количество кадров, которые разрешается передавать в непрерывном режиме, называется размером окна.
Рис. 6.4 Обмен кадрами квитанциями при методе скользящего окна
На рис.6.4. показан метод скользящего окна для окна размером в W кадров. В начальный момент, когда еще не послано ни одного кадра, окно определяет диапазон кадров с номерами от 1 до W включительно. Источник начинает передавать кадры и получать в ответ квитанции. Для простоты предположим, что квитанции поступают в той же последовательности, что и кадры, которым они соответствуют. В определенный момент t1 при получении первой квитанции окно сдвигается на одну позицию, определяя новый диапазон от 2 до (W+1). Процессы отправки кадров и получения квитанций идут достаточно независимо друг от друга. Если допустим, что в произвольный момент времени tn источник получил квитанцию на кадр с номером n. Окно сдвинулось вправо и определило диапазон разрешенных к передаче кадров от (n+1) до (W+n). Все множество кадров, выходящих из источника, можно разделить на перечисленные ниже группы:
1. Кадры с номерами от 1 до n - уже были отправлены и квитанции на них получены, то есть они находятся за пределами окна слева.
2. Кадры, начиная с номера (n+1) и кончая номером (W+n) , находятся в пределах окна и потому могут быть отправлены не дожидаясь прихода какой-либо квитанции. Этот диапазон может быть разделен еще на два поддиапазона:
кадры с номерами от (n+1) до m, которые уже отправлены, но квитанции на них еще не получены;
кадры с номерами от m до (W+n) , которые пока не отправлены, хотя запрета на это нет.
3.Все кадры с номерами, большими или равными (W+n+1) , находятся за пределами окна справа и поэтому пока не могут быть отправлены.
Каждый раз, когда приходит квитанция, окно сдвигается влево, но его размер при этом не меняется и остается равным W. Заметим, что хотя в данном примере размер окна в процессе передачи остается постоянным, в реальных протоколах можно встретить варианты данного алгоритма с изменяющимся размером окна.
Итак, при отправке кадра с номером n источнику разрешается передать еще W-1 кадров до получения квитанции на кадр n, так что в сеть последним уйдет кадр с номером (W+n-1) .
Если же за это время квитанция на кадр n так и не пришла, то процесс передачи приостанавливается, и по истечении некоторого тайм-аута кадр n (или квитанция на него) считается утерянным, и он передается снова.
Если же поток квитанций поступает более-менее регулярно, в пределах допуска в W кадров, то скорость обмена достигает максимально возможной величины для данного канала и принятого протокола.
Метод скользящего окна более сложен в реализации, чем метод с простоями, так как передатчик должен хранить в буфере все кадры, на которые пока не получены положительные квитанции. Кроме того, требуется отслеживать несколько параметров алгоритма: размер окна W, номер кадра, на который получена квитанция, номер кадра, который еще можно передать до получения новой квитанции.
Приемник может не посылать квитанции на каждый принятый корректный кадр. Если несколько кадров пришли почти одновременно, то приемник может послать квитанцию только на последний кадр. При этом подразумевается, что все предыдущие кадры также дошли благополучно.
Некоторые методы используют отрицательные квитанции. Отрицательные квитанции бывают двух типов - групповые и избирательные. Групповая квитанция содержит номер кадра, начиная с которого нужно повторить передачу всех кадров, отправленных передатчиком в сеть. Избирательная отрицательная квитанция требует повторной передачи только одного кадра.
Метод скользящего окна имеет два параметра, которые могут заметно влиять на эффективность передачи данных между передатчиком и приемником, - размер окна и величина тайм-аута ожидания квитанции.
Информация о работе Конспект лекций по дисциплине «Сетевые технологии»