Типы и форматы пакетов протокола Х.25 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Типы и форматы пакетов протокола Х.25



Используемые типы пакетов приведены в таблице 4.

Таблица 4

№ п/п Тип пакета
Сеть – абонент (DCE – DTE) Абонент – сеть (DTE – DCE)
Установление соединения и разъединения
1. Входящий запрос соединения Запрос соединения
2. Подтверждение соединения Согласие на соединение
3. Указание разъединения Запрос разъединения
4. Подтверждение разъединения от сети Подтверждение разъединения от абонента
Данные и прерывания
5. Данные от сети Данные от абонента
6. Датаграмма Датаграмма
7. Прерывание от сети Прерывание от абонента
8. Подтверждение прерывания от сети Подтверждение прерывания от абонента
Управление потоком и сброс
9. Готовность сети к приему Готовность абонента к приему
10. Неготовность сети к приему Неготовность абонента к приему
11. - Отказ
12. Указание сброса Запрос сброса
13. Подтверждение сброса сетью Подтверждение сброса абонентом
Рестарт
14. Указание рестарта Запрос рестарта
15. Подтверждение рестарта сетью Подтверждение рестарта абонентом

 

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

- установление виртуального соединения;

- поддержание виртуального соединения;

- передачу данных;

- управление потоками пакетов;

- выполнение рестарта (повторная организация виртуального соединения);

- разъединение виртуального соединения.

DTE - абонентская машина

DSE - коммуникационная машина

DCE - АПД

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

Фаза рестарта используется для восстановления после ошибок работы сразу всех логических каналов.

 

Два формата пакета «Данные».

 

 

 

Рис. 19 Формат пакета Х.25.

 

 

Рис. 20 Формат пакета Х.25 с расширенными полями счетчиков.

 

В левой половине 1 байта записывается идентификатор формата. В этом четырех битовом поле записывается код, указывающий на тип формата. Если пакеты Данные нумеруются циклически от 0 до 7 (модуль 8), то код 0001, если от 0 до 127 (модуль 128), то код 0010. Правая половина байта определяет номер группы логического канала. Во 2 байте – N логического канала, по которому необходимо передавать информацию.

В правом разряде 3 байта записывается 0 (нуль) выделяющий информационные пакеты, а также сигнальные пакеты датаграммного сервиса среди всех 19 пакетов. У остальных (управляющих) 16 пакетов в этом разряде проставлена 1.

Пакеты нумеруются:

N(S) – номер передаваемого пакета, N(R) – номер принимаемого (ожидаемого) пакета, М=1 означает, что пакет промежуточный, М=0 – пакет последний. Структура пакета Датаграмма при нумерации от 0 до 7 показана на рисунке. Если нумерация идет от 0 до 128, то 3 байт заменяется 2 байтами.

 

Рис. 21. Формат пакета «дейтаграмма» протокола Х.25.

 

Протокол Х.25 определяет размеры основы пакета в 16, 32, 64, 128, 256, 512 и 1024 байт. Основной размер – 128 байт.

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

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

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

По окончании передачи происходит фаза разъединения с помощью соответствующих пакетов.

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

 

Контрольные вопросы:

1. Что такое логический канал?

2. Сколько групп логических каналов в протоколе Х.25?

3. Сколько логических каналов в группе в Х.25?

4. Чем отличается виртуальный вызов от виртуальной цепи?

5. Сколько типов информационных пакетов в Х.25?

6. Каковы размеры основы пакетов в Х.25?

7. В чем отличие виртуальной сети от дейтаграммной?

8. Может ли в сети Х.25 быть отказ от кадров?

 

Лекция 8.

 

Стек протоколов TCP/IP.

(Transmit Control Protocol/ Internet Protocol)

