Передача данных протоколы физического уровня. Модемные протоколы физического уровня

МОДЕМНЫЕ ПРОТОКОЛЫ ФИЗИЧЕСКОГО УРОВНЯ

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

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


Скорость

Аналоговые каналы тональной частоты характеризуются тем, что спектр передаваемого по ним сигнала ограничен диапазоном от 300 Гц до 3400 Гц. Причины, по которым такое ограничение имеет место, пусть останутся за рамками данной статьи. Примем это как данность. Именно это ограничение спектра и является основной преградой в использовании телефонных каналов для высокоскоростной передачи цифровой информации. Человек, знакомый с трудами Найквиста, без сомнения укажет нам, что скорость передачи информации по каналу с ограниченным спектром не может превосходить ширины этого спектра, т. е. 3100 бод в нашем случае. Но как же тогда быть с модемами, передающими информацию со скоростями 4800, 9600, 14400 бит/с и даже больше? Ответ напрашивается сам: в аналоговой технике передачи данных бод и бит/с не есть одно и то же. Для прояснения этого тезиса стоит рассмотреть внимательнее физический уровень работы модема.

Электрический сигнал, распространяющийся по каналу, характеризуется тремя параметрами - амплитудой, частотой и фазой. Именно изменение одного из этих параметров, или даже совместно некоторой их совокупности в зависимости от значений информационных бит и составляет физическую сущность процесса модуляции. Каждому информационному элементу соответствует фиксированный отрезок времени, на котором электрический сигнал имеет определенные значения своих параметров, характеризующих значение этого информационного элемента. Этот отрезок времени называют бодовым интервалом. Если кодируемый элемент соответствует одному биту информации, который может принимать значение 0 или 1, то на бодовом интервале параметры сигнала соответственно могут принимать одну из двух предопределенных совокупностей значений амплитуды, частоты и фазы. В этом случае модуляционная скорость (еще ее называют линейной или бодовой) равна информационной, т. е. 1 бод = 1 бит/с. Но кодируемый элемент может соответствовать не одному, а, например, двум битам информации. В этом случае информационная скорость будет вдвое превосходить бодовую, а параметры сигнала на бодовом интервале могут принимать одну из четырех совокупностей значений, соответствующих 00, 01, 10 или 11.

В общем случае, если на бодовом интервале кодируется n бит, то информационная скорость будет превосходить бодовую в n раз. Но количество возможных состояний сигнала в трехмерном (в общем случае) пространстве - амплитуда, частота, фаза - будет равно 2**n. Это значит, что демодулятор модема, получив на бодовом интервале некий сигнал, должен будет сравнить его с 2**n эталонными сигналами и безошибочно выбрать один из них для декодирования искомых n бит. Таким образом, с увеличением емкости кодирования и ростом информационной скорости относительно бодовой, расстояние в сигнальном пространстве между двумя соседними точками сокращается в степенной прогрессии. А это, в свою очередь, накладывает все более жесткие требования к "чистоте" канала передачи. Теоретически возможная скорость в реальном канале определяется известной формулой Шеннона:

V = F log (1+S/N),

где F - ширина полосы пропускания канала, S/N - отношение сигнал/шум.

Второй сомножитель и определяет возможности канала с точки зрения его зашумленности по достоверной передаче сигнала, кодирующего не один бит информации в бодовом интервале. Так, например, если отношение сигнал/шум соответствует 20 dB, т. е. мощность сигнала, доходящего до удаленного модема, в 100 раз превосходит мощность шума, и используется полная полоса канала тональной частоты (3100 Гц), максимальная граница по Шеннону равна 20640 бит/с.

Модуляция

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


При частотной модуляции (FSK, Frequency Shift Keying) значениям 0 и 1 информационного бита соответствуют свои частоты физического сигнала при неизменной его амплитуде. Частотная модуляция весьма помехоустойчива, поскольку искажению при помехах подвергается в основном амплитуда сигнала, а не частота. При этом достоверность демодуляции, а значит и помехоустойчивость тем выше, чем больше периодов сигнала попадает в бодовый интервал. Но увеличение бодового интервала по понятным причинам снижает скорость передачи информации. С другой стороны, необходимая для этого вида модуляции ширина спектра сигнала может быть значительно уже всей полосы канала. Отсюда вытекает область применения FSK - низкоскоростные, но высоконадежные стандарты, позволяющие осуществлять связь на каналах с большими искажениями амплитудно-частотной характеристики, или даже с усеченной полосой пропускания.

При фазоразностной модуляции (DPSK, Differential Phase Shift Keying) изменяемым в зависимости от значения информационного элемента параметром является фаза сигнала при неизменных амплитуде и частоте. При этом каждому информационному элементу ставится в соответствие не абсолютное значение фазы, а ее изменение относительно предыдущего значения. Если информационный элемент есть дибит, то в зависимости от его значения (00, 01, 10 или 11) фаза сигнала может измениться на 90, 180, 270 градусов или не измениться вовсе. Из теории информации известно, что фазовая модуляция наиболее информативна, однако увеличение числа кодируемых бит выше трех (8 позиций поворота фазы) приводит к резкому снижению помехоустойчивости. Поэтому на высоких скоростях применяются комбинированные амплитудно-фазовые методы модуляции.

Многопозиционную амплитудно-фазовую модуляцию называют еще квадратурной амплитудной модуляцией (QAM, Quadrature Amplitude Modulation). Здесь помимо изменения фазы сигнала используется манипуляция его амплитудой, что позволяет увеличивать число кодируемых бит. В настоящее время используются модуляции, в которых количество кодируемых на одном бодовом интервале информационных бит может доходить до 8, а, соответственно, число позиций сигнала в сигнальном пространстве - до 256. Однако, применение многоточечной QAM в чистом виде сталкивается с серьезными проблемами, связанными с недостаточной помехоустойчивостью кодирования. Поэтому во всех современных высокоскоростных протоколах используется разновидность этого вида модуляции, т. н. модуляция с решетчатым кодированием или треллис-кодированием (TCM, Trellis Coded Modulation), которая позволяет повысить помехозащищенность передачи информации - снизить требования к отношению сигнал/шум в канале на величину от 3 до 6 дБ. Суть этого кодирования заключается в введении избыточности. Пространство сигналов расширяется вдвое путем добавления к информационным битам еще одного, который образуется посредством сверточного кодирования над частью информационных бит и введения элементов запаздывания. Расширенная таким образом группа подвергается все той же многопозиционной амплитудно-фазовой модуляции. В процессе демодуляции принятого сигнала производится его декодирование по весьма изощренному алгоритму Виттерби, позволяющему за счет введенной избыточности и знания предистории выбрать по критерию максимального правдоподобия из сигнального пространства наиболее достоверную точку и, тем самым, определить значения информационных бит.

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

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

