Полный курс лекций 2009-го года (1130357), страница 22
Текст из файла (страница 22)
Пример виртуальных каналов, созданных сетью с коммутациейпакетовКанальный уровень обеспечивает надежную передачу данных по физической линии, передаваяданные в виде последовательности кадров. Здесь уместно будет вспомнить наше описание канальногоуровня в модели OSI. Этот уровень в Х.25 определяет стандарт, называемый LAPB (Link Access ProtocolBalanced). LAPB - это подмножество протокола канального уровня HDLC, который мы будем рассматриватьв главе 3.Уровень пакетов обеспечивает сервис по установлению и разрыву виртуальных соединений, а такжепередаче данных по таким соединениям. Этот сервис позволяет любому абоненту сети установитьлокальное соединение, называемое виртуальным соединением, с другими абонентами сети.
Пример такогосоединения показан на рисунке 2-48. В нем у машины А одно виртуальное соединение с вычислительнойсистемой С. У машины В таких соединений два – с системой С и сервером D. У сервера D соединений 3 – сВ, Е и F.При передаче данные абонента попадают на уровень 3 - уровень пакетов.
Там к ним добавляетсяспециальный заголовок, содержащий информацию, необходимую для управления передачей этого пакета.В результате получается готовый пакет. На этом уровне данные абонента могут быть разбиты на несколькопакетов. Информация в заголовке пакета нужна для того, чтобы:§идентифицировать то виртуальное соединение, по которому этот пакет должен быть передан§сообщить уникальный порядковый номер пакета, который необходим для управления передачей и приисправлении ошибок, возникающих при передачеЗатем пакет обрабатывает протокол LAPB. Этот протокол при обработке пакета добавляет заголовоки хвостовик, образуя LAPB-кадр. LAPB-заголовок и LAPB-хвостовик содержат информацию, необходимуюдля надежной передачи кадра.2.5.7.1.
Виртуальные соединенияПротоколы семейства Х.25 поддерживает два вида виртуальных соединений: временные,устанавливаемые по запросу виртуальные соединения, и постоянные виртуальные соединения. Временныевиртуальные соединения устанавливаются динамически, по запросу, с помощью специальной процедуры ис помощью специальной процедуры разрывают. Постоянное виртуальное соединение фиксировано, и егонельзя изменять, устанавливать и разрывать динамически.Маршрутизация пакетов внутри сети невидима для абонентов. Обмен данными от абонента А кабоненту В происходит следующим образом:1.А запрашивает установку виртуального соединения с В, посылая специальный служебный пакет,называемый Call Request (запрос на соединение), устройству DCE абонента В (далее просто DCE B). Этотпакет содержит адреса абонентов А и В, а также номер нового виртуального соединения, который будетиспользоваться для передачи данных между А и В.2.Сеть маршрутизирует этот пакет к DCE B.3.DCE B получает пакет Call Request и шлет запрос DTE B.
Этот запрос содержит ту же информацию и имееттот же формат, что и пакет Call Request, но другой номер виртуального соединения, которыйустанавливает DCE B из набора локально доступных виртуальных соединений.4.Если DTE В согласен на установление соединения, то DTE В посылает специальный пакет, называемыйCall Accepted, в котором указан тот же номер виртуального соединения, что и в пакете Call Request.5.DCE A, получив пакет Call Accepted, шлет пакет Call Connected к DTE A.
У этого пакета тот же формат, чтои пакета Call Accepted, но с оригинальным номером виртуального соединения, указанным в пакете CallRequest.6.А и В обмениваются данными и специальными управляющими пакетами, используя номера своихлокальных виртуальных соединений.7.А (или В) посылает пакет Clear Request, чтобы инициировать разрыв виртуального соединения, иразрывает его, получив пакет Clear Confirmation.8.В (или А) получает пакет Clear Indication, отвечая пакетом Clear Confirmation.2.5.7.2. Формат пакетовНа рисунке 2-56 показаны основные форматы пакетов в Х.25. Данные абонента разбиваются наблоки некоторого определенного максимального размера и каждому блоку добавляется 24-, 32- или 56байтовый заголовок.
В результате получается пакет. Для виртуального соединения, в котором используютпоследовательные 15-разрядные номера пакетов, заголовок начинается со специального октета 0011000,идентифицирующего протокол. Заголовок включает 12-разрядный номер внутреннего соединения (онсостоит из 4-разрядного номера группы и 8-разрядного номера соединения).
Поля P(S), P(R) - этослужебные поля, используемые для управления передачей, обнаружения и исправления ошибок, а такженумерации пакетов при передаче. Бит Q не специализируется в стандарте и позволяет пользователямвыделять два вида данных.Рисунок 2-56. Форматы пакетов в Х.25QD01Номер группыX0Номер каналаP(R)MP(S)010Номер группыТип пакета0001Номер группыНомер канала1P(R)Тип пакета1Дополнительная информация(c) Пакеты RR, RNR и REJ с 3-битовыми(b) Контрольный пакет для виртуальных последовательными номерамивызовов с 3-битовымипоследовательными номерами(а) Пакет данных с 3-битовымипоследовательными номерамиD1Номер каналаДанныеQ0Номер группыНомер каналаX010Номер группыНомер каналаP(S)0P(R)MТип пакетаQ010Номер группыНомер канала1Дополнительная информацияТип пакета1P(R)0Данные(d) Пакет данных с 7-битовымипоследовательными номерами(f) Пакеты RR, RNR и REJ с 7-битовыми(e) Контрольный пакет для виртуальных последовательными номерамивызовов с 7-битовымипоследовательными номерами0011QD110000Номер группы0011X011Номер канала0000Номер группы0011X011Номер каналаP(S) - младший разряд0Тип пакетаP(S) - высший разрядДополнительная информацияP(R) - младший разряд0000Номер группыНомер канала1Тип пакета1P(R) - младший разряд0MP(S) - высший разрядP(R) - высший разрядДанные(h) Контрольный пакет для виртуальныхвызовов с 15-битовыми(i) Пакеты RR, RNR и REJ с 15-битовымипоследовательными номерамипоследовательными номерами(g) Пакет данных с 15-битовымипоследовательными номерамиПомимо пакетов данных, в Х.25 предусмотрено несколько специальных управляющих пакетов, которыеиспользуют, например, для установления, восстановления, проверки и разрыва виртуальных соединений.В таблице 2-57 приведены примеры типов пакетов и их параметры.Таблица 2-57.
Типы управляющих пакетов и их параметрыТип пакетаОт DTE к DCEСервисОт DCE к DTEПараметрыVC PVCУстановка соединения и разрывCall RequestIncoming CallXВызывающий DTE-адрес, вызванный DTEадрес, возможности, данныепользователяCall AcceptedCall ConnectedXВызывающий DTE-адрес, вызванный DTEадрес, средства, данные пользователяClear RequestClear IndicationXПричина разрыва, диагностический код,вызывающий DTE-адрес, вызванный DTEадрес, средства, данные пользователяClear ConfirmationClear ConfirmationXВызывающий DTE-адрес, вызванный DTEадрес, средстваДанные и прерываниеDataDataXX-InterruptInterruptXXДанные прерывающего пользователяInterrupt Confirmation Interrupt Confirmation XX-Управление потоком и сбросRRRRXXP(R)RNRRNRXXP(R)XXP(R)REJReset RequestReset IndicationXXПричина сброса, диагностический кодReset ConfirmationReset ConfirmationXX-ПерезапускRestart RequestRestart IndicationXXПричина перезапуска, диагностическийкодRestart ConfirmationRestart ConfirmationXX-ДиагностикаDiagnosticXXДиагностический код, диагностическоеразъяснениеПакет вида Interrupt DTE может послать, минуя процедуры передачи пакетов данных.
Такой пакетпередают через сеть с более высоким приоритетом, чем пакеты данных.Пакет Diagnostic позволяет сообщить условия некоторых ошибок, после которых восстановлениесоединения невозможно.2.5.7.3. МультиплексированиеМультиплексирование, пожалуй, наиболее важный вид сервиса, поддерживаемый Х.25. DTE можетустановить 4095 виртуальных соединений с другими DTE через одну и ту же DCE, создав так называемуюDTE-линию. Такая линия подразумевает мультиплексирование с полным дуплексом. Это означает, что повиртуальному соединению, ассоциированному с этой линией, пакеты могут передаваться в любомнаправлении.Принадлежность пакета к виртуальному соединению определяет 12-разрядный номер виртуальногосоединения, указанный в пакете. Все 4095 номеров виртуальных соединений разбиты на 4 группы всоответствии с определенными условиями, показанными на рисунке 2-58.
Каждая группа – это наборпоследовательных целых чисел. В соответствии с условиями выделяют номер для очередного виртуальногосоединения. Номер 0 зарезервирован для диагностических пакетов, общих для всех виртуальныхсоединений. Постоянные виртуальные соединения нумеруются, начиная с 1. Следующая категория - этооднонаправленные входящие запросы на виртуальные соединения. Это означает, что эти номера могутбыть использованы DCE для запросов, поступающих из сети, при их передаче DTE.Рисунок 2-58. Распределение номеров при виртуальном соединенииОднонаправленные исходящие вызовы инициирует DTE. Для таких пакетов DTE выбирает первыйсвободный номер виртуального соединения из диапазона номеров, расположенных между HOC и LTC.Управление передачей, обнаружение и исправление ошибок осуществляет протокол HDLC, которыймы рассмотрим в главе 3.2.5.8.