TCP/IP – это промышленный стандарт стека протоколов, разработанный для глобальных сетей. Стандарты TCP/IP опубликованы в серии документов, названных Reguest For Comment (RFC). Документы RFC описывают внутреннюю структуру сети Internet. Стек был разработан для ARPANET до появления модели взаимодействия открытых систем ISO/OSI. Он также имеет многоуровневую структуру, но соответствие между TCP/IP и OSI достаточно условно. Протоколы TCP/IP делятся на 4 уровня

 

  www Gopher WAIS SNMP FTP telnet SMTP TFTP I
 

Прикладной

уровень

  www Gopher WAIS TCP UDP II
 

Транспорт-ный

уровень

 

 

  IP ICMP RIP OSPF ARP   III

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

 

  Не регламентируется в стеке TCP/IP, Но поддерживает все популярные стандарты Enternet, Token Ring, FDDI, X.25, PPP, SLIP? FrameRelay, ATM IV
 

Уровень доступа к сети

 

Уровни Рис. 22 Уровни модели OSI и стека протоколов TCP/IP

 

Формат IP-заголовка.

 

  4 бита 4 бита 1 байт 16 бит
  Версия Длина заголовка Тип обслуживания Длина дейтаграммы
  16 бит Идентификатор сообщения 1бит DF 1бит MF 13 бит Смещение фрагмента
  8 бит Время жизни 8 бит Протокол 16 бит CRC Заголовок
  32 р IP-адрес отправителя
  32 р IP-адрес получателя
  Опции (произвольно) Заполнитель
Рис.23. Формат заголовка пакета протокола IP.

 


- версия - номер версии IP (IP v4, IP v6) – 4 бита.

- длина заголовка – в 32-х разрядных словах (5 или 6 слов).

- тип обслуживания – это поле имеет следующую структуру:

 

3 бита 1 бит 1 бит 1бит 2 бита
приоритет задержка пропускная способность надежность не используется

 

Приоритет- от 0 до 7 (0-обычный, 7 – управление).

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

- длина дейтаграммы – полная длина включая заголовок (max-65535 байт).

- идентификатор – идентификатор сообщения. Исключает сборку фрагментов разных сообщений.

- DF – не фрагментировать (Don’t Fragment). (1-фрагментация запрещена).

- MF- More Fragments- есть еще фрагменты. (1-есть еще фрагмент, 0- фрагмент последний).

- Смещение фрагмента- смещение в битах фрагмента относительно начала сообщения.

- Время жизни- время в секундах отводимое на доставку пакета. Если время доставки пакета> пакет delete, Каждый узел уменьшает время жизни на 1с и учитывается время ожидания в шлюзах. Если время жизни становится меньше нуля, то пакет уничтожается и высылается квитанция обратной связи.

- Протокол – код транспортного протокола (для TCP код = 6).

- CRC- контрольная последовательность. (Вычисляется со временем жизни т.е. изменяется)

- Опции – могут отсутствовать; секретность, запись маршрута (в дополнительных полях), маршрутизация отправителям, запись временных меток и т.п.

- Заполнитель – требуется для дополнения заголовка до целого числа 32 разрядных слов.

Протокол ТСР.

Главная функция ТСР- доставка сообщения без потерь. Для этого предварительно устанавливается соединение между приложением-отправителем и приложением-получателем. Именно ТСР производит повторную передачу искаженного или утерянного пакета.

ТСР получает поток байтов от приложения и собирает в сегменты, добавляя заголовки в начало сегментов. В заголовке – CRC и порядковый номер сегмента.

Длина сегмента обычно определяется ТСР или выбирается администратором системы. Процесс установления соединения начинается с передачи запроса на установление соединения от машины-отправителя машине-получателю. В запросе содержится номер сокета отправителя (IP адрес и номер порта). В ответ приложение-получатель посылает номер своего сокета. Номера сокетов однозначно определяют соединения между приложениями. После установления соединения ТСР начинает передавать сегменты IP-модулю, потом преобразует каждый из них в одну или несколько дейтаграмм. IP-модуль получатель передает его приложению-получателю (через используемый протокол прикладного уровня). Если сообщение состоит из нескольких сегментов, ТСР-получатель собирает его, исходя из порядковых номеров сегментов, хранящихся в заголовке. Если сегмент утерян или поврежден (последние обнаруживается с помощью CRC в заголовке сегмента) отправитель посылает сообщение, содержащие порядковый номер ошибочного или утерянного сегмента. В этом случае отправитель повторно посылает сегмент.

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