Если же необходимо обеспечивать дуплекс при работе по двухпроводной линии, то приходится использовать другие способы. Одним из них является частотное разделение каналов. Вся полоса пропускания канала разделяется на два частотных подканала, по каждому из которых производится передача в одном направлении. Выбор подканала передачи осуществляется на этапе установки соединения и, как правило, однозначно связан с ролью модема в сеансе связи: вызывающий или отвечающий. Очевидно, что этот метод не позволяет использовать возможности канала в полном объеме ввиду значительного сужения полосы пропускания. Тем более, что для исключения проникновения боковых гармоник в соседний подканал, разносить их приходится со значительным "зазором", в результате чего частотные подканалы занимают отнюдь не половину полного спектра. Соответственно (см. формулу Шеннона), данный метод обеспечения дуплексной связи ограничивает скорость передачи информации. Существующие протоколы физического уровня, использующие частотное разделение каналов, обеспечивают симметричную дуплексную связь со скоростями, не превышающими 2400 бит/с.

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

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

Наконец, стоит отметить, что многие протоколы и не пытаются обеспечить дуплексную связь. Это так называемые полудуплексные протоколы. В частности, все протоколы, предназначенные для факсимильной связи - полудуплексные. В этом случае в каждый момент времени информация передается только в одну сторону. По окончании приема/передачи некоторой порции информации оба модема (факса) синхронно переключают направление передачи данных (ping-pong). Ввиду отсутствия проблем с взаимным проникновением подканалов передачи, а также с эхо-отражением, полудуплексные протоколы в общем случае характеризуются большей помехоустойчивостью и возможностью использования всей ширины полосы пропускания канала. Однако эффективность использования канала для передачи данных по сравнению с дуплексными протоколами ниже. Связано это прежде всего с тем, что практически все протоколы передачи данных, как канального уровня (MNP, V.42), так и уровня передачи файлов (X, Y, Zmodem, не говоря уже о протоколах типа BiDirectional), требуют двустороннего обмена, по крайней мере для подтверждения принятой информации. А любое переключение направления передачи, помимо невозможности в данный момент передавать очередную порцию пользовательской информации, требует дополнительных накладных расходов по времени на взаимную пересинхронизацию приемной и передающей сторон.

Общеупотребительные модемные протоколы ITU-T

Это дуплексный протокол с частотным разделением каналов и частотной же модуляцией FSK. На нижнем канале (его обычно использует для передачи вызывающий модем) "1" передается частотой 980 Гц, а "0" - 1180 Гц. На верхнем канале (передает отвечающий) "1" передается частотой 1650 Гц, а "0" - 1850 Гц. Модуляционная и информационная скорости равны - 300 бод, 300 бит/с. Несмотря на невысокую скорость, данный протокол находит применение прежде всего в качестве "аварийного", при невозможности вследствие высокого уровня помех использовать другие протоколы физического уровня. Кроме того, ввиду своей неприхотливости и помехоустойчивости, он используется в специальных высокоуровневых приложениях, требующих высокой надежности передачи. Например, при установке соединения между модемами по новой Рекомендации V.8, или для передачи управляющих команд при факсимильной связи (верхний канал).

