Новости
Обзоры и тесты
Техно
Советы
Разное
Главная » Техно

Механизм организации факсимильной сессии FAX-VoIP-FAX (FoIP) T.38 и pass-through

Добавлено на 26.02.2013 – 00:14 2 комментария

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

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

1. Процедура установления факсимильной сессии

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

Процедура управления сессией описана ITU-T в спецификации Т.30, а процедура передачи образа документа в спецификации Т.4. Спецификация Т.30 разделяет процесс передачи факсимильного сообщения на шесть фаз:

Фаза 1. Установление Голосового вызова. Вызывающая сторона поднимает телефонную трубку или подготавливает факс и затем вызывает телефон назначения или факсимильный аппарат.

Фаза 2. Определение параметров и скорости передачи. Параметры и скорость распределяются и согласовываются вызывающей и вызываемой сторонами.

Фаза 3. Передача. Передаются одно или несколько сообщений или страниц.

Фаза 4. Сообщение о завершении передачи и подтверждение..

Передаются сообщения о завершении передачи и подтверждении между вызывающей и вызываемой стороной

Фаза 5. Возвращение к голосовому вызову . После завершения 4 фазы, возобновляется голосовая сессия.

Фаза 6. Окончание. Окончание вызова осуществляется тогда, когда повешена трубка телефона или факса.

Рисунок 1 иллюстрирует все фазы соединения.

Рис. 1. Фазы факсимильной сессии

Рис. 1. Фазы факсимильной сессии

1.1 Фаза 1. Установление голосового вызова

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

методов:

· Вызывающее устройство передает тональный сигнал CNG (Calling Tone) вызываемому устройству. Этот сигнал определяет вызывающее устройство как факсимильный аппарат. CNG представляет собой повторяющийся сигнал тональной частоты равный 1100 Гц, который генерируется в течение 0.5 секунд, а затем прерывается на 3 секунды.

· Вызываемое устройство передает тональный сигнал, определяющий вызываемое устройство CED (Called Tone), который позволяет идентифицировать вызываемое устройство как факсимильный аппарат. CED — тональный сигнал частотой 2100 Гц, который имеет продолжительность от 2.6 до 4 секунд.

После обмена сообщениями, транзакция может перейти к фазе В.

1.2 Фаза 2. Определение параметров и скорости передачи

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

1. Вызываемое устройство передает цифровые информационные сигналы DIS (Digital Information Signal), в которых описываются скорость факсимильных сообщений группы G3 (рекомендации ITU Т.30, Т.4); — демодуляцию факсимильных сообщений передаваемых в соответствии c рекомендациями ITU: V.21 — 300 бит/c; V.27 — 2400 бит/с; V.27 — 4800 бит/с; V.29 — 7200 бит/с; V.29 — 9600 бит/с; V.17 — 7200 бит/с; V.17 — 9600 бит/с; V.17 — 12000 бит/с; V.17 — 14400 бит/с;) и возможности принимающего устройства вызываемого факсимильного аппарата (такие как максимальная длина страницы, время сканирования полосы, разрешение изображения, способ исправления ошибок. Многие стандартные функции содержатся в сообщении DIS, и все они определяются в спецификации T.30.

2. Вызывающее устройство обрабатывает сообщение DIS, и в ответ посылает командные цифровые сигналы DCS (Digital Command Signal), которым сообщает вызываемому устройству скорость и какие функции необходимо выбрать для приема факса.

3. Вызываемое устройство может также отправить опциональные сообщения: идентификация вызываемого абонента CSI(Called Subscriber Identification) — дополнительные сведения о вызываемом факсимильном аппарате. Нестандартные возможности NSF (Non-Standard Facilities) — сообщает вызывающему устройству о том , что вызываемая сторона имеет дополнительные возможности, которые могут быть использованы во время передачи факса.

4. Вызываемое устройство может также отправить сообщение идентификациии передающего абонента TSI (Transmitting Subscriber Identification). Также, в ответ на сообщение NSF (Non-Standard Facilities) вызывающее устройство может отправить сообщение NSS (Non-Standard facilities Setup) — Настройки нестандартных функций, для того, чтобы выбрать дополнительные параметры приема вызываемого устройства.

5. Вызывающее устройство затем отправляет сообщение TCF(Training Check) – тренировочной проверки, которое включает в себя последовательность нулей в течение примерно 1.5 секунд с использованием высокоскоростной модуляции, согласованной во время подтверждения связи DIS-DCS. Вызываемое устройство затем передает сообщение FTT(Failure To Train) — нарушение соединения – если характеристики линии не позволяют (принимающий факс не может демодулировать тренировочную последовательность нулей) использовать выбранную модуляцию или CFR(Confirmation to Receive) — подтверждение получения — если скорость модуляции допустима. Тренировочная проверка — это процесс, который необходим для контроля канала связи.

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

1.4 Фаза 3. Передача содержимого

Согласно спецификации Т.4, передача образа документа в самой простой своей реализации, представляет собой процедуру синхронной блочной передачи файла формата TIFF-F в виде потока бит с использованием преобразования Гауфмана при помощи модемов. К фазе С зачастую обращаются как к In-message Procedure — процедуре входящих сообщений. Во время этой фазы высокоскоростные данные страниц T.4 передаются одной строкой за раз. За каждой переданной строкой данных следует сообщение EOL(End of Line) — конец строки.

Когда отправляющее устройство завершает отправку страниц или необходимо вернуться в состояние управления, отправляются 6 сообщений EOL в последовательности, которая составляет сообщение RTC(Return to Control) — возвращение к управлению/ Сообщение RTC означает завершение фазы С, и вызов переходит к фазе Д.

Следует обратить внимание , что если факсимильный аппарат будет использовать в течение фазы В ECM — способ исправления ошибок — формат данных передаваемых в течение фазы С может быть иным. В случае ECM, страницы T.4 передаются общим необработанным потоком. Страницы T.4 группируются в блоки данных, используя протокол высокоуровневого управления каналом передачи данных HDLC(high-level data link control), вместо того, чтобы передаваться единым потоком. Это означает, что если HDLC блоки данных страниц получены с ошибками, можно отправить сообщение PPR — частичный запрос страницы -, в котором перечислены блоки, которые не были получены, и запрос об их повторной отправке. Более подробно различия в передаче во время фазы C с использованием ECM приведены в приложении A спецификации T.30 (Т.30)

1.5 Фаза 4. Сообщение об окончании передачи и подтверждение.

После передачи T.4 и последующего возвращения в режим управления, отправляющее устройство должно отправить один из следующих сигналов:

  • PPS (Partial Page Signal) — частичный сигнал страницы — устройства, которые отправляют факсы с использованием ECM (End Of Procedure), могут передать PPS, который должен получить подтверждение — сигнал подтверждения сообщения MCF от получающего устройства.
  • EOP (End Of Procedure) — конец процедуры — данный сигнал обозначает, что передача страниц завершена, и что больше нет страниц для передачи. EOP должен получить подтверждение MCF от получающего устройства, после чего устройства переходят к фазе Е.
  • MPS (MultiPage Signal)- обозначает конец страницы факсовой информации и то, что получатель готов к принятию следующих страниц.
1.6 Фаза 5. Возвращение к голосовому вызову.

Возвращение к голосовому вызову . После завершения 4 фазы, возобновляется голосовая сессия. Абоненты, в случае необходимости продолжают разговор.

1.7 Фаза 6. Завершение соединения

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

2. Механизм установления факсимильной сессии через IP сеть

 

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

T.38 Fax Relay Ретрансляция факса – факсимильные данные в формате T.4 из ТфОП кодируются отправляющим шлюзом. Закодированные данные группируются в пакеты, передаваемые по IP сетям, а затем декодируются в формат T.4 принимающей стороной. Особый интерес представляет информация компании CISCO Systems о реализации Т.38 Fax Relay в производимых ею шлюзах IP-телефонии. Согласно CISCO Systems, после установления соединения с IP-шлюзом и передачи информации о номере вызываемого абонента (Фаза 1) происходит попытка вызывающего факсимильного аппарата соединится с вызываемым факсимильным аппаратом и установить параметры скорости соединения (Фаза 2), при этом голосовые шлюзы на приёмном и передающем концах детектируют, перехватывают и транслируют в сторону соединённых с ними через телефонную сеть факсимильных аппаратов стандартные сообщения спецификации Т.30, в которых задают скорость соединения от 2,4 до 14,4 Кбит/с. Таким образом, при использовании Fax Relay отпадает необходимость кодировать и передавать через канал IP аналоговую несущую (фазы 2 и 4), так как между шлюзами сообщения Т.30, распознанные детекторами, передаются под управлением протокола Н.245, а при передаче образа документа (Фаза 3) применяется кодирование со скоростями 2,4 – 14,4 Кбит/с. Следует заметить, что процесс передачи образа документа предъявляет определённые требования к фазовым искажениям сигнала и задержкам в тракте передачи, а также задержкам при кодировании / декодировании. По этой причине, преобразование факсимильного сигнала с использованием гибридных речевых кодеков использующих технологии CELP, MP-MLQ и т.п. неэффективно. Для кодирования факсимильного сигнала наиболее подходящими будут кодеки ИКМ. Потому, среди кодеков, реализованных в современных шлюзах IP-телефонии всегда присутствуют ИКМ кодеки. Процесс передачи образа документа через пакетную сеть, как непрерывного синхронного потока данных, осуществляется с использованием протокола UDP и дополнительных технологических приёмов, среди которых:

  • Избыточное кодирование и коды с коррекцией ошибки.
  • Повторная трансляция потерянных или испорченных блоков информации и пакетов.
  • Буферизация принимаемых данных

На рисунке 2 приведены результаты расчёта скорости передачи данных в IP-канале для различного числа одновременных вызовов при использовании технологии Т.38 Fax Relay.

Рис.2. Скорости передачи данных в IP-канале.

Рис.2. Скорости передачи данных в IP-канале.

PCM Switchover Прозрачный канал – технология передачи данных через IP-шлюз с использованием обычных аналоговых факсов/модемов, получившая название PCM Switchover. При детектировании шлюзом сигнала несущей аналогового модема, в момент фазы передачи данных, для него со стороны шлюза создаётся полностью прозрачное IP-соединение с использованием ИКМ кодека G.711 64 Кбит/с. Пользователь, имея модем V.90 и качественное подключение к местному оператору IP-телефонии, установившему шлюз с поддержкой PCM Switchover, может получить соединение, аналогичное по скорости выделенному каналу 64 Кбит/с. Модулированные данные из ТфОП передаются внутри одного тракта от отправляющей стороны к получающей стороне, по тому же пути, что и голосовые данные в IP сетях. Для передачи факса используется сконфигурированный голосовой кодек. При реализации прозрачного канала используется кодек G.711, без эхоподавления и распознавания активности речи. Кодек G.711 , использует ИКМ преобразование аналогового сигнала с точностью 8 бит, тактовой частотой 8 КГц и простейшей компрессией амплитуды сигнала. Скорость потока данных на выходе преобразователя составляет 64 Кбит/с (8 Бит . 8 КГц). Для снижения шума квантования и улучшения преобразования сигналов с небольшой амплитудой, при кодировании используется нелинейное квантование по уровню согласно специальному псевдо — логарифмическому закону a или m – Law. Кодеки с низкой битовой скоростью не могут быть использованы для передачи факса (пример G.729). Шлюз может динамически изменяет текущий кодек на кодек G.711 , сконфигурированный для передачи голоса без эхоподавления и распознавание активности речевых данных во время факсимильной сессии. Данный метод называют прозрачным каналом с “UpSpeed”.

Кроме методов передачи факса в реальном времени существует также и метод, называемый Store-and-Forward Fax(T.37) передача факсимильной информации с промежуточным хранением – передача факсимильной информации разбивается на этапы получения и отправления, между процессами может быть некоторый интервал времени, в течение которого факсимильные сообщения сохраняются. Данный метод основывается на стандарте ITU-T T.37 и допускает получение или отправление факсимильных сообщений не только с использованием факсимильных аппаратов, но и компьютеров.

Рис. 3. Механизм установления факсимильной сессии.

Рис. 3. Механизм установления факсимильной сессии.

2.1 Прозрачный канал и прозрачный канал с “UpSpeed”

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

Прозрачный канал — это состояние канала, после процесса “Upspeed” (fax upspeed), в состояние, когда факсимильные данные, проходя через канал, не искажаются. Этому условию соответствует канал использующий голосовой кодек G.711. Хотя ретрансляции факса не используются, шлюзы в данном случае распознают факсимильные тональные сигналы CED и автоматически изменяют голосовой кодек на G.711 если это необходимо или выключают эхоподавление EC (Echo Cancellation ) и распознавание активности речи VAD(Voice Activity Detection) на время соединения.

После того, как шлюз назначения получает сигнал CED от вызываемого факсимильного аппарата, следует процесс обмена голосовыми кодеками, которые были согласованы во время процесса установления голосового вызова для кодека G.711 и выключает EC и VAD. Прозрачный канал с “UpSpeed” позволяет факсимильным аппаратам передавать модемные сигналы так, как если бы они использовали ТфОП. Если голосовой кодек, который был сконфигурирован и согласован для вызова VoIP — это G.711, то в случае если получен сигнал CED, нет необходимости как-то изменять сессию, кроме выключения эхокомпенсации EC и распознавания активности речи VAD.

3. Механизм переключения кодека без повторного открытия медиасессии

Передача факсимильной информации через прозрачный канал реализуется следующим образом:

Вручную конфигурировался терминал, который был настроен таким образом, что после обнаружения факсимильного вызова он переключался на кодек G.711, без эхоподавления и опознавания активности речи ( или же на любой кодек прозрачного канала). Управление прозрачным каналом осуществлялось при помощи именованных служебных событий NSE(Named Service Events), которые передаются в RTP пакетах.

NSEs – это внутренняя версия Cisco стандартных именованных событий телефонии IETF (NTEs), которые представляют собой специально помеченные пакеты данных, используемые для цифровой передачи тональных сигналов и событий телефонии.

В NSEs используются другие значения событий, нежели в NTEs. Значение для Payload type в NSE по умолчанию равно 100(Payload type= 100), тогда как в NTE равно 101(Payload type= 101).Символьный эквивалент NSE имеет вид X-NSE.

В поле описания медиасессии(m= ) протокола SDP , устройства поддерживающие механизм переключения кодека без повторного открытия медиасессии, описывают значение NSE(равное 100) и его символьный эквивалент X-NSE.

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

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

В случае установления голосового соединения(VoIP), подключается цифровой процессор (обработчик) сигналов DSP (Digital Signal Processor). Он информируется стеком контроля вызова, о том поддерживает ли протокол управления вызовом прозрачный канал.

Если прозрачный канал поддерживается, то происходит следующая последовательность событий:

1. На время продолжения вызова DSP прослушивает сигналы 2100-Гц CED сигналы, для того, чтобы определить факсимильный аппарат или модем на линии.

2. Если был услышан сигнал CED, генерируется внутреннее событие, для оповещения стека управления вызовом, что необходим переход в другое состояние факса или модема.

3. Стек управления вызовом вызывающей стороны сообщает DSP о необходимости передачи NSE к вызываемой стороне, информирующей вызываемую сторону о запросе на переключение кодека

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

Рис.4. Переключение кодека при помощи NSE(Named Service Events) Именованных Служебных Событий.

Рис.4. Переключение кодека при помощи NSE(Named Service Events) Именованных Служебных Событий.

4. Переключение кодека с повторным открытием медиасессии

Рис.5. Переключение кодека при помощи reINVITE.

Рис.5. Переключение кодека при помощи reINVITE.

При детектировании сигнала CED передающая сторона генерирует повторное открытие мультимедийной сессии посылая re-INVITE, где в SDP где предписывается использовать голосовой кодек G.711 не используя эхоподавление и подавления голосовых пауз. После подтверждения о переключении на голосовой кодек G.711 на принимающей и передающей сторонах, устанавливается прозрачный канал и передача факсимильной информации происходит по описанному выше сценарию.

5 Детектирование факсовой/модемной сессии

 

5 .1 Детектирование CED

В VoIP должны быть реализованы детекторы тонального сигнала CED (2100 Гц, 2.6 с – 4 с). CED должен детектироваться как со стороны PCM, так и со стороны декодера G.711/G.729. Также со стороны IP может поступить RTP-пакет в формате RFC2833*, который должен быть распознан как CED, приходящий из сети.

Из-за возможного появления эха направление, откуда реально идет CED, достоверно определить невозможно.

При детектировании сигнала CED должен быть отправлен сигнал в Physical, сигнализирующий о получении CED. Обозначается “CED_IND”. Physical транслирует CED_IND в SIP_IB (PH_FAX_MODEM_IND, Type=CED), который, в случае “Disable_Echo_On_CED == 1” повторно открывает сессию без включения эхокомпенсатора. В дополнение к этому при “Switch_To_G711_On_CED == 1” сессия должна переключиться на кодек G.711(указать только кодек “8”), если текущий кодек – не G.711 (см. п. 1.2). Данная опция может быть полезна для гарантированного детектирования модуляции V.21.

* payload_type для пакетов RFC2833 должен задаваться из файла конфигурации VOP.cfg. !

5.2 Переключение на кодек G.711 или G.729

В зависимости от настройки SIP_IB возможен т.н. up-speed или down-speed сессии либо с проведением процедуры изменения параметров сессии по сигнализации SIP, либо без нее. В случае, если текущий RemoteSDP не содержит кодек, на который необходимо переключиться, то SIP_UA_DIALOG_MODIFY является ОБЯЗАТЕЛЬНЫМ.

Параметр “ReINVITE_On_PT_Change” определяет, необходимо ли выполнять SIP_UA_DIALOG_MODIFY при изменении параметров текущей сессии. Значение = 1 – отправлять re-Invite, 0 – не отправлять.

5.3 Детектирование V21

В VoIP должны быть реализовано два демодулятора V.21: один для факсимильного аппарата (Df), другой – для модема (Dm). Демодуляторы должны “уметь” одновременно обрабатывать сигналы поступающие из PCM и из декодера G.711/G.729. Оба демодулятора должны работать одновременно и «прослушивать» два потока.

Рис.5. Схема обнаружения несущих частот

Рис.6. Схема обнаружения несущих частот.

При обнаружении несущей V.21 демодулятором Df, VoIP должен индицировать об этом Physical, который в свою очередь передает примитив PH_FAX_MODEM_IND(Type=Fax) в SIP_IB, который должен выполнить процедуру старта факсимильной сессии.

При обнаружении несущей V.21 демодулятором Dm, VoIP должен индицировать об этом Physical, который в свою очередь передает примитив PH_FAX_MODEM_IND(Type=Modem) в SIP_IB, который должен выполнить процедуру старта модемной сессии.

Если ни один из демодуляторов не обнаружил несущей V.21, VoIP должен индицировать об этом Physical, который в свою очередь передает примитив PH_FAX_MODEM_IND(Type=Voice) в SIP_IB, который должен переоткрыть сессию со старыми параметрами (до обнаружения CED) если RestoreAfterCED == 1”.

В PH_FAX_MODEM_IND(Type=Fax|Modem) должно указываться направление, откуда поступил сигнал – со стороны PCM или со стороны IP.

VoIP не должен слать повторную индикацию обнаружения V.21 в Physical.

5.4 Задержка перед стартом факсовой/модемной сессии

В SIP_IB должна быть предусмотрена опциональная случайная задержка открытия факсимильной или модемной сессии в зависимости от того, откуда была получена модуляция V.21. Это необходимо во избежание возможных коллизий в процедурах изменения параметров сессии по сигнализации SIP. Параметр Delay_ReINVITE_FaxModem_PCM” должен указывать задержку при детекте V.21 из PCM и задаваться в миллисекундах. Параметр Delay_ReINVITE_FaxModem_IP” должен указывать задержку при детекте V.21 из IP и задаваться в миллисекундах.

5.5 Инициирование старта факсовой сессии

SIP_IB при получении PH_FAX_MODEM_IND(Type=Fax) должен запросить Physical о доступности FoIP. Если свободных ресурсов FoIP нет, сессия должна быть модифицирована с параметрами Codec=g711, Echo=off (режим fax_pass_through, см. п. 1.5.1). Иначе должна быть выполнена попытка передать факс по протоколу T.38 (см. п. 1.5.2).

1.5.1. Переключение в режим fax_pass_through производится с учетом параметров Force_ReINVITE_On_Passtrough” , DisableEhoOnFax” и значения RemoteSDP. Если RemoteSDP содержит только кодек “8” из голосовых, то reINVITE не посылается независимо от Force_ReINVITE_On_Passtrough, а происходит только отключение эхокомпенсатора. Если DisableEhoOnFax == 1, то эхокомпенсатор отключается, в противном случае – не выключается.

Если Force_ReINVITE_On_Passtrough == 1 , то происходит переоткрытие сессии с указанием только кодека “8”.

Если Force_ReINVITE_On_Passtrough == 0 , то происходят действия, описанные в п.1.2, локально включается кодек g711.

1.5.2. При переключении в режим T38 должна быть произведена процедура повторного открытия сессии на кодек “t38”. В случае получения в ответ на реинвайт сообщений “415 Unsupported Media Type” или “200 OK” без кодека “t38”, должна произойти процедура изменения параметров сессии на кодек “8” ВНЕ ЗАВИСИМОСТИ от значений параметров Force_ReINVITE_On_Passtrough и ReINVITE_On_PT_Change, а при DisableEhoOnFax==1 еще и отключиться эхокомпенсатор.

При получении в ответ на reINVITE «положительного» ответа должен запуститься FoIP.

Если FoIP не распознает модуляцию как факсимильную, то должна произойти процедура изменения параметров сессии на кодек “8” ВНЕ ЗАВИСИМОСТИ от значений параметров Force_ReINVITE_On_Passtrough и ReINVITE_On_PT_Change, а при DisableEhoOnFax==1 еще и отключиться эхокомпенсатор.

5.6 Старт факсовой сессии противоположной стороной

5.6.1 При получении re-INVITE на кодек “t38” проверяется доступность FoIP, а процедура инициирования факсимильной сессии отменяется (в случае, если таймеры Delay_ReINVITE_FaxModem_* не истекли). Встречный reINVITE отрабатывается стандартным способом.

Если свободных ресурсов FoIP нет, в зависимости от настройки, может быть ответ 415 или 200 OK. Параметр “Unsupported_Codec_Reply=1|2|0”

Unsupported_Codec_Reply==1 – ответ 415 Unsupported Media type.

Unsupported_Codec_Reply==2 – ответ 200 OK с указанием поддерживаемых голосовых кодеков и последующим reINVITE на G.711 и опциональным отключением эхокомпенсатора (в зависимости от DisableEchoOnFAX).

Unsupported_Codec_Reply==0 – ответ 200 OK с t38 и последующим reINVITE на G.711 и опциональным отключением эхокомпенсатора (в зависимости от DisableEchoOnFAX).

Если FoIP доступен, то необходимо запустить FoIP и ответить 200 OK.

5.6.2. При получении reINVITE на кодек G.711 после обнаружения факсимильной модуляции V.21, может быть осуществлена попытка старта (по истечению таймера Delay_ReINVITE_FaxModem) факсовой сессии по протоколу T.38, описанная в п. 1.5.

5.6.3 При внезапном изменении payload_type поступающего в VoIP RTP-потока с низкоскоростного (G.729) на высокоскоростной кодек и обратно, опционально возможно изменение параметров сессии.

Follow_RTP_PT_Change==1” – изменять PT (payload type) на передачу без отправки reINVITE.

Follow_RTP_PT_Change==0” – не изменять PT на передачу, не модифицировать сессию.

Follow_RTP_PT_Change==2” – при up-speed переключиться на G.711 и выключить эхокомпенсатор, при down-speed – восстановить предыдущее состояние эхокомпенсатора (до up-speed) и переключиться на низкоскоростной кодек.

5.7 Завершение факсовой сессии

В случае передачи факса в режиме Fax_pass_through, переход на низкоскоростной кодек и включение эхокомпенсатора не производится.

При завершении передачи факса по протоколу T.38 при получении сигнала разъединения (DCN) из PCM FoIP посылает индикацию о завершении факсимильной сессии в Physical. Последний отправляет PH_FAX_MODEM_IND(Type=done) в SIP_IB. SIP_IB должен задержать процедуру переоткрытия сессии на 1 сек, а в случае получения от транзитной логики RELEASE, то и его задержать на 1 сек. Это необходимо для того, чтобы удаленный факс успел получить «DCN».

5.8 Инициирование старта модемной сессии

SIP_IB при получении PH_FAX_MODEM_IND(Type=Modem) должен запросить Physical о доступности MoIP. Если свободных ресурсов MoIP нет, сессия должна быть модифицирована с параметрами Codec=g711, Echo=off (режим modem_pass_through, см. п. 1.8.1). Иначе должна быть выполнена попытка передать модем по протоколу V.150 (to be continued).

1.8.1. Переключение в режим modem_pass_through производится с учетом параметров “Force_ReINVITE_On_Passtrough”, “Modem_Passthrough_Redundancy” и значения RemoteSDP.

Длительность пакетов и размер jitter-буфера для режима modem_pass_through должна настраиваться отдельно в SIP_IB и передаваться в physical как параметры сессии (параметры Modem_Passthrough_Packet и Modem_Passthrough_Jitter).

Если RemoteSDP содержит только кодек “8” из голосовых, то reINVITE не посылается независимо от Force_ReINVITE_On_Passtrough, а происходит только отключение эхокомпенсатора.

Если Modem_Passthrough_Redundancy == 1, то в RTP-пакеты должна добавляться избыточность в соответствии с RFC2198. Также должно осуществляться восстановление потерянных пакетов в соответствии с RFC2198.

Если Force_ReINVITE_On_Passtrough == 1 , то происходит переоткрытие сессии с указанием только кодека “8”.

Если Force_ReINVITE_On_Passtrough == 0 , то происходят действия, описанные в п.1.2, локально включается кодек g711.

Ниже будет рассмотрены сценарии работы с шлюзами Cisco и Mediatrix.

6 Шлюз 1 и шлюз Cisco

Факсимильный аппарат А передающий, аппарат Б принимающий.

 

Рис. 7. Сценарий факсимильной сессии «Шлюз 1, шлюз Cisco»

Рис. 7. Сценарий факсимильной сессии «Шлюз 1, шлюз Cisco»

 

Один из абонентов устанавливает VoIP соединение(на рисунке это абонент А) используя кодек G.729, затем требуется передать факсимильные данные. В примере на рисунке 7 инициатором факсимильной сессии(передающая сторона) является аб. А, а получателем факсимильных данных является аб. Б(принимающая сторона).

Если участники сессии поменяются местами, то обмен сообщениями будет точно, наоборот, за исключением NSE C1 от шлюза Cisco: этот пакет будет сгенерирован только в случае если принимающей стороной является шлюз Cisco.

Аб. А нажимает кнопку «Отправить» на своем терминале, факсимильный аппарат передает сигнал CNG, сигнализируя о готовности к отправке данных. Аб. Б нажимает кнопку принять на своем терминале и в линию генерируется сигнал CED, сигнализирующий о готовности к приёму данных. Шлюз 1 детектирует сигнал CED и посылает сигнальный пакет NSE со значением в поле данных(Payload) равным C0000000 сигнализируя стороне Б что был детектирован сигнал CED и кодек переключен на G.711. В ответ шлюз посылает такой же пакет NSE, информируя о том что тоже детектировал этот сигнал и так же переключился на кодек G.711. Затем начинается обмен характеристиками по протоколу T.30(несущая частота 300Гц). Это так же детектирует Шлюз 1 и отправляет сигнальный пакет со значением поля данных Payload равным C1000000 что детектирован T.30, в ответ получает подтверждение от шлюза Cisco в виде такого же пакета.

После обмена сторонами характеристиками, начинается непосредственная передача данных по протоколу T.4, по окончании приёма, сторона Б посылает сигнал об успешном приеме данных и если все данные отправлены, подключения разговорного тракта, кодек остаемся прежним- G.711.

 

 

7. Сценарий Шлюз 1 и шлюз Mediatrix.

Факсимильный аппарат А передающая сторона, аппарат Б принимающая сторона.

Рис. 8. Сценарий факсимильной сессии «Шлюз 1, Mediatrix»

Рис. 8. Сценарий факсимильной сессии «Шлюз 1, Mediatrix»

Один из абонентов устанавливает VoIP соединение(на рисунке это абонент А) используя кодек G.729, затем требуется передать факсимильные данные. В примере на рисунке 7 инициатором факсимильной сессии(передающая сторона) является аб. А, а получателем факсимильных данных является аб. Б(принимающая сторона).

Если участники сессии поменяются местами, то обмен сообщениями будет точно, наоборот, за исключением NSE C1 от шлюза Cisco: этот пакет будет сгенерирован только в случае если принимающей стороной является шлюз Cisco.

Аб. А нажимает кнопку «Отправить» на своем терминале, факс передает сигнал CNG, сигнализируя о готовности к отправке данных. Аб. Б нажимает кнопку принять на своем терминале и в линию генерируется сигнал CED, сигнализирующий о готовности к приёму данных. Шлюз детектирует сигнал CED и переключается на кодек G.711, затем Шлюз 1 детектирует этот сигнал и переключается на кодек G.711. Затем Шлюз 1 посылает сигнальный пакет NSE со значением в поле данных(Payload) равным C0000000 сигнализируя стороне Б что был детектирован сигнал CED и он переключает кодек на G.711, но в ответ не получает подтверждение, так как бы это было в случае шлюза Cisco. Затем начинается обмен характеристиками по протоколу T.30(несущая частота 300Гц). Это так же детектирует Шлюз 1 и отправляет сигнальный пакет со значением поля данных Payload равным C1000000 что детектирован T.30, но в ответ не получает подтверждения, как это было бы в случае шлюза Cisco.

После обмена сторонами характеристиками, начинается непосредственная передача данных по протоколу T.4, по окончании приёма, сторона Б посылает сигнал об успешном приеме данных и если все данные отправлены, подключения разговорного тракта, кодек остаемся прежним- G.711.

Пример обмен сообщениями Межу Cisco AS54xx РТУ МТТ и АТА Cisco SPA 2102

Рассмотрим следующий пример:

На шлюзе Cisco AS54XX включена следующая настройка  fax protocol t38 version 0 ls-redundancy 0 hs-redundancy 0 fallback none , в используется class codec: ulaw и alaw. На входящем пире между шлюзом и  РТУ МТТ разрешены все кодеки(711 и т38).
Шлюз 54XX детектирует факсовую сессию и по возможности переключается на t.38. Рассмотрим различные сценарии в зависимости от настройки исходящего пира РТУ МТТ и АТА адаптера Cisco 2102:
В первом случае обе стороны поддерживают t.38. Сначала устанавливается голосовое соединение, затем при попытке отправить факс, шлюз GW детектирует факсовую сессию и отравляет reINVITE на РТУ, РТУ проверяет то t38 есть в списке заявленных кодеков и отправляет INVITE на терминал, затем после 200OK устанавливается факсовая сессия. После отправки факса возврат на голосовую сессию.

Рис.9 ReINVITE, стороны поддерживают t.38 и G.711

Рис.9 ReINVITE, стороны поддерживают t.38 и G.711

Во втором случае после голосовой сессии шлюз пытается открыть факсовую сессию по t.38, передает ReINVITE РТУ МТТ, который в свою очередь на терминал, но так как голосовой кодек t.38 на шлюзе отключен, терминал отвечает 488 Not Acceptable Here и вызов завершается неудачей.Рис.10 ReINVITE, терминал только  G.711, прокси сервер: t.38 и G.711

Рис.10 ReINVITE, терминал только  G.711, прокси сервер: t.38 и G.711

В третьем случае после голосовой сессии от шлюза приходит ReINVITE на t.38, прокси сервер отвечает 415 no compatible codecs и  терминал SPA 2102, посылает ReINVITE снова с кодеком G.711 и факс передается в голосовом канале G.711.

Рис.11 ReINVITE, терминал t.38 и G.711 , прокси сервер G.711

Рис.11 ReINVITE, терминал t.38 и G.711 , прокси сервер G.711

В этом случае факс просто передается в голосовом канале.

Рис. 12 ReINVITE, терминал только G.711, прокси сервер G.711

Рис. 12 ReINVITE, терминал только G.711, прокси сервер G.711

Автор: Игнат Кудрявцев

Tags: , , , , , , , , ,

2 комментария »

  • Peter:

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

    • Игнат Кудрявцев:

      Peter,спасибо за отзыв, был бы благодарен вам за конкретику:
      Какие термины переведены «криво» и какой перевод по-вашему подошёл бы лучше?
      >mediatrix, РТУ без всякой вводной информации
      Какая информация должна быть? Краткое описание продуктов?

Оставить комментарий

Напишите Ваш комментарий ниже. Также Вы можете подписаться на комментарии к материалу через RSS

Вы можете использовать следующие теги:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

Мы поддерживаем Gravatar.

Контроль спама: *