В ТСР важную роль играют таймеры.

Таймер повторной передачи отмеряет время ожидания квитанции на отправленный сегмент. Если квитанция не поступает вовремя, сегмент отправляется вновь, а период повторной передачи увеличивается экспоненциальному закону. Так повторяется несколько раз пока период не достигнет некоторого заданного предела, после чего обслуживаемому процессу выдается сообщение об ошибке. Начальное время ожидания квитанции устанавливается путем изменения времени между отправителем сегмента и получателем квитанции на него. Эта величина называется временем двойного прохода. Математическое ожидание его – сглаженное время двойного прохода.

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

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

Блок управления передачей и управление потоками.

ТСР должен отслеживать параметры каждого установленного соединения. Для этого используется блок управления передачей (transmission control block – TCB), в котором содержится информация о локальном и удаленном номерах сокетов, буферах передачи и приема, уровнях защиты и приоритете и о текущем сегменте в очереди. Там же находятся порядковые номера переданного и принятого сегментов в сообщении.

Сегменты ТСР.

Структура заголовка ТСР сегмента следующая:

 

Порт отправителя (16 бит) Порт получателя (16 бит)
Позиция сегмента (32 бит)
Первый ожидаемый байт (32 бита)
Смещение данных 4 бит (длина заголовка) Резерв 6 бит URG ACK PSH RST SYN FIN Размер окна (16 бит)
Контрольная сумма (16 бит) Указатель срочности данных (16 бит)
Опции и заполнитель
Рис. 24. Формат заголовка ТСР-сегмента.
                 

 

- Порт отправителя. Идентифицирует порт источник.

- Порт получателя. Идентифицируюет порт получателя.

- Позиция сегмента (Seguence number). Поле содержащие номер 1-го байта данных сегмента в сообщении

- Первый ожидаемый байт. Используется тогда когда сегмент служит квитанцией (ACK=1). Содержит порядковый номер 1-го ожидаемого байта. Все байты сообщения с меньшим порядковым номерами считаются квитированными.

- Смещение данных. Длина заголовок в 32 разрядных словах служит указателем на начало поля данных.

- Резерв. Пока не используются.

- Флаги. В состоянии 1 они означают следующие:

URG. Поле срочности подлежит обработке.

ACK. Сегмент служит квитанцией.

PSH. Сегмент должен быть «вытолкнут»- послан в первую очередь.

RST. Сегмент служит запросом на установку первоначальных параметров соединения.

SYN. Сегмент служит для синхронизации счетчиков переданных данных при установлении соединения.

FIN. Означает, что отправлен последний байт сообщения. Эквивалент маркера конца передачи (EOT) в кодировке ASCII.

- Размер окна. Указывает, сколько байтов готов принять получатель.

- Контрольная сумма. CRC определяется для блока данных, состоящей из псевдозаголовка и самого сегмента. 96 разрядный псевдозаголовок предшествует заголовку ТСР и создается в процедуре вычисления CRC. Псевдозаголовок содержит IP-адреса отправителя и получателя, идентификатор протокола и длину сегмента. Эти параметры передаются IP при отправке сегмента и используются протоколом IP.

- Указатель срочности данных. Используется, когда URG=1. Представляет собой смещение относительно номера последовательности в заголовке. Специальная обработка срочных данных производится на прикладном уровне, а не на уровне ТСР.

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

0-конец списка опций

1-отсутствие операций

2-максимальный размер сегмента

- Заполнитель. Дополняет заголовок до целого числа 32 разрядных слов.

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



Поделиться:


Последнее изменение этой страницы: 2017-01-19; просмотров: 324; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.237.186.170 (0.048 с.)