PSE в соответствии с протоколом X.25 не поддерживают обмен маршрутной информацией и оптимизацию маршрутов. Хотя реализуемые ими функции сложнее, чем коммуникационных устройств канального уровня, однако по сравнению с маршрутизаторами других сетевых технологий функции PSE существенно проще. PSE может поддерживать до 4096 логических каналов одновременно. Наиболее сложная процедура, не определенная в рамках протокола, - маршрутизация при создании логического канала. После создания логического канала для передачи пакетов используются не сетевые адреса, имеющие большие размеры, и алгоритмы маршрутизации, а идентификаторы логических каналов и таблицы коммутации портов PSE. Как уже отмечалось, процедуры доставки пакетов в созданном логическом канале во многом аналогичны процедурам канального уровня HDLC. Однако механизмы контроля работы логических каналов должны быть более строгими. На канальном уровне обеспечивается управление взаимодействием только двух устройств. В логическом канале кроме двух DTE должны корректно взаимодействовать несколько PSE. Благодаря высокой эффективности канального уровня вероятность искажения и потери пакетов невелика, однако строгие процедуры контроля работы логических каналов необходимы.
Протокол PLP определяет 5 режимов:
1) Установление соединения – процедура создания логического канала между DTE.
2) Режим передачи данных – обмен данными по логическому каналу, включая сегментацию, заполнение недостающих бит, контроль ошибок и управление потоком.
3) Режим паузы.
4) Сброс соединения – освобождение всех ресурсов, поддерживавших работу логического канала.
5) Режим рестарта.
Предусмотрено 14 типов пакетов, обеспечивающих работу протокола в этих режимах. Пакеты объединяются в группы: пакеты установления соединения и разъединения, пакеты данных и прерываний, пакеты управления потоком и сброса, пакеты рестарта. Процедуры PLP используют те же механизмы контроля, что и HDLC. Передача любого пакета предполагает получение подтверждения на него, корректно выполняемые процедуры предполагают определенную, известную всем последовательность действий и передаваемых сообщений, при некорректной работе известен алгоритм возврата в нормальное состояние, используются механизмы тайм-аута и ограничения числа допустимых повторений. Дополнительные возможности в PLP: пакеты прерываний передаются PSE даже при остановке потока данных, сброс предполагает повторную инициализацию логического канала с потерей всех пакетов, которые были в данном логическом канале, рестарт подразумевает сброс всех логических каналов.
Самую сложную структуру полей управления имеет пакет установления соединения CALLREQUEST.
Q | D | mod | LGN |
LCN | |||
Type $0B | |||
Длина DA | Длина SA | ||
DA | |||
. . . . . | |||
SA | |||
. . . . . | |||
Длина поля услуг | |||
Услуги | |||
Данные | |||
. . . . . |
Q – тип информации (для трансп. уровня), D – признак подтверждения DTE получателем, mod – модуль нумерации пакетов.
Первые три байта имеют одинаковую структуру для всех типов пакетов. Алгоритм "окна" на сетевом уровне используется только в целях управления потоком и не предполагает процедур восстановления потерянных пакетов. В алгоритмах управления следует учитывать задержку доставки пакетов. Например, пакет управления потоком RNR может поступить к тому моменту, когда "лишние" пакеты, которые не будут обработаны, уже отправлены.
Как указывалось ранее, алгоритмы работы сетевого уровня содержат ряд дополнительных возможностей относительно алгоритмов канального уровня. В третьем байте заголовка пакета предусмотрен признак сегментации, если пакет большого объема разделен на нескольких меньших пакетов, этот признак устанавливается для всех сегментов кроме последнего. Кроме того, служебные пакеты содержат специальные поля для передачи диагностической информации. В этих полях указывается причина, по которой проводится какая-либо процедура, связанная с передачей этого пакета. Например, передача пакета, выходящего за пределы окна, требует выполнения сброса. Узел, который инициирует сброс, должен указать эту причину в диагностическом поле пакета сброса. При сбросе в канале происходит стирание всех еще не доставленных пакетов.
Причин, вызывающих некорректную работу на сетевом уровне, гораздо больше, чем на канальном уровне. Хотя и канальный уровень обеспечивает высокую надежность передачи данных, причиной может быть не потеря пакетов, а их задержка в канале. При запаздывании пакетов на разных участках виртуального канала могут реализовываться различные процедуры, и передаваемые пакеты в рамках одних процедур могут не соответствовать другим. Для выхода из таких состояний предусмотрены режимы сброса и рестарта, позволяющие повторно инициализировать работу, хотя и с потерей всех пакетов, которые в это время обрабатывались в канале.
Основное достоинство сетей Х.25 – высокая надежность, которая обеспечивается применением технологии виртуальных каналов с коммутацией пакетов и протоколов HDLC на канальном уровне. Однако реализация этой надежности приводит к низкой производительности, гарантий пропускной способности сети Х.25 не дают.
Коммутаторы (PSE) X.25 существенно проще маршрутизаторов сетей TCP/IP, т. к. не поддерживают процедур маршрутизации. Но PSE также выполняют достаточно сложные функции, во-первых, реализуя процедуры формирования логического канала, и, во-вторых, обеспечивая выполнение протоколов канального уровня. Практически каждый PSE работает с полной буферизацией пакетов, т. к. необходимо обеспечить прием кадра HDLC, его контроль и подтверждение приема (или запрос на повторную передачу при искажении кадра). Затем необходимо выделение пакета X.25 из поля данных кадра HDLC и передача пакета в выходной порт PSE в соответствии с номером логического канала. Далее необходимо сформировать новый кадр HDLC, передать его и т.д. Таким образом, в сети X.25 данные подвергаются многократным процедурам преобразования и контроля, это естественно приводит к заметным задержкам и существенно увеличивает время доставки.
3. СЕТИ FRAMERELAY
Появление надежных и высокопроизводительных каналов связи стандарта ISDN позволило отказаться от таких сложных и постоянно повторяющихся процедур преобразования и контроля данных. Одной из таких технологий с существенно упрощенными алгоритмами контроля данных являются сети FrameRelay. FrameRelay – это сетевая служба сетей стандарта ISDN, обеспечивающая скорость передачи данных до 2 Мбит/сек. Поддерживая высокую скорость передачи данных, Framerelay не обеспечивает гарантированной доставки, целостности данных и управления потоком. Сеть стандартизована международным союзом электросвязи (ITU-T). Физический уровень – I.430/431 (ISDN), канальный уровень – Q.921 (LAP-F), сетевой уровень – Q.931/933 (процедура создания виртуального канала в рамках протокола LAP-D). в сетях Framerelay преимущественно применялись постоянные виртуальные каналы, создание коммутируемых виртуальных каналов производится по процедурам аналогичным процедурам установления соединения в ISDN.
Передача данных осуществляется без промежуточной обработки и буферизации, используется технология передачи "на лету". Анализируется только заголовок кадра, остальные элементы кадра просто ретранслируются. Задержка кадра узлом сети Framerelay не более 2 – 4 байт, часть кадров могут теряться при перегрузке сети. Корректность кадра проверяется только принимающей стороной, никаких процедур восстановления потерянных или искаженных кадров не предусмотрено, предполагается, что эти функции возложены на транспортный уровень. Если вероятность ошибки не превышает 10-6, сеть работает достаточно эффективно. Передача данных в виртуальном канале практически полностью производится процедурами канального уровня HDLC без использования алгоритмов контроля и восстановления данных (протокол LAP-F). В рамках сетевого уровня решается только задача установления соединения. В отличие от многих других технологий передачи данных гарантирует определенное качество сервиса, ориентированное на пульсирующий характер трафика компьютерных сетей.
Для обеспечения необходимого качества сервиса для каждого логического канала оговариваются параметры CIR, BC, Be. CIR – согласованная скорость, с которой сеть будет передавать данные. BC – объем пульсации, максимальное количество байтов, которые сеть будет передавать за интервал T (T= BC/CIR). Be – дополнительный объем пульсации, максимальное количество байтов, которые сеть будет по возможности передавать сверх BC за интервал T. Каких-либо гарантий по задержкам сеть не дает, обеспечивая только скорость передачи данных CIR. BC определяет объем данных, которые сеть всегда обязана принимать для доставки. Be определяет дополнительный объем данных, которые сеть принимает для передачи, но при возникновении перегрузки сети эти данные будут отброшены без уведомления (доставка по возможности). Данные сверх объема, установленного параметром Be, сеть не принимает от пользователя.
Интервал времени T определяет период контроля объема поступающих данных. Поступающие данные за период T в пределах объема BC получают признак DE=0 и сеть обязана их доставить, в пределах дополнительного объема Beполучают признак DE=1 и сеть принимает их для доставки, но при перегрузке эти данные удаляются в первую очередь. Обработка данных в сети получила название алгоритма "дырявого ведра". Для уведомления пользователей о возникающих перегрузках введены дополнительные признаки FECN (уведомление принимающей стороны), BECN (уведомление передающей стороны). Эти признаки необходимы для снижения скорости передачи данных и устранения перегрузки сети.