Это дуплексный протокол с частотным разделением каналов и модуляцией DPSK. Несущая частота нижнего канала (передает вызывающийГц, верхнего (передает отвечающийГц. Модуляционная скорость - 600 бод. Имеет режимы двухпозиционной (кодируется бит) и четырехпозиционной (дибит) фазоразностной модуляции с фазовым расстоянием между точками, соответственно, в 180 и 90 град. Соответственно, информационная скорость может быть 600 или 1200 бит/с. Этот протокол фактически поглощен протоколом V.22bis.

Это дуплексный протокол с частотным разделением каналов и модуляцией QAM. Несущая частота нижнего канала (передает вызывающийГц, верхнего - 2400 Гц. Модуляционная скорость - 600 бод. Имеет режимы четырехпозиционной (кодируется дибит) и шестнадцатипозиционной (кодируется квадробит) квадратурной амплитудной модуляции. Соответственно, информационная скорость может быть 1200 или 2400 бит/с. Режим 1200 бит/с полностью совместим с V.22, несмотря на другой тип модуляции. Дело в том, что первые два бита в режиме 16-QAM (квадробит) определяют изменение фазового квадранта относительно предыдущего сигнального элемента и потому за амплитуду не отвечают, а последние два бита определяют положение сигнального элемента внутри квадранта с вариацией амплитуды. Таким образом, DPSK можно рассматривать как частный случай QAM, где два последних бита не меняют своих значений. В результате из шестнадцати позиций выбираются четыре в разных квадрантах, но с одинаковым положением внутри квадранта, в том числе и с одинаковой амплитудой. Протокол V.22bis является стандартом де-факто для всех среднескоростных модемов.

Это дуплексный протокол с эхо-подавлением и квадратурной амплитудной модуляцией или модуляцией с решетчатым кодированием. Частота несущего сигнала - 1800 Гц, модуляционная скорость - 2400 бод. Таким образом, используется спектр шириной от 600 до 3000 Гц. Имеет режимы двухпозиционной (бит), четырехпозиционной (дибит) и шестнадцатипозиционной (квадробит) QAM. Соответственно, информационная скорость может быть 2400, 4800 и 9600 бит/с. Кроме того, для скорости 9600 бит/с имеет место альтернативная модуляция - 32-позиционная TCM.

Это дуплексный протокол с эхо-подавлением и модуляцией TCM. Используются те же, что в V.32, частота несущего сигнала - 1800 Гц, и модуляционная скорость - 2400 бод. Имеет режимы 16-TCM, 32-TCM, 64-TCM и 128-TCM. Соответственно, информационная скорость может быть 7200, 9600, 12000 и 14400 бит/с. Режим 32-TCM полностью совместим с соответствующим режимом V.32. Протокол V.32bis является стандартом де-факто для всех скоростных модемов.

Экзотические модемные протоколы ITU-T

Это полудуплексный протокол с частотной модуляцией FSK. В нем имеется два скоростных режима: 600 бит/с и 1200 бит/с. Модуляционная и информационная скорости равны: соответственно, 600 и 1200 бод. В обоих режимах "1" передается частотой 1300 Гц. В режиме 600 бит/с "0" передается частотой 1700 Гц, а в режиме 1200 бит/с - частотой 2100 Гц. Реализация протокола опционально может включать обратный канал, работающий на скорости 75 бит/с, что превращает протокол в асимметричный дуплексный. Частота передачи "1" в обратном канале - 390 Гц, "0" - 450 Гц. Этот протокол практически вышел из употребления в качестве стандартного протокола межмодемной связи, и далеко не всякий стандартный модем им оснащен. Однако, он служил и до сих пор остается базовым для реализации нестандартных модемов, получивших широкое распространение в нашей стране (типа LEXAND). Видимо, благодаря простоте, высокой помехоустойчивости и приличной (по сравнению с V.21) скорости. Кроме того, в ряде европейских стран этот протокол применяется в информационной системе Videotex.

V.26, V.26bis, V.26ter

Эти три протокола объединяет тип модуляции - DPSK, частота несущей - 1800 Гц и модуляционная скорость - 1200 бод. Разница между ними заключается в возможности и способах обеспечения дуплексной связи и в информационной скорости. V.26 обеспечивает дуплекс только по четырехпроводной выделенной линии, V.26bis - это полудуплексный протокол, предназначенный для работы по двухпроводной коммутируемой линии, а V.26ter обеспечивает полный дуплекс с помощью технологии эхо-подавления. Кроме того, первые два протокола могут быть асимметричными дуплексными, опционально включая обратный канал, работающий на скорости 75 бит/с в соответствии с V.23. Все три протокола обеспечивают скорость передачи информации 2400 бит/с посредством четырехпозиционной (дибит) DPSK. V.26bis и V.26ter, кроме того, имеют режим двухпозиционной (бит) DPSK, обеспечивая скорость 1200 бит/с.

В этом протоколе используется модуляция с решетчатым кодированием TCM. Он предназначен для обеспечения дуплексной связи на четырехпроводных выделенных каналах. Имеет частоту несущего сигнала 1800 Гц, и модуляционную скорость 2400 бод. Работает в режимах 64-TCM и 128-TCM. Соответственно, информационная скорость может быть 12000 и 14400 бит/с. Этот протокол очень напоминает V.32bis без эхо-подавления. Более того, если модем с протоколом V.33 установить на четырехпроводное окончание до дифференциальной системы АТС, то он вполне сможет связаться с удаленным модемом V.32bis, установленным на двухпроводной линии.

Общеупотребительные факс-протоколы ITU-T

В этом протоколе применяется фазоразностная модуляция с частотой несущего сигнала 1800 Гц. Могут использоваться два режима с разными информационными скоростями: 2400 и 4800 бит/с. Информационная скорость 2400 бит/с достигается модуляционной скоростью 1200 бод и кодированием дибита (4-позиционный DPSK), а 4800 бит/с - скоростью 1600 бод и кодированием трибита (8-позиционный DPSK). Стоит отметить, что существуют еще малоупотребительные модемные протоколы данного семейства - V.27 и V.27bis, которые отличаются от V.27ter, главным образом, типом канала (выделенный четырехпроводный), для которого они предназначены.

В этом протоколе применяется квадратурная амплитудная модуляция. Частота несущего сигнала - 1700 Гц, модуляционная скорость - 2400 бод. Имеет режимы 8-позиционной (трибит) и 16-позиционной (квадробит) QAM. Соответственно, информационная скорость может быть 7200 и 9600 бит/с.

Этот протокол по своим параметрам очень напоминает V.32bis. В нем используется модуляция с решетчатым кодированием. Частота несущего сигнала - 1800 Гц, и модуляционная скорость - 2400 бод. Имеет режимы 16-TCM, 32-TCM, 64-TCM и 128-TCM. Соответственно, информационная скорость может быть 7200, 9600, 12000 и 14400 бит/с.

Нестандартные модемные протоколы

Этот протокол, разработанный фирмой AT&T, является открытым для реализации разработчиками модемов. В частности, помимо БИС фирмы AT&T, данный протокол реализован в некоторых модемах фирмы U. S.Robotics. Протокол фактически является механическим развитием технологии V.32bis: дуплекс с эхо-подавлением, модуляция с решетчатым кодированием, модуляционная скорость - 2400 бод, несущая - 1800 Гц, расширение информационных скоростей значениями 16800 и 19200 бит/с за счет 256-TCM и 512-TCM. Следствием такого подхода является весьма жесткие требования, предъявляемые данным протоколом к линии. Так, например, для устойчивой работы на скорости 19200 бит/с отношение сигнал/шум должно быть не менее 30 dB.

Протокол разработан фирмой ZyXEL Coммunications Corporation и реализован в собственных модемах. Этот протокол также, как и V.32terbo, расширяет V.32bis значениями информационных скоростей 16800 и 19200 бит/с с сохранением технологии эхо-подавления, модуляции с треллис-кодированием и несущей 1800 Гц. Модуляционная же скорость 2400 бод сохраняется лишь для 16800 бит/с. Скорость 19200 бит/с обеспечивается повышением модуляционной скорости до 2743 бод при сохранении режима модуляции 256-TCM для обоих скоростей. Такое решение позволяет снизить требование к отношению сигнал/шум на линии на 2.4 dB, однако расширение полосы пропускания может негативно сказываться при больших искажениях амплитудно-частотной характеристики канала.

Протокол HST (High Speed Technology) разработан фирмой U. S.Robotics и реализован в модемах фирмы серии Courier. Это асимметричный дуплексный протокол с частотным разделением каналов. Обратный канал имеет режимы 300 и 450 бит/с. Основной канал - 4800, 7200, 9600, 12000, 14400 и 16800 бит/с. Применяется модуляция с решетчатым кодированием и модуляционной скоростью 2400 бод. Характеризуется сравнительной простотой и высокой помехоустойчивостью вследствие отсутствия необходимости в эхо-компенсации и отсутствия же взаимовлияния каналов.

Полудуплексные протоколы семейства PEP (Packetized Ensemble Protocol) разработаны фирмой Telebit и реализованы в модемах фирмы серий TrailBlazer (PEP) и WorldBlazer (TurboPEP). В этих протоколах принципиально иным образом используется вся полоса пропускания канала тональной частоты для высокоскоростной передачи данных. Весь канал разбивается на множество узкополосных частотных подканалов, по каждому из которых независимо передается своя порция бит из общего потока информации. Такого рода протоколы называют многоканальными, или параллельными, или протоколами с множеством несущих (multicarrier). В протоколе PEP канал разбивается на 511 подканалов. В каждом подканале шириной около 6 Гц с модуляционной скоростью от 2 до 6 бод с помощью квадратурной амплитудной модуляции кодируются от 2 до 6 бит на бод. Имеется несколько степеней свободы для обеспечения максимальной пропускной способности каждого конкретного канала, имеющего свои характеристики по части искажений и помеховой обстановки. В процессе установки соединения каждый частотный подканал независимо тестируется и определяется возможность его использования, а также параметры: модуляционная скорость подканала и число позиций модуляции. Максимальная скорость передачи по протоколу PEP может достигать 19200 бит/с. В процессе сеанса при ухудшении помеховой обстановки параметры подканалов могут меняться, а некоторые подканалы - отключаться. При этом декремент понижения скорости не превышает 100 бит/с. Протокол TurboPEP за счет увеличения числа подканалов, а также количества кодируемых на одном бодовом интервале бит, может достигать скорости 23000 бит/с. Кроме того, в протоколе TurboPEP применяется модуляция с треллис-кодированием, что увеличивает помехоустойчивость протокола.

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

И, напоследок

Практически полное отсутствие упоминания о последних достижениях в области сверхскоростной передачи данных по телефонным каналам - проекты V. fast разных фирм, V. FC фирмы Rockwell International и, наконец, Рекомендация V.34 ITU-T - в обзоре модемных протоколов физического уровня может показаться вызывающим. Однако, если лишь только слегка затронуть тему V.34, выяснится, что это не просто очередной шаг на пути увеличения скорости модемной связи, а огромный революционный прорыв в стремлении выбрать все резервы канала тональной частоты. Прорыв, некоторым образом, в мировоззрении, демонстрирующий общесистемный подход к проблеме, и опирающийся на резкий технологический скачок в инструментальных средствах, что позволяет приблизиться максимально близко к теоретическому пределу Шеннона. И потому тема эта достойна отдельной статьи...

Александр Пасковатый, "Аналитик-ТелекомСистемы"

Протокол RS-232.

Существует несколько протоколов физического уровня, которые ориентированы на работы с портами типа UART. Один из таких протоколов – RS-232.

Аббревиатура RS означает Recommended standard (то есть де-юро он стандартом не является). Протокол RS-232 определяет физический уровень протокола, который часто используется совместно с UART (то есть использует для передачи асинхронный старт-стопный режим, способ физического кодирования NRZ). Основные характеристики RS-232:

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

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

· Максимальная длина провода – 15,25 м. для скорости передачи 19,2 Кбит/с.

· Уровни напряжений сигнала на выходе передатчика: сигнал двуполярный, логической “1” соответствует напряжение -5 ¸ -15 В., логическому “0” - +5 ¸ +15 В.

· Минимальные уровни напряжения на входе приемника ±3 В.

· Ток в линии – 500 ма (на самом деле выпускаемые драйверы RS-232 допускают ток в пределах 10 ма).

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

Протокол RS-485.

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

Основные характеристики:

· среда передачи данных – всегда витая пара. Обычно используется 1 пара (полудуплексный режим), возможно использование 2-х пар (полнодуплексный режим, не являющийся стандартным). Линии пары также маркируются буквами A и B. Рекомендуется использование экранированной витой пары;

· способ передачи – полудуплексный (при использовании одной пары) либо полнодуплексный (при использовании двух пар). В последнем случае режим связи аналогичен режиму RS-422.

· максимальная дальность передачи – 1220 м на скорости 100 кбит/с;

· максимальная скорость передачи – 10 Мбит/с на расстояние до 15 м;

· сигнал передатчика двуполярный. Соотношения потенциалов линий A и B: состояние 0 – A>B, состояние 1 – B>A. Разность потенциалов A и B должна составлять 1,5 – 5 В, уровень тока в линии – до 250 ма.

Изначально протокол предусматривал подключение к одной линии до 32 устройств, но производители драйверов линии увеличили это количество до 128-256.

1.3.3. Уровни сетевого взаимодействия Физический уровень (Physical Layer)

Физический уровень передает биты по физическим каналам связи, например,

Коаксиальному кабелю или витой паре. То есть, именно этот уровень непосредственно производит передачу данных. На этом уровне определяются характеристики электрических сигналов, которые передают дискретную информацию, например: тип кодирования, скорость летрецдндл сне каков. К. этому уровню также относятся, характеристики физических сред передачи данных: полоса пропускания, волновое сопротивление, помехозащищенность. Функции физического уровня реализуются сетевым адаптером или последовательным портом. Примером протокола физического уровня может послужить спецификация 100Base-TX (технология Ethernet ).

Канальный уровень (Data link Layer )

Канальный уровень отвечает за передачу данных между узлами в рамках одной локальной сети. При этом под узлом понимается любое устройство, подключенное к сети. Этот уровень выполняет адресацию по физическим адресам (МАС -адресам), «вшитым» в сетевые адаптеры предприятием-изготовителем. Каждый сетевой адаптер имеет свой уникальный МАС -адрес, то есть вы не найдете две сетевые платы с одним и тем же МАС -адресом.Канальный уровень переводит поступившую с верхнего уровня информацию в биты, которые потом будут переданы физическим уровнем по сети. Он разбивает пересылаемую информацию на фрагменты данных - кадры (frames) . На этом уровне открытые системы обмениваются именно кадрами. Процесс пересылки выглядит примерно так: канальный уровень отправляет кадр физическому уровню, который отправляет кадр в сеть. Этот кадр получает каждый узел сети и проверяет, соответствует ли адрес пункта назначения адресу этого узла. Если адреса совпадают, канальный уровень принимает кадр и передает наверх вышележащим уровням. Если же адреса не совпадают, то он просто игнорирует кадр. Таким образом, сеть на канальном уровне является широковещательной. В используемых в локальных сетях протоколах канального уровня заложена определенная топология. Топологией называется способ организации физических связей и способы их адресации. Канальный уровень обеспечивает доставку данных между узлами в сети с определенной топологией, то есть для которой он разработан. К основным топологиям (см. рис. 1.4) относятся:

Рис 1.4.

  1. Общая шина
  2. Кольцо
  3. Звезда.
Протоколы канального уровня используются компьютерами, мостами, маршрутизаторами. Глобальные сети (в том числе и Интернет) редко обладают регулярной топологией, поэтому канальный уровень обеспечивает связь только между компьютерами, соединенными индивидуальной линией связи. Для доставки данных через всю глобальную сеть используются средства сетевого уровня (протоколы «точка-точка»). Примерами протоколов «точка-точка» могут послужить РРР, LAP-B . О них речь пойдет далее.

Сетевой уровень (Network Layer)

Данный уровень служит для образования единой транспортной системы, которая объединяет несколько сетей. Другими словами, сетевой уровень обеспечивает межсетевое взаимодействие. Протоколы канального уровня передают кадры между узлами только в рамках сети с соответствующей топологией. Проще говоря - в рамках одной сети. Нельзя передать кадр канального уровня узлу, который находится в другой сети. Данное ограничение не позволяет строить сети с развитой структурой или сети с избыточностью связей, а именно такой сетью является Интернет. Построить одну большую сеть на канальном уровне также невозможно из-за физических ограничений. И хотя, например, спецификация lOBase-T позволяет использовать 1024 узла в одном сегменте, производительность данной сети не будет вас радовать, так как на канальном уровне сеть является широковещательной. То есть пакет данных (кадр) отсылается сразу всем компьютерам в сети. Если в сети немного компьютеров и быстрый канал связи, то это не страшно, нагрузка не будет критичной. А есликомпьютеров сети очень много (1024), то нагрузка на сеть будет очень велика, а это, в свою очередь, скажется на быстродействии сетевого взаимодействия. Все это приводит к необходимости другого решения для больших сетей. Именно такое решение и призван реализовать сетевой уровень. На сетевом уровне термин сеть следует понимать как совокупность компьютеров, которые соединены в соответствии с одной из основных топологий и использующих для передачи данных один из протоколов канального уровня. Сети соединяются специальными устройствами - маршрутизаторами. Маршрутизатор собирает информацию о топологии межсетевых соединений и на основании этой информации пересылает пакеты сетевого уровня в сеть назначения. Чтобы передать сообщение от компьютера-отправителя компьютеру-адресату, который находится в другой сети, нужно совершить некоторое количество транзитных передач между сетями. Иногда их еще называют хоплми (от англ, hop - прыжок). При этом каждый раз выбирается подходящий маршрут. Сообщения HI "сетевом уровне называются пакетами. При этом на сетевом уровне работают несколько видов протоколов. Прежде всего, это сетевые протоколы, которые обеспечивают передвижение пакетов по сети, в том числе в другую сеть. Поэтому довольно часто к сетевому уровню относят протоколы маршрутизации (routing protocols) - RIP и OSPF . Еще одним видом протоколов, работающтх на сетевом уровне, являются протоколы разрешения адреса - Address Resolution Protocol (ARP) . Хотя эти протоколы иногда относят и к канальному уровню. Классические примеры протоколов сетевого уровня: IP (стек TCP/IP), IPX (стек Novell).

Транспортный уровень (Transport Layer)

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

  1. Срочность;
  2. Восстановление прерванной связи
  3. Наличие средств мультиплексирования нескольких соединений;
  4. Обнаружение ошибок;
  5. Исправление ошибок.
Обычно уровни модели OSI, начиная с транспортного уровня и выше, реализуются на программном уровне соответствующими компонентами операционных систем. Примеры протоколов транспортного уровня: TCP и UDP (стек TCP/IP), SPX (стек Novell).

Сеансовый уровень (Session Layer)

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

  1. Установление соединения. Здесь узлы «договариваются» между собой о протоколах и параметрах связи.
  2. Передача информации.
  3. Разрыв связи.
Не нужно путать сеанс сетевого уровня с сеансом связи. Пользователь может установить соединение с Интернетом, но не устанавливать ни с кем логического соединения, то есть не принимать и не передавать данные.

Представительный уровень (Presentation Layer)

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

Прикладной уровень (Application Layer)

Данный уровень представляет собой набор разнообразных протоколов, с помощью которых пользователи сети получают доступ к совместно используемым ресурсам. Единица данных называется сообщением. Примеры протоколов: HTTP, FTP, TFTP, SMTP, POP, SMB, NFS.

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

Первыми технологиями построения ЛВС, получившими коммерческое признание, были патентованные решения ARCNET (Attached Resource Computer NETwork ) и Token ring (маркерное кольцо), однако в начале 90-х годов прошлого века они постепенно были практически повсеместно вытеснены сетями на базе семейства протоколов Ethernet .

Этот протокол был разработан Исследовательским центром в Пало Альто (PARC) корпорации Xerox в 1973-м году. В 1980 компании Digital Equipment Corporation, Intel Corporation и Xerox Corporation совместно разработали и приняли спецификацию Ethernet (Version 2.0). Тогда же в институте IEEE (Institute of Electrical and Electronics Engineers) был организован комитет 802 по стандартизации локальных сетей, в результате работы которого было принято семейство стандартов IEEE 802.x, которые содержат рекомендации по проектированию нижних уровней локальных сетей. В это семейство входят несколько групп стандартов:

802.1 - объединение сетей.

802.2 - Управление логической связью.

802.3 - ЛВС с множественным доступом, контролем несущей и обнаружением коллизий (Ethernet).

802.4 - ЛВС топологии «шина» с передачей маркера.

802.5 - ЛВС топологии «кольцо» с передачей маркера.

802.6 - сеть масштаба города (Metropolitan Area Network, MAN).

802.7 - Консультативный совет по широковещательной технологии (Broadcast Technical Advisory Group).

802.8 -- Консультативный совет по оптоволоконной технологии (Fiber-Optic Technical Advisory Group).

802.9 - Интегрированные сети с передачей речи и данных (Integrated Voice/Data Networks).

802.10 - Безопасность сетей.

802.11 - Беспроводная сеть.

802.12 - ЛВС с доступом по приоритету запроса (Demand Priority Access LAN,

lOObaseVG-AnyLan).

802.13 – номер не был использован!!!

802.14 – Передача данных по сетям кабельного TV (не активна с 2000 г.)

802.15 - Беспроводные персональные сети (WPAN) например Bluetooth, ZigBee, 6loWPAN

802.16 - Беспроводные сети WiMAX (W orldwide I nteroperability for M icrowave A cce s s , по-русски читается вайма́кс )

802.17 называется RPR (Resilient Packet Ring - адаптивное кольцо для пакетов). Разрабатывается с 2000 года в качестве современной магистральной сети городского масштаба.

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

Ethernet (802 .3) - ЛВС с множественным доступом, контролем несущей и обнаружением коллизий.

На сегодняшний день Ethernet является наиболее распространенными протоколами локальных вычислительных сетей. Причем спецификация IEEE 802.3 на сегодняшний день описывает несколько вариантов физической реализации ЛВС с разными средами передачи и скоростями передачи данных.

Базовым свойством, объединяющим все эти спецификации является метод управления доступом к среде передачи данных. Для Ethernet это множественный доступ с контролем несущей и обнаружением коллизий (CSMA/CD, Carrier Sense Multiple Access with Collision Detection). В сети Ethernet все узлы равноправны, нет какого либо централизованного управления их активностью или разграничения полномочий (как, например в Token ring). Каждый узел непрерывно прослушивает среду передачи и анализирует содержимое всех пакетов данных, если пакет предназначен не данному узлу, он ему не интересен и на верхние уровни не передается. Проблемы обычно возникают при передаче, поскольку никто не гарантирует, что два узла не попытаются вести передачу одновременно (в результате в кабеле возникнет невоспринимаемая суперпозиция двух сигналов). Для предотвращения таких ситуаций (коллизий ) каждый узел прежде чем начать передачу убеждается в отсутствии в кабеле сигналов от других сетевых устройств (контроль несущей ). Но этого не достаточно для предотвращения коллизий из-за ограниченности скорости распространения сигнала в среде передачи. Возможна ситуация, что какой-то другой узел уже начел передачу, просто сигнал от него еще не достиг рассматриваемого нами устройства. Т.е в сети Ethernet возможны и являются штатными ситуации когда два или более узла одновременно пытаются передавать данные мешая друг другу. Процедура разрешения такой коллизии заключается в том, что обнаружив в процессе передачи присутствие в кабеле чужого сигнала, все попавшие в такую ситуацию узлы прекращают передачу и предпринимают попытки возобновить её через различные интервалы времени.

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

Рассмотрим подробнее процедуру обнаружения коллизии и взаимозависимость допустимых размеров сети от скорости передачи данных и длины информационных пакетов, передаваемых по сети. Содержимое и внутреннее устройство кадров Ethernet мы будем разбирать на канальном уровне. Пока мы просто будем учитывать, что при скорости распространения сигнала в проводнике около 200 000 000 м/с при работе сетевого адаптера Ethernet IEEE 802.3 со скоростью передачи данных 10 Мбит/с на отправку одного байта уходит 0,8 мкс и он представляет из себя волновой пакет длиной около 150 м.

Теперь еще раз вернёмся к рисунку. Чтобы рабочая станция «А» узнала, что в процессе передачи имела место коллизия, суперпозиция «столкнувшихся» сигналов должна достичь её до того, как будет завершена передача. Это накладывает ограничения на возможную минимальную длину отправляемых пакетов. Действительно, если использовать пакеты короче чем длина кабеля между рабочими станциями «А» и «В», возможна ситуация, когда пакет полностью отправлен первой станцией (и она уже решила, что передача прошла успешно), а он еще даже не дошел до второй, и она имеет полное право начинать передавать свои данные в любой момент времени. Нетрудно убедиться, что избежать подобных недоразумений можно только используя пакеты такой длины, что за время их передачи сигнал успевает добежать до самой удаленной станции и вернуться обратно.

При скорости передачи данных в 10 Мбит/с эта проблема не играла существенной роли и минимальная длина кадра была ограничена размером 64 байта. За время их передачи первые биты успевают пробежать около 10 км, и для сетей с максимальной длиной сегмента в 500 м. все необходимые условия оказываются выполненными.

При переходе к 100 Мбит/с длина минимального кадра сократиться в 10 раз. Это существенно ужесточает параметры работы сети и максимальное расстояние между станциями было сокращено до 100 м.

При скорости 1000 Мбит/с 64 байта передаются всего за 0,512 мкс и поэтому в гигабитных сетях пришлось увеличить минимальную длину кадра в 8 раз до 512 байт. Если данных для наполнения кадра не хватает, сетевой адаптер просто дополняет его специальной последовательностью символов до этой длины. Этот приём называется «расширением носителя».

Решая проблему обнаружения коллизий, расширение носителя впустую расходует полосу пропускания канала передачи данных при передаче маленьких пакетов. Чтобы уменьшить влияние этого фактора в гигабитном Ethernet адаптеру разрешено при наличии нескольких готовых к передаче коротких кадров формировать из них определённым образом один общий кадр «нормальной» длины до 1518 байт.

Более того, было предложено допустить использование кадров большей длины, чем в предыдущих стандартах Ethernet. Это предложение было реализовано в виде так называемых “jumbo” - кадров длиной до 9018 или даже более байт.

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

Характеристики

Скорость, Mbps

Макс. длина сегмента, м

Среда передачи

50-Ом коаксиал (толстый)

ВОК 1270 нм

ВОК, 830, 1270 нм

Топология

Тип передачи

полудуплекс

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

TokenRing (IEEE 802.5)

Сеть Token Ring была представлена фирмой IBM в 1984 г., как часть предложенного ею способа объединить в сеть весь ряд выпускаемых IBM компьютеров и компьютерных систем. В 1985 комитет IEEE 802 на основе этой технологии принял стандарт IEEE 802.5. Принципиальное отличие от Ethernet - детерминированный мет од доступа к среде в предопределенном порядке. Реализован доступ с передачей маркера (применяемый также в сетях ARCnet, и FDDI).

Кольцевая топология означает упорядоченную передачу информации от одной станции к другой в одном направлении, строго по порядку включения. Кольцевая логическая топология реализуется на основе физиче­ской звезды, в центре которой находится много станционное устройство доступа устройство (MSAU - Multi-Station Access Unit).

В любой момент време­ни передачу данных может вести только одна станция, захватившая маркер до ступа (token). При передаче данных в заголовке маркера делается отметка о занятости, и маркер превращается в обрамление начала кадра. Остальные станции побитно транслируют кадр от предыдущей (upstream) станции к последующей (downstream). Станция, которой адресован текущий кадр, сохраняет его копию в своем буфере для последующей обработки и транслирует его далее по кольцу, сделав отметку о получении. Таким образом кадр по кольцу достигает передаю­щей станции, которая удаляет его из кольца (не транслирует дальше). Когда станция заканчивает передачу, она помечает маркер как свободный и передает его дальше по кольцу. Время, в течение которого станция имеет право пользоваться маркером, регламентировано. Захват маркера осуществляется на основе приоритетов, назначаемых станциям.

С ростом активности узлов полоса пропускания, достающаяся каждому из узлов, сужается, но обвальной деградации производительности (как в Ethernet) не происходит. Кроме того, механизм приоритетов и ограничения на время владения маркером позволяют привилегированным узлам выделять га­рантированную полосу пропускания независимо от общей загрузки сети. Количество узлов в одном кольце не должно превышать 260 (сегмент Ethernet теорети­чески допускает 1024 узла). Скорость передачи 16 Мбит/с, размер кадра может достигать 18,2 Кбайт.

Предельное время передачи пакета в Token-Ring 10 мс. При максимальном количестве абонентов 260 полный цикл работы кольца составит 260 x 10 мс = 2,6 с. За это время все 260 абонентов смогут передать свои пакеты (если, конечно, им есть чего передавать). За это же время свободный маркер обязательно дойдет до каждого абонента. Этот же интервал является верхним пределом времени доступа Token-Ring

Александр Горячев, Алексей Нисковский

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

Существует эталонная модель взаимодействия открытых систем (Open System Interconnection Reference Model), часто называемая моделью OSI. Эта модель разработана Международной организацией по стандартизации (International Organization for Standardization, ISO). Модель OSI описывает схему взаимодействия сетевых объектов, определяет перечень задач и правила передачи данных. Она включает в себя семь уровней: физический (Physical - 1), канальный (Data-Link - 2), сетевой (Network - 3), транспортный (Transport - 4), сеансовый (Session - 5), представления данных (Presentation - 6) и прикладной (Application - 7). Считается, что два компьютера могут взаимодействовать друг с другом на конкретном уровне модели OSI, если их программное обеспечение, реализующее сетевые функции этого уровня, одинаково интерпретирует одни и те же данные. В этом случае устанавливается прямое взаимодействие между двумя компьютерами, называемое «точка-точка».

Реализации модели OSI протоколами называются стеками (наборами) протоколов. В рамках одного конкретного протокола невозможно реализовать все функции модели OSI. Обычно задачи конкретного уровня реализуются одним или несколькими протоколами. На одном компьютере должны работать протоколы из одного стека. При этом компьютер одновременно может использовать несколько стеков протоколов.

Рассмотрим задачи, решаемые на каждом из уровней модели OSI.

Физический уровень

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

Реализации протоколов физического уровня модели OSI координируют правила передачи битов.

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

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

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

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

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

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

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

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

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

Канальный уровень

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

Протоколами канального уровня определяются:

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

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

С канальным уровнем обычно связаны следующие сетевые соединительные устройства:

  • мосты;
  • интеллектуальные концентраторы;
  • коммутаторы;
  • сетевые интерфейсные платы (сетевые интерфейсные карты, адаптеры и т.д.).

Функции канального уровня подразделяются на два подуровня (табл. 1):

  • управление доступом к среде передачи (Media Access Control, MAC);
  • управление логическим соединением (Logical Link Control, LLC).

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

Аббревиатура MAC также используется при определении физического адреса сетевого устройства: физический адрес устройства (который определяется внутри сетевого устройства или сетевой карты на этапе производства) часто называют MAC-адресом этого устройства. Для большого количества сетевых устройств, особенно сетевых карт, существует возможность программно изменить MAC-адрес. При этом необходимо помнить, что канальный уровень модели OSI накладывает ограничения на использование MAC-адресов: в одной физической сети (сегменте большей по размеру сети) не может быть двух или более устройств, использующих одинаковые MAC-адреса. Для определения физического адреса сетевого объекта может быть использовано понятие «адрес узла» (node address). Адрес узла чаще всего совпадает с MAC-адресом или определяется логически при программном переназначении адреса.

Подуровень LLC определяет правила синхронизации передачи и сервиса соединений. Этот подуровень канального уровня тесно взаимодействует с сетевым уровнем модели OSI и отвечает за надежность физических (с использованием MAC-адресов) соединений. Логическая топология (logical topology) сети определяет способ и правила (последовательность) передачи данных между компьютерами в сети. Сетевые объекты передают данные в зависимости от логической топологии сети. Физическая топология определяет физический путь данных; при этом в некоторых случаях физическая топология не отражает способ функционирования сети. Фактический путь данных определяется логической топологией. Для передачи данных по логическому пути, который может отличаться от пути в физической среде, используются сетевые устройства подключения и схемы доступа к среде передачи. Хороший пример различий между физической и логической топологиями - сеть Token Ring фирмы IBM. В локальных сетях Token Ring часто используется медный кабель, который прокладывается в звездообразную схему с центральным разветвителем (хабом). В отличие от нормальной звездообразной топологии хаб не пересылает входящие сигналы всем другим подключенным устройствам. Внутренняя схема хаба последовательно отправляет каждый входящий сигнал следующему устройству в заранее предопределенном логическом кольце, то есть по круговой схеме. Физической топологией этой сети является звезда, а логической - кольцо.

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

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

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

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

Доступ к среде передачи

Логические топологии используют специальные правила, управляющие разрешением на передачу информации другим сетевым объектам. Процесс управления контролирует доступ к среде передачи данных. Рассмотрим сеть, в которой всем устройствам позволено функционировать безо всяких правил получения доступа к среде передачи. Все устройства в такой сети передают информацию по мере готовности данных; эти передачи могут иногда накладываться во времени. В результате наложения сигналы искажаются, происходит потеря передаваемых данных. Такая ситуация называется коллизией (collision). Коллизии не позволяют организовать надежную и эффективную передачу информации между сетевыми объектами.

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

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

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

Перед тем как выбрать протокол, в котором реализован один из этих методов доступа к среде передачи данных, следует обратить особое внимание на следующие факторы:

  • характер передач - непрерывный или импульсный;
  • количество передач данных;
  • необходимость передачи данных в строго определенные интервалы времени;
  • количество активных устройств в сети.

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

Состязание. Системы на основе состязания (конкуренции) предполагают, что доступ к среде передачи реализуется на основе принципа «первый пришел - первым обслужен». Другими словами, каждое сетевое устройство борется за контроль над средой передачи. Системы, использующие метод состязания, разработаны таким образом, чтобы все устройства в сети могли передавать данные лишь по мере необходимости. Эта практика в конечном счете приводит к частичной или полной потере данных, потому что в действительности происходят коллизии. По мере добавления к сети каждого нового устройства количество коллизий может возрастать в геометрической прогрессии. Увеличение количества коллизий снижает производительность сети, а в случае полного насыщения среды передачи информации - снижает работоспособность сети до нуля.

Для снижения количества коллизий разработаны специальные протоколы, в которых реализована функция прослушивания среды передачи информации до начала передачи данных станцией. Если прослушивающая станция обнаруживает передачу сигнала (от другой станции), то она воздерживается от передачи информации и будет пытаться повторить ее позже. Эти протоколы называются протоколами множественного доступа с контролем несущей (Carrier Sense Multiple Access, CSMA). Протоколы CSMA значительно снижают число коллизий, но не устраняют их полностью. Коллизии тем не менее происходят, когда две станции опрашивают кабель: не обнаруживают никаких сигналов, решают, что среда передачи данных свободна, а затем одновременно начинают передачу данных.

Примерами таких состязательных протоколов являются:

  • множественный доступ с контролем несущей/обнаружением коллизий (Carrier Sense Multiple Access/Collision Detection, CSMA/CD);
  • множественный доступ с контролем несущей/предотвращением коллизий (Carrier Sense Multiple Access/Collision Avoidance, CSMA/CA).

Протоколы CSMA/CD. Протоколы CSMA/CD не только прослушивают кабель перед передачей, но также обнаруживают коллизии и инициализируют повторные передачи. При обнаружении коллизии станции, передававшие данные, инициализируют специальные внутренние таймеры случайными значениями. Таймеры начинают обратный отсчет, и при достижении нуля станции должны попытаться повторить передачу данных. Поскольку таймеры были инициализированы случайными значениями, то одна из станций будет пытаться повторить передачу данных раньше другой. Соответственно, вторая станция определит, что среда передачи данных уже занята, и дождется ее освобождения.

Примерами протоколов CSMA/CD являются Ethernet version 2 (Ethernet II, разработанный в корпорации DEC) и IEEE802.3.

Протоколы CSMA/CA. CSMA/CA использует такие схемы, как доступ с квантованием времени (time slicing) или посылка запроса на получение доступа к среде. При использовании квантования времени каждая станция может передавать информацию только в строго определенные для этой станции моменты времени. При этом в сети должен реализовываться механизм управления квантами времени. Каждая новая станция, подключаемая к сети, оповещает о своем появлении, тем самым инициируя процесс перераспределения квантов времени для передачи информации. В случае использования централизованного управления доступом к среде передачи каждая станция формирует специальный запрос на передачу, который адресуется к управляющей станции. Центральная станция регулирует доступ к среде передачи для всех сетевых объектов.

Примером CSMA/CA является протокол LocalTalk фирмы Apple Computer.

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

Системы с передачей маркера. В системах с передачей маркера (token passing) небольшой фрейм (маркер) передается в определенном порядке от одного устройства к другому. Маркер - это специальное сообщение, которое передает временное управление средой передачи устройству, владеющему маркером. Передача маркера распределяет управление доступом между устройствами сети.

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

Имеется несколько протоколов передачи маркера. Двумя стандартами сетей, использующими передачу маркера, являются IEEE 802.4 Token Bus и IEEE 802.5 Token Ring. В сети Token Bus используется управление доступом с передачей маркера и физическая или логическая шинная топология, в то время как в сети Token Ring используется управление доступом с передачей маркера и физическая или логическая кольцевая топология.

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

Опрос. Опрос (polling) - это метод доступа, при котором выделяется одно устройство (называемое контроллером, первичным, или «мастер»-устройством) в качестве арбитра доступа к среде. Это устройство опрашивает все остальные устройства (вторичные) в некотором предопределенном порядке, чтобы узнать, имеют ли они информацию для передачи. Чтобы получить данные от вторичного устройства, первичное устройство направляет ему соответствующий запрос, а затем получает данные от вторичного устройства и направляет их устройству-получателю. Затем первичное устройство опрашивает другое вторичное устройство, принимает данные от него, и так далее. Протокол ограничивает количество данных, которое может передать после опроса каждое вторичное устройство. Опросные системы идеальны для сетевых устройств, чувствительных ко времени, например, при автоматизации оборудования.

Этот уровень также обеспечивает сервис соединений. Существует три типа сервиса соединений:

  • сервис без подтверждения и без установления соединений (unacknowledged connectionless) - посылает и получает фреймы без управления потоком и без контроля ошибок или последовательности пакетов;
  • сервис, ориентированный на соединение (connection-oriented), - обеспечивает управление потоком, контроль ошибок и последовательности пакетов посредством выдачи квитанций (подтверждений);
  • сервис с подтверждением без установления соединения (acknowledged connectionless) - использует квитанции для управления потоком и контроля ошибок при передачах между двумя узлами сети.

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

Сетевой уровень

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

Главной целью сетевого уровня является решение задачи перемещения (доставки) данных в заданные точки сети. Доставка данных на сетевом уровне в общем-то похожа на доставку данных на канальном уровне модели OSI, где для передачи данных используется физическая адресация устройств. Однако адресация на канальном уровне относится только к одной логической сети, действует только внутри этой сети. Сетевой уровень описывает методы и средства передачи информации между многими независимыми (и часто разнородными) логическими сетями, которые, соединенные вместе, формируют одну большую сеть. Такая сеть называется объединенной сетью (internetwork), а процессы передачи информации между сетями - межсетевым взаимодействием (internetworking).

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

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

Элементы и методы реализации сетевого уровня определяются следующим:

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

На этом уровне модели OSI работают маршрутизаторы и некоторые из коммутаторов.

Сетевой уровень определяет правила формирования логических адресов (logical network address) сетевых объектов. В рамках большой объединенной сети каждый сетевой объект должен обладать уникальным логическим адресом. В формировании логического адреса участвуют два компонента: логический адрес сети, который является общим для всех объектов сети, и логический адрес сетевого объекта, который является уникальным для этого объекта. При формировании логического адреса сетевого объекта может либо использоваться физический адрес объекта, либо определяться произвольный логический адрес. Использование логической адресации позволяет организовать передачу данных между разными логическими сетями.

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

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

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

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

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

Коммутация сообщений позволяет передавать целое (неразбитое на части) сообщение по принципу «сохранить и передать дальше» (store-and-forward). Каждое промежуточное устройство принимает сообщение, локально его сохраняет и при освобождении канала связи, по которому это сообщение должно быть отправлено, отправляет его. Этот метод хорошо подходит для передачи сообщений электронной почты и организации электронного документооборота.

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

Каждый раз при определении дальнейшего пути для данных необходимо выбрать наилучший маршрут. Задача определения наилучшего пути называется маршрутизацией (routing). Эту задачу выполняют маршрутизаторы (router). Задача маршрутизаторов - определение возможных путей передачи данных, поддержание маршрутной информации, выбор наилучших маршрутов. Маршрутизация может осуществляться статическим либо динамическим способом. При задании статической маршрутизации должны быть заданы все взаимосвязи между логическими сетями, которые остаются неизменными. Динамическая маршрутизация предполагает, что маршрутизатор может сам определять новые пути либо модифицировать информацию о старых. Динамическая маршрутизация использует специальные алгоритмы маршрутизации, наиболее распространенными из которых являются вектор дистанции (distance vector) и состояние канала (link state). В первом случае маршрутизатор использует информацию о структуре сети от соседних маршрутизаторов, из вторых рук. Во втором случае маршрутизатор оперирует информацией о собственных каналах связи и взаимодействует со специальным представительским маршрутизатором для построения полной карты сети.

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

Сервис соединений сетевого уровня работает тогда, когда сервис соединений LLC-подуровня канального уровня модели OSI не используется.

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

Транспортный уровень

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

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

Многие протоколы в вычислительных сетях обеспечивают пользователям возможность работы с простыми именами на естественном языке вместо сложных и тяжелых для запоминания алфавитно-цифровых адресов. Преобразование адресов в имена и обратно (Address/Name Resolution) является функцией идентификации или отображения имен и алфавитно-цифровых адресов друг в друга. Эта функция может выполняться каждым объектом в сети или поставщиками специального сервиса, называемыми каталоговыми серверами (directory server), серверами имен (name server) и т.п. Следующие определения классифицируют методы преобразования адресов/имен:

  • инициация потребителем сервиса;
  • инициация поставщиком сервиса.

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

Методы адресации

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

  • идентификатор соединения;
  • идентификатор транзакции.

Идентификатор соединения (connection identifier), также называемый ID соединения (connection ID), портом (port), или сокетом (socket), идентифицирует каждый диалог. С помощью идентификатора соединения поставщик соединения может связываться более чем с одним клиентом. Поставщик сервиса обращается к каждому объекту коммутации по его номеру, а для координации других адресов нижнего уровня полагается на транспортный уровень. Идентификатор соединения связан с конкретным диалогом.

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

Сеансовый уровень

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

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

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

Сеансовый уровень реализует управление диалогом с использованием одного из трех способов общения - симплекс (simplex), полудуплекс (half duplex) и полный дуплекс (full duplex).

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

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

Уровень представления данных

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

Под преобразованием понимается изменение порядка битов в байтах, порядка байтов в слове, кодов символов и синтаксиса имен файлов.

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

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

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

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

Локальные и сетевые операционные системы часто шифруют данные для защиты их от несанкционированного использования. Шифрование - это общий термин, который описывает некоторые методы защиты данных. Защита зачастую выполняется с помощью перемешивания данных (data scrambling), при котором используется один или несколько методов из трех: перестановка, подстановка, алгебраический метод.

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

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

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

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

Прикладной уровень

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

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

При осуществлении активного представления сервиса (Active service advertisement) каждый сервер периодически посылает сообщения (включающие адреса сервиса), объявляя о своей доступности. Клиенты также могут опрашивать сетевые устройства в поисках определенного типа сервиса. Клиенты сети собирают представления, сделанные серверами, и формируют таблицы доступных в настоящее время видов сервиса. Большинство сетей, использующих метод активного представления, определяют также конкретный период действия представлений сервиса. Например, если сетевой протокол определяет, что представления сервиса должны посылаться каждые пять минут, то клиенты будут удалять по тайм-ауту те виды сервиса, которые не были представлены в течение последних пяти минут. По истечении тайм-аута клиент удаляет сервис из своих таблиц.

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

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

  • перехват вызовов операционной системы;
  • удаленный режим;
  • совместная обработка данных.

При использовании перехвата вызовов ОС (OC Call Interception) локальная операционная система совершенно не подозревает о существовании сетевого сервиса. Например, когда приложение DOS пытается читать файл с сетевого файл-сервера, оно считает, что данный файл находится на локальном накопителе. В действительности специальный фрагмент программного обеспечения перехватывает запрос на чтение файла прежде, чем он достигнет локальной операционной системы (DOS), и направляет запрос сетевому файловому сервису.

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

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

КомпьютерПресс 6